漫步最優化十八——點到集合的映射







——

上篇博文中,我們將算法看成點到點的映射,對任意點xk ,對應唯一的點xk+1 。實際上,如果在某臺電腦上實現某個算法,會存在問題。因爲不同的人實現的方式不同,由於計算機四捨五入的誤差,可能結果會不一樣,因此將算法看成點到集合的映射是比較合適的。如果能夠推導出算法的通用性質,那麼對算法所有可能的實現都能滿足。出於這個原因,後面的文章我們會用下面更加通用的算法定義。

1 對空間X 上的每個點xX 都分配一個X 的子集,這樣的算法是點到集合的映射。

根據這個定義,算法A 產生序列{xk}k 的方式是給任意初始點x0X 分配一個X 的子集X1 ,然後任意選擇x1X1 ,給它分配集合X2X ,如此進行下去,如圖1所示。xk+1,xk 之間的對應規則形式爲

xk+1A(xk)

其中如果xk 是輸入,那麼A(xk) 是所有可能輸出構成的集合。

顯然,上面的定義包含了算法所有可能的實現,它是基於相同數學結構的一類算法,我們可以用

xk+1=A(xk)+εq

來可視化點對集合算法的概念,其中εq 是隨機向量。因爲定量誤差取決於使用的算數運算以及所用計算機的精度,所以xk+1 的精確位置是未知的,但不管怎樣,xk+1X 某個小集合的元素。


這裏寫圖片描述
圖1

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章