

从棋盘上移走所有棋子,只留下一只马。然后尝试让这只马走遍棋盘上的所有64个格子,每个格子只经过一次。(温馨提示:马的走法呈“L”形,即在一个方向上走两格,然后向左或向右、向上或向下走一格,成90度角。)这种所谓的“马踏棋盘”问题,对于单个人来说非常难以实现,但数学家们已经计算出,完成它的方法数量之多,足以令人震惊。如果你最终回到了起点,你就完成了一个所谓的“封闭马步”。完成这种情况的方法有超过26万亿种。如果你只是经过了每一个格子,而没有回到起点,这就称为“开放马步”。完成这种情况的方法数量非常庞大,以至于科学家们尚未计算出来。
为了寻找马踏棋盘问题的新解,这是一个困扰数学家几个世纪的问题,诺丁汉大学的计算机科学家格雷厄姆·肯德尔(Graham Kendall)和他的同事求助于模拟蚂蚁。他们使用了蚁群优化算法,这是一种基于蚂蚁在巢穴和食物源之间寻找路径行为的群体智能技术。肯德尔在The Conversation上解释了它的工作原理。
使用一个计算机程序来模拟一群蚂蚁。这些蚂蚁被赋予寻找问题解决方案的任务。当每只蚂蚁完成任务时,它们会留下信息素痕迹——蚂蚁用来相互交流的气味物质。在模拟算法中,最成功的蚂蚁(那些能更好地解决问题的蚂蚁)留下的信息素比表现不佳的蚂蚁更多。
这个程序会重复进行数十万次,在完成马踏棋盘的路径上留下更多的“信息素”。但必须在加强有效路径和强调寻找新路径之间取得平衡。
利用这个程序,肯德尔和他的同事找到了近50万种马踏棋盘问题的新解。谁能想到(模拟的)蚂蚁能为这个困扰人们几个世纪的问题找到新的答案呢?
