局部最优未必是全局最优

今天借着观察到的一个现象,表达一下自己的感想。

早上洗漱的时候,发现有一只蜘蛛在水盆边缘上爬行。

这是一只细胳膊细腿的蜘蛛,感觉有点像蚊子。

我没太注意,接着洗漱,但是过了一会儿,有趣的现象发生了:这只找不到出口的蜘蛛先是沿着水盆边缘顺时针爬了一圈,好像意识到了什么,停顿了几秒,然后逆时针继续爬行。又爬了一圈之后,它懵了,停顿的时间明显比上次更久。就这样,我看着这只它来来回回爬了好几圈,一直找不到出口。

为什么蜘蛛会在一个小小的水盆上迷路呢?我发现,蜘蛛在爬行过程中,虽然有时会从边缘往下爬行,但很快会修正路径,重新爬到最高的边缘上。

这种不断寻找最高点的能力,在某些场景下可能会让蜘蛛找到很好的安身之地,比如帮助它到达屋顶。但在这个时候却起到了反作用,让它无法离开水盆,到达更高的地方。

其实,它只需要先往下爬一段距离,就能回到地面,然后靠着墙壁往高处爬,这样就能达到整个屋子的最高处。可惜,它着眼于局部最优,只想着寻找当下最高点,而没有全局的眼光,导致一次次的努力都付之一炬。

本来还想笑它愚蠢,但转念间意识到,这不就是自己很多时候的缩影吗。每每到达一个新的处境,就一心想着得到最优解,但局部最优未必是全局最优,这个道理在高数中学过,在算法中也学过,一次次地将它用在在工程问题中,但在现实生活中,却连这么简单的道理都不明白。

多亏了这只小蜘蛛,让我明白了曾经遇到的一些问题的原因所在。

Loading Likes...

发表评论

电子邮件地址不会被公开。 必填项已用*标注