随机搜索是最基本的方法,也被用为评估其他算法的基线。
随机搜索接收两个参数,一个是二元组的列表,二元组表示每个解的最小最大值,列表长度就为题解的长度;另一个是成本函数。在“组团出游”的问题里,参数一表示所有成员往返航班的选择范围的列表:(0,9)len_of_people2。
随机搜索的结果不见得是最优解,因为代码中的1000次尝试在所有解中只占很少一部分。
这个系列来自《集体智慧编程》的第五章,完整golang代码在https://github.com/baixiaoustc/optimization