跟清华大学马少平教授学AI:第三篇 计算机是如何找到最优路径的(二)
创始人
2023-12-10 08:22:20
0

原标题:跟清华大学马少平教授学AI:第三篇 计算机是如何找到最优路径的(二)

第三篇 计算机是如何找到最优路径的(二)

清华大学计算机系 马少平

第二节:宽度优先搜索算法

艾博士:小明,我们首先从宽度优先算法开始介绍。所谓宽度优先算法,就是选择节点深度最浅的节点优先扩展。

小明:什么是节点深度呢?

艾博士解释说:在搜索图中,第一个节点称作根节点,根节点的深度为0,其他节点的深度为其父节点的深度加1。简单地说,根节点深度为0,根节点的子节点深度为1,再下一层子节点深度为2……

艾博士:小明,你说说看,图3.4中几个节点的深度分别多少?

小明回答说:S是根节点深度为0;A、C、E三个节点均为S的子节点,所以它们的深度均为1;B、F均为E的子节点,节点深度均为2。

艾博士接着说:宽度优先搜索就是从根节点开始,每次选择一个节点深度最浅的节点扩展,直到生成出目标节点为止。

小明问到:艾博士,如果深度最浅的节点存在多个时如何选择呢?

艾博士:这种情况下可以随机选择一个深度最浅的节点进行扩展。

下面我们以图3.2为例介绍如何采用宽度优先搜索求解从起点S到终点T的路径。图3.6给出了该问题的搜索图,其中红圈数字表示节点被扩展的次序,这里假定当深度一样时,排在左边的节点优先扩展。

图3.6 宽度优先搜索求解示意图

该搜索过程首先选择深度最浅的根节点S进行扩展,产生了三个子节点A、C、E;由于这时这三个节点深度都是1,我们根据假定优先扩展左边的节点E,产生节点B、F;这时A、C的节点深度最浅,我们选择C扩展,产生节点D;这时A的深度最浅,扩展后产生节点T。而这时T就是终点节点,搜索结束,得到路径S-A-T。

这个问题比较简单,很快就找到了达到终点也就是目标状态的路径。对于复杂一些的情况,需要继续寻找节点深度最浅的节点扩展,直到找到目标为止。

小明问艾博士:宽度优先搜索如何求解其他问题呢?比如前面提到过的八数码问题。

艾博士:当然可以求解,方法是一样的。对于图3.7所示的八数码问题,图3.8给出了用宽度优先搜索求解该八数码问题的搜索图,其中红圈中的数字表示的是该节点被扩展的次序。

图3.7 八数码问题

图3.8 宽度优先搜索求解八数码问题搜索图

艾博士对照着图3.8给出的八数码问题搜索图说:我们来看看用宽度优先搜索求解八数码问题的搜索过程。开始只有初始节点S,对S进行扩展,生成A、B、C三个子节点。由于A、B、C三个节点的深度是一样的,深度均为1,按照约定选择最左边的节点A扩展,生成D、E、F三个子节点。这时节点B、C的深度最浅,同样选择排在左边的节点B扩展,生成出子节点G。再选择深度最浅的节点C扩展,生成出子节点H。此时深度最浅的节点有D、E、F、G、H等5个节点,深度均为2。同样依次扩展节点D、E、F、G,当扩展到节点G时,其子节点中出现了目标节点,搜索到此结束。通过搜索图,可以得到该八数码问题的解,也就是为达到目标状态将牌的移动方法:将牌2右移,将牌1上移,将牌8左移。

小明听着艾博士的讲解,有些不太明白地问:艾博士,这种方法为什么叫宽度优先搜索呢?

艾博士解释说:小明你看图3.8中所示的节点扩展次序,是沿着“横向”进行的,先优先扩展第一层节点,再扩展第二层、第三层……这就是宽度优先名称的由来。

小明:明白了。那么宽度优先搜索有什么特点呢?

艾博士:宽度优先搜索有一个重要的结论,就是在单位代价下,当问题有解时,可以找到问题的最优解,也就是路径总代价最小的解。

小明:单位代价是什么意思呢?

艾博士:我们先解释一下什么是代价。所谓代价就是父节点到子节点的广义“距离”。比如从路口A到路口B距离多少公里可以是代价,需要用多长时间也是代价,花费多少钱也是代价。而单位代价指的是任何两个父子节点间的代价总是为1。比如在上面的八数码例子中,如果移动一个将牌的代价为1的话,则该问题就是单位代价的。在单位代价下,我们用宽度优先搜索得到的八数码问题的解,就是总代价最小的,也就是将牌的移动次数最少的解。

对于地图上求两个地点间的一条路径,如果认为两个相邻路口的代价为1,则找到的是经过的路口最少的路径。当每个路口都有红绿灯时,实际上就是经过的红绿灯最少的路径。在城市中,寻找一条红绿灯最少的路径也是很有意义的。

小明问:为什么在单位代价下宽度优先搜索得到的就是代价最小的路径呢?

艾博士解释说:如同前面说过的,宽度优先搜索在搜索图上体现的是“横着”走,先扩展深度为1的节点,再扩展深度为2的节点……逐步加深扩展节点的深度。假设从初始节点到目标节点存在不同的路径,通过这些路径到达目标节点的深度也不相同。宽度优先搜索优先选择深度最浅的节点扩展,所以当第一次出现目标节点时,一定是经过这条路径计算的目标节点深度最浅。在单位代价下,节点深度就是初始节点到目标节点的总代价,所以宽度优先搜索可以找到总代价最小的路径。

小明:经您这么一解释就明白了。在单位代价条件下,从初始节点到达一个节点的总代价等于该节点所处的深度,宽度优先搜索算法的思想是选择深度最浅的节点扩展,也就是选择总代价最小的节点优先扩展,所以当第一次遇到目标节点时,一定就找到了到达目标节点的最短路径。

小明读书笔记

宽度优先搜索算法是一种常用的路径搜索算法,其特点是每次选择节点深度最浅的节点优先扩展。当问题是单位代价时,也就是任何相邻节点之间的代价均为1时,可以找到从初始节点到目标节点代价最小的最优路径。

未完待续

本文内容来自公众号:图灵人工智能、AI光影社

01

参考书籍

《艾博士:深入浅出人工智能》

ISBN:9787302646969

作者:马少平

定价:89.80元

内容简介

本书是一本针对初学者介绍人工智能基础知识的书籍。本书采用通俗易懂的语言讲解人工智能的基本概念、发展历程和主要方法,内容涵盖人工智能的核心方法,包括什么是人工智能、神经网络(深度学习)是如何实现的、计算机是如何学会下棋的、计算机是如何找到**路径的、如何用随机算法求解组合优化问题、统计机器学习方法是如何实现分类与聚类的、专家系统是如何实现的等,每种方法都配有例题并给出详细的求解过程,以帮助读者理解和掌握算法实质,提高读者解决实际问题的能力。此外,本书可以帮助人工智能的开发人员理解各种算法背后的基本原理。书中的讲解方法和示例,有助于相关课程的教师讲解相关概念和算法。总之,这是一本实用性强、通俗易懂的人工智能入门教材,适合不同背景的读者学习和使用。

    相关内容

    热门资讯

    好消息!福州这里已经开放通行! 文庙是福州的重要地标之一,文庙周边街区综合整治提升已取得阶段性进展,铺装成石板路的圣庙路已经开放通行...
    中国驻韩国大使馆表明严正立场! 10月2日,中国驻韩国大使馆发言人就韩国少数势力举行反华示威游行表明严正立场。全文如下: 9月29...
    国庆长假第二天,福州刷屏央媒! 国庆中秋长假第2天,福州超级火! 原浩/张旭阳 摄 来源:新闽清 福州火上了各大央...
    央视《朝闻天下》点赞!福州三坊...   央视《朝闻天下》10月2日点赞福州:三坊七巷人气足。
    调用北斗日定位量近1万亿次 高... 2025年10月1日,随着国庆长假首日出行高峰的到来,高德基于北斗卫星导航系统的定位数量接近1万亿次...
    国庆中秋假期,福州“菜篮子”货... 福州新闻网10月2日讯(记者 朱丽萍 文/摄)大白菜2.19元/斤、西葫芦2.99元/斤,黄瓜3.9...
    福建两所高校、一市最新人事消息 近日,福建技术师范学院、莆田学院,人事调整,龙岩发布一批人事任免,来看详情。 福建技术师范学院 ...
    他们,福建好人! 最新!福建省委文明办发布2025年第一次“福建好人榜”,具体名单如下↓↓ 2025年第一次“福...
    这个假期 “炎” 值拉满!防晒... 未来三天,福建受副热带高压控制,全省晴到多云,局部有阵雨或雷阵雨。 国庆中秋假期,福建天气总体较好...
    晋安湖超燃!龙舟赛恰逢国庆节 ... 龙舟赛恰逢国庆节,13支队伍碧波争锋 赛场内外齐欢乐 1日晋安湖超燃 1日是国庆节。当天上午,2...
    假期首日,金价狂飙 国庆假期首日,金价再创新高。 1日,COMEX纽约期金价格盘中一度突破3900美元/盎司关口,涨超...
    台江:明礼福建人 情满中秋月 台江举办文明实践活动,倡导文明健康新风尚 明礼福建人 情满中秋月 9月29日,“明礼福建人 情满...
    福建出台15条举措支持企业研发... 对企业将新增的研发机构设在福建,给予最高不超3000万元补助;对新获批国家级平台基地的牵头企业,给予...
    敦叙家风——新店西园吴氏宗祠 在福州市晋安区新店镇西园村,罗汉山前静静矗立着一座气势恢宏的祠堂,中堂正厅中央悬挂的“敦叙堂”匾额熠...
    福州城乡好戏连台 市民游客乐享... 国庆中秋假期开启,从市区到乡镇,丰富多彩的文娱活动接连上演,为假日的福州增添了喜庆的氛围,吸引市民、...
    榕荫护华夏 蝶舞庆升平丨福州植... 金秋送爽,双节同辉。福州植物园以“生态为卷,花卉为笔”,绘就一幅绚丽的生态画卷。 本次花展以“...
    福建省气象台:未来几天,福州最... 当2025年已步入第10个月,福州的气温依然炎热。最新预报显示,未来几天,福州最高气温或将达到39℃...
    仓山文艺演出歌颂祖国 1日晚,仓山区螺洲古镇路口广场国旗飘扬,仓山区“南台颂华诞 家国共此时”庆祝中华人民共和国成立76周...