漫步最优化十八——点到集合的映射







——

上篇博文中,我们将算法看成点到点的映射,对任意点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

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