如何通过内附源码和文档实现人工智能实验中的盲目搜索算法?
- 内容介绍
- 文章标签
- 相关推荐
本文共计1826个文字,预计阅读时间需要8分钟。
人工作智能实验,盲目搜索+算法原理
1.算法原理
1.1 搜索问题形式化定义+解决搜索问题时,首先需要对搜索问题进行形式化表述。 搜索问题从以下几方面描述:状态、动作、初始状态、目标状态、可达状态、可达动作集合。人工智能实验盲目搜索
一、 无信息搜索(盲目搜索)
1.算法原理
1.1 搜索问题的形式化定义
解决搜索问题时,首先需要对搜索问题进行形式化表述。搜索问题从以下几个方面表述:
状态空间:对问题的形式化,表示需要进行搜索的空间
动作:对真正动作的形式化,表示从一个状态到达另一个状态
初始状态:表示当前的状态
目标:表示需要达到的目标的状态
启发方法:用于指挥搜索的前进方向的方法
问题的解:一个从初始状态到达目标状态的动作序列
搜索问题可以用状态空间树表示,每个节点对应着状态空间中的一种状态。节点的父节点表示产生该状态的上一个状态,父节点生成子节点时需要记录生成节点所采取的行动与代价。
搜索算法的性能需要考虑一个方面:
完备性:当问题有解时是否一定能找到解
最优性:搜索策略是否一定能找到最优解
时间复杂度:找到解所需要的时间,又称为搜索代价
空间复杂度:执行搜索过程中需要多少内存空间
1.2 无信息搜索的具体算法
1.2.1 宽度优先搜索
宽度优先搜索用一个先进先出的队列实现,节点的拓展顺序与目标节点的位置无关。从状态空间树上看,宽度优先搜索的拓展顺序是按树的层次顺序来进行的。这样一来,短的路径会在任何比它长的路径之前被遍历,因此宽度优先搜索具有完备性和最优性。
本文共计1826个文字,预计阅读时间需要8分钟。
人工作智能实验,盲目搜索+算法原理
1.算法原理
1.1 搜索问题形式化定义+解决搜索问题时,首先需要对搜索问题进行形式化表述。 搜索问题从以下几方面描述:状态、动作、初始状态、目标状态、可达状态、可达动作集合。人工智能实验盲目搜索
一、 无信息搜索(盲目搜索)
1.算法原理
1.1 搜索问题的形式化定义
解决搜索问题时,首先需要对搜索问题进行形式化表述。搜索问题从以下几个方面表述:
状态空间:对问题的形式化,表示需要进行搜索的空间
动作:对真正动作的形式化,表示从一个状态到达另一个状态
初始状态:表示当前的状态
目标:表示需要达到的目标的状态
启发方法:用于指挥搜索的前进方向的方法
问题的解:一个从初始状态到达目标状态的动作序列
搜索问题可以用状态空间树表示,每个节点对应着状态空间中的一种状态。节点的父节点表示产生该状态的上一个状态,父节点生成子节点时需要记录生成节点所采取的行动与代价。
搜索算法的性能需要考虑一个方面:
完备性:当问题有解时是否一定能找到解
最优性:搜索策略是否一定能找到最优解
时间复杂度:找到解所需要的时间,又称为搜索代价
空间复杂度:执行搜索过程中需要多少内存空间
1.2 无信息搜索的具体算法
1.2.1 宽度优先搜索
宽度优先搜索用一个先进先出的队列实现,节点的拓展顺序与目标节点的位置无关。从状态空间树上看,宽度优先搜索的拓展顺序是按树的层次顺序来进行的。这样一来,短的路径会在任何比它长的路径之前被遍历,因此宽度优先搜索具有完备性和最优性。

