您的位置:首页 > 其它

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

2017-07-22 20:22 253 查看
疲倦的时候,有个人会陪你;

孤单的时候,有个人会想你。

我的小宝贝啊,

好想捏捏你的笑脸,

让你知道你是最美的。

——畅宝宝的傻逼哥哥

上篇博文中,我们将算法看成点到点的映射,对任意点xk,对应唯一的点xk+1。实际上,如果在某台电脑上实现某个算法,会存在问题。因为不同的人实现的方式不同,由于计算机四舍五入的误差,可能结果会不一样,因此将算法看成点到集合的映射是比较合适的。如果能够推导出算法的通用性质,那么对算法所有可能的实现都能满足。出于这个原因,后面的文章我们会用下面更加通用的算法定义。

定义1:对空间X上的每个点x∈X都分配一个X的子集,这样的算法是点到集合的映射。

根据这个定义,算法A产生序列{xk}∞k的方式是给任意初始点x0∈X分配一个X的子集X1,然后任意选择x1∈X1,给它分配集合X2⊂X,如此进行下去,如图1所示。xk+1,xk之间的对应规则形式为

xk+1∈A(xk)

其中如果xk是输入,那么A(xk)是所有可能输出构成的集合。

显然,上面的定义包含了算法所有可能的实现,它是基于相同数学结构的一类算法,我们可以用

xk+1=A(xk)+εq

来可视化点对集合算法的概念,其中εq是随机向量。因为定量误差取决于使用的算数运算以及所用计算机的精度,所以xk+1的精确位置是未知的,但不管怎样,xk+1是X某个小集合的元素。



图1
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  点到集合 映射