- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
Problem-solving and Search(问题求解与搜索);问题求解是人工智能的核心问题之一
问题求解的目的
机器自动找出某问题的正确解决策略
更进一步,能够举一反三,具有解决同类问题的能力
是从人工智能初期的智力难题、棋类游戏、简单数学定理证明等问题的研究中开始形成和发展起来的一大类技术
求解的手段多种多样
其中搜索技术是问题求解的主要手段之一
问题表示
解的搜索;导航
游戏
分配
调度
路径规划;状态空间法的求解过程转化为在状态空间图中搜索一条从初始节点到目标节点的路径问题
图的搜索
无信息搜索(盲目搜索);Fully observable
Deterministic
Static
Discrete
Single agent
;树是无圈连通图,每个节点只有一个父节点
树搜索不检查重复状态
图搜索大多比树搜索高效;图的搜索过程;图的搜索过程;图的搜索;图的搜索;图的一般搜索策略(树搜索);4种途径来评价搜索算法的性能
完备性—当问题有解时,算法是否保证找到一个解
最优性—算法是否能找到一个最优解(路径耗散函数值最小的路径)
时间复杂性—找到一个解需要花费多少时间
空间复杂性—在搜索过程中需要占用多少内存
;盲目搜索(a.k.a. blind search)
不使用任何与问题有关的经验信息
分类
宽度优先搜索Breadth-first search
深度优先搜索Depth-first search
有界深度优搜索Depth-limited search
等代价搜索Uniform-cost search
迭代加深搜索Iterative deepening search.
特点
搜索过程中不使用与问题有关的经验信息
搜索效率低
不适合大空间的实际问题求解;节点
除了存放状态本身的信息,还需保存指向父节点的指针,或是何种操作可以转换为这个状态
Open list
存放所有已经被生成了,但还未被扩展的节点 (open nodes)
代表搜索树的前沿,也叫Fronge list
Closed list
存放所有已经被扩展的节点(closed nodes)
Not necessary for tree search;Expand shallowest unexpanded node
搜索过程
首先扩展根节点
接着扩展根节点的所有后继节点
然后再扩展后继节点的后继,依此类推
在下一层任何节点扩展之前搜索树上的本层深度的所有节点都已经被扩展
Implementation: open is a FIFO queue
;generalSearch(problem, Queue)
# of nodes tested: 0, expanded: 0
;generalSearch(problem, Queue)
# of nodes tested: 1, expanded: 1
;generalSearch(problem, Queue)
# of nodes tested: 2, expanded: 2
;generalSearch(problem, Queue)
# of nodes tested: 3, expanded: 3
;generalSearch(problem, Queue)
# of nodes tested: 4, expanded: 4
;generalSearch(problem, Queue)
# of nodes tested: 5, expanded: 5
;generalSearch(problem, Queue)
# of nodes tested: 6, expanded: 6
;generalSearch(problem, Queue)
# of nodes tested: 7, expanded: 6
;generalSearch(problem, Queue)
# of nodes tested: 7, expanded: 6
;完备性(Completeness)
Does it always find a solution if one exists?
YES
If shallowest goal node is at some finite depth d
时间复杂度(Time complexity)
假设每个状态有 b 个后继,目标节点所在深度为d
根节点有b个后继,这b个节点每个又有b个后继,即b2
最坏的情况:扩展除d层最后一个节点外的所有节点
总共扩展操作的次数:
;空间复杂度(Space complexity)
每个节点都需要存储
;Two lessons
指数级的时间消耗,内存消耗是比执行时间消耗更大的问题
指数级复杂度的搜索问
原创力文档


文档评论(0)