1.启发式求解
信息源->问题求解器->答案
问题求解器包含:约束条件、额外信息
寻找最短路径:状态,状态转移,路径(序列),测试目标(评估结果)
代表算法:贪心算法(最优优先)
启发式搜索(有信息搜索),每个状态点的信息。
不足之处:不一定最优,因为某些路径结点少,总代价更少,空间复杂度高。
A*算法fn=gn+hn
gn:起始到结点n的开销代价值。
h:从结点n到目标结点的最小开销代价值
f:经过结点n具有最小代价值
要求h要可容和单调性。
2.对抗搜索
一方想要最大化利益,另一方最小化利益。
minmax算法:
给定一个搜索树,通过每个结点的minmax值来决定最优策略。
Alpha-Beta剪枝搜索:
在minmax算法中减少所搜索的搜索树节点数,剪去了不影响最终结果的搜索分枝。
3.蒙特卡洛树搜索
单一状态蒙特卡洛规划,利用与探索
利用:保证在过去决策中得到最佳回报
探索:寄希望在未来能够得到更大回报
选择:从根节点开始,向下递归搜索,直至选择一个叶子节点
拓展:如果L不是一个终止节点,则随机创建其后的一个未被访问节点,选择该节点为后续子节点C
模拟:从节点C出发,进行模拟,直至结束
反向传播:用模拟结果来回溯更新导致这个结果的每个结点中获胜次数和访问次数