av一区二区在线观看_亚洲男人的天堂网站_日韩亚洲视频_在线成人免费_欧美日韩精品免费观看视频_久草视

您的位置:首頁技術(shù)文章
文章詳情頁

python實現(xiàn)最速下降法

瀏覽:2日期:2022-08-01 13:05:39

本文實例為大家分享了python實現(xiàn)最速下降法的具體代碼,供大家參考,具體內(nèi)容如下

代碼:

from sympy import *import numpy as npdef backtracking_line_search(f,df,x,x_k,p_k,alpha0): rho=0.5 c=10**-4 alpha=alpha0 replacements1=zip(x,x_k) replacements2=zip(x,x_k+alpha*p_k) f_k=f.subs(replacements1) df_p=np.dot([df_.subs(replacements1) for df_ in df],p_k) while f.subs(replacements2)>f_k+c*alpha*df_p: alpha=rho*alpha replacements2 = zip(x, x_k +alpha * p_k) return alphadef stepest_line_search(f,x,x0,alpha0): df = [diff(f, x_) for x_ in x] x_k=x0 alpha=alpha0 replacements=zip(x,x_k) len_df = sqrt(np.sum([df_.subs(replacements) ** 2 for df_ in df])) while len_df>1e-6: p_k=-1*np.array([df_.subs(replacements) for df_ in df]) alpha = backtracking_line_search(f, df, x, x_k, p_k, alpha) x_k=x_k+alpha*p_k replacements = zip(x, x_k) len_df=np.sum([df_.subs(replacements)**2 for df_ in df]) return x_kif __name__=='__main__': init_printing(use_unicode=True) x1 = symbols('x1') x2 = symbols('x2') x = np.array([x1, x2]) f = 100 * (x2 - x1 ** 2)**2 + (1 - x1) ** 2 ans=stepest_line_search(f, x, np.array([1.2, 1]), 1) print 'the minimal value in point:',ans

分析:

這個采用的是backtracking line search來尋找alpha。

python實現(xiàn)最速下降法

以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持好吧啦網(wǎng)。

標(biāo)簽: Python 編程
相關(guān)文章:
主站蜘蛛池模板: 国产精品自拍一区 | 国产高清视频在线播放 | 国产伦精品一区二区 | 黑人精品xxx一区一二区 | 欧美日韩在线一区二区 | 国产在线视频一区二区 | 在线免费看毛片 | 五月婷视频 | 美女综合网 | 国产一区二区三区四区 | 欧美韩日 | 午夜精品影院 | 美日韩在线 | 三级av网站 | 国产欧美视频在线观看 | 国产高清成人 | 日韩欧美亚洲国产 | 日日夜夜精品视频免费 | 91网站免费观看 | av影院在线| 法国极品成人h版 | 免费成人结看片 | 成人免费视频视频 | 日韩欧美一区在线 | 91小视频在线观看 | 成人深夜视频 | 天天干网站 | 成人免费看片视频 | www.日韩欧美 | aaa级片| 中文字幕第一区 | 国产6区 | 又黄又爽又色视频 | 欧美精品在线视频 | 欧美午夜精品 | 欧美在线一区二区 | 婷婷午夜天 | 顶级黄色片 | 欧美久久一区二区 | 久久91视频 | 欧美日韩在线精品 |