思考题
5.1 什么是搜索?有哪两大类不同的搜索方法?两者的区别是什么?
搜索:在问题空间中寻找从初始状态到目标状态的路径的过程。
两大类搜索方法:
- 盲目搜索(无信息搜索):不利用问题域的任何特定信息,仅根据问题的结构进行搜索,如广度优先搜索、深度优先搜索。
- 启发式搜索(有信息搜索):利用问题域的特定信息(启发信息)来指导搜索,以提高搜索效率,如A*算法。
区别:
- 盲目搜索:简单但效率低,适用于问题空间较小的情况。
- 启发式搜索:复杂但效率高,适用于问题空间较大的情况。
5.2 什么是启发式搜索?什么是启发信息?
启发式搜索:利用问题域的特定信息(启发信息)来指导搜索,以减少搜索空间和提高搜索效率。
启发信息:用于评估搜索过程中某个状态距离目标状态的估计值,通常通过启发函数 h(n)h(n) 表示。
5.3 用状态空间法表示问题时,什么是问题的解?求解过程的本质是什么?什么是最优解?最优解唯一吗?
问题的解:从初始状态到目标状态的一条路径。
求解过程的本质:在状态空间中寻找从初始状态到目标状态的路径。
最优解:在满足某些优化条件(如路径最短、代价最小)的解。
最优解唯一吗:不一定,可能存在多个最优解。
5.4 请写出状态空间图的一般搜索过程。在搜索过程中 open 表和 closed 表的作用分别是什么?有何区别?
一般搜索过程:
- 初始化 open 表和 closed 表。