最優化思路第三步
Steps: k=0, 1, 2,…
tu
F(α)=f(xk+α.dk)
xk,dk is fixed
∴其實就是一維問題,單變量的最優化問題。
我們要做的就是,告訴計算機兩件事情:
- xk點的確定,方向在哪裏
- 什麼地方停下來
不管有多少變量,多少問題。最優化問題都能很快解決
Golden-section search
1980年,發明了一種算法:來來回回移動,套住一個區間,停在這裏.
In matlab, inexact line search 中的 inex_lsearch.m
Ex:
alpha = inex.lsearch(四個輸入)
四個輸入分別爲
- xk
- dk
- 函數程序 ftest.m
- 梯度程序 gtest.m
→小的interval
控制問題
一維的控制
不僅拉直,而且用到的能量最小
x(t)⎣⎢⎢⎢⎡Θ1(t)Θ2(t)Θ1′(t).Θ2′(t).⎦⎥⎥⎥⎤
矩陣前兩個爲偏角,後兩個爲角速度
u(0),u(Δ),u(2Δ),...,u(nΔ)
平方和最小 <—> 控制最小,能量最小
約束條件 四維向量 = 0
x12+x2=11
x1+x22=7
[x1x2]=[32]
x2=11−x12
x1+(11−x12)2=7
x14−22x12+x1+114=0 一元四次方程
根據高斯代數積分定理
MatLab: x1=roots([1 0 -22 1 114])
x1=⎣⎢⎢⎡3.58443−3.7793−2.8051⎦⎥⎥⎤
x2=11-x^2 enter =⎣⎢⎢⎡−1.84812−3.28323.1313⎦⎥⎥⎤
f1(x)=x12+x2−11
f2(x)=x1+x22−7
f1(x)=0;f2(x)=0
目標函數: f(x)=(x12+x2−11)2+(x1+x22−7)2 求最小值
▽f=[4(x12+x2−11)x1+2(x1+x22−7)2(x12+x2−11)+4(x1+x22−7)x2]