人工智能第2章基于图的知识表示与图搜索技术(课后部分习题答案)

news2024/11/27 12:56:51

在这里插入图片描述
解:用四元组(f,w,s,g)表示状态,其中 f 表示猎人,w 表示狼,
s 表示羊,g 表示草,其中每个元素都可以为 0 或 1,表示在左案,
1 表示在右岸。四元组可表示的状态共有 16 种,其中合法状态为
10 种:
(0,0,0,0)(0,0,0,1)(0,0,1,0)(0,1,0,0)(0,1,0,1)(1,0,1,0)(1,0,1,1)(1,1,0,1)(1,1,1,0)(1,1,1,1)
初始状态为(0,0,0,0)目标状态为(1,1,1,1)
共有其中操作:从左岸到右岸三种,从右岸到左岸四种
在这里插入图片描述
在这里插入图片描述
方案有两种:p2→ q0 → p3→ q2 → p2 → q0 → p2
p2→ q0 → p1→ q2 → p3→ q0→ p2
在这里插入图片描述
解:用(a,b,c)来表示火柴的状态,用 0 表示火柴朝下,1 表示朝上,
三根火柴共有八种状态
(0,0,0)(0,0,1)(0,1,0)(0,1,1)
(1,0,0)(1,0,1)(1,1,0)(1,1,1)
操作有两个:fab:将火柴 a 和 b 倒置
fbc:将火柴 b 和 c 倒置
初始状态:(1,1,1)
目标状态:(0,0,0)
状态图如下所示:
在这里插入图片描述
从图上看,没有从初始状态到目标状态的联通路径,所以此问题没有解。
在这里插入图片描述
解:引入一个三元组(q0,q1,q2)来描述总状态,开状态为
0,关状态为 1,全部可能的状态为 :
Q0=(0,0,0) ; Q1=(0,0,1); Q2=(0,1,0)
Q3=(0,1,1) ; Q4=(1,0,0); Q5=(1,0,1)
Q6=(1,1,0) ; Q7=(1,1,1)。
翻动琴键的操作抽象为改变上述状态的算子,即 F={a, b, c}
a:把第一个琴键 q0 翻转一次
b:把第二个琴键 q1 翻转一次
c:把第三个琴键 q2 翻转一次
问题的状态空间为<{Q5},{Q0 Q7}, {a, b, c}>
问题的状态空间图如下页所示:从状态空间图,我们可以找到
Q5 到 Q7 为 3 的两条路径,而找不到 Q5 到 Q0 为 3 的路径,因此,
初始状态“关、开、关”连按三次琴键后只会出现“关、关、关”
的状态。
在这里插入图片描述
在这里插入图片描述
不考虑代价,广度优先搜索过程:A-﹥ B-﹥ C-﹥ D-﹥E -﹥F,解为:A-﹥ C-﹥ F
深度优先搜索过程为:A-﹥ C-﹥ G-﹥M-﹥P-﹥O-﹥L
解为:A-﹥ C-﹥G-﹥L
分支界限法搜索过程:A-﹥ B-﹥ C-﹥G-﹥E-﹥L
解为:A-﹥ C-﹥G-﹥L
瞎子爬山法搜索过程:A-﹥ B-﹥ E-﹥J
解为:A-﹥ B-﹥E-﹥J
在这里插入图片描述
在这里插入图片描述
解树有 3 个:ABDI,7;ABEJK,7 ; ACF 5(最优解)
在这里插入图片描述
解:
在这里插入图片描述
在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/665052.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

chatgpt赋能python:Python将图片转换为代码的顶级SEO文章

Python将图片转换为代码的顶级SEO文章 在当今数字化的世界中&#xff0c;图像和代码都是最为重要的元素之一。Python作为一种流行的编程语言&#xff0c;可以帮助我们将这两种元素结合起来&#xff0c;让我们从图像中提取出代码。本文将讨论Python如何将图像转换为代码&#x…

哈工大计算机网络传输层协议详解之:TCP协议

哈工大计算机网络传输层协议详解之&#xff1a;TCP协议 文章目录 哈工大计算机网络传输层协议详解之&#xff1a;TCP协议TCP概述TCP段结构序列号和ACKTCP可靠数据传输RTT和超时TCP发送方事件TCP发送端程序伪代码TCP重传示例TCP接收方 ACK生成TCP快速重传机制 TCP流量控制TCP连接…

总结905

今日已做&#xff1a; 1.核聚课程 2.进步本回顾&#xff0c;重做8道题&#xff0c;有两道还没掌握&#xff0c;记录3页。 3.线性代数第5讲 4.三大计算&#xff0c;刷题15道&#xff0c;纠错。 5.每日长难句。 6.考研常识课 明日必做 1.熟练背诵《the king’s speech》并默写 2…

chatgpt赋能python:Python抽卡:让你的游戏更充实

Python抽卡&#xff1a;让你的游戏更充实 作为一款流行的游戏&#xff0c;抽卡是许多玩家最喜欢的功能之一。通过不断的抽卡&#xff0c;你可以获取到更加强大的角色和装备&#xff0c;从而在游戏中获得更多的胜利。但是&#xff0c;手动抽卡需要耗费大量的时间和精力&#xf…

简要介绍 | 点云距离度量:从原理到应用

注1&#xff1a;本文系“简要介绍”系列之一&#xff0c;仅从概念上对点云距离度量进行非常简要的介绍&#xff0c;不适合用于深入和详细的了解。 点云距离度量&#xff1a;从原理到应用 3D deep learning on Point cloud 1. 背景介绍 点云数据在计算机图形学、计算机视觉、自…

C#探索之路(9):深入理解C#代码编译的过程以及原理

C#探索之路(9)&#xff1a;深入理解C#代码编译的过程以及原理 文章目录 C#探索之路(9)&#xff1a;深入理解C#代码编译的过程以及原理一、前言&#xff1a;概念解析1、编译器&#xff1a;2、JIT是什么&#xff1f;3、AOT是什么&#xff1f;4、如何理解这个“基于运行时”的概念…

Shell 脚本和编程

shell脚本和编程 Shel基础概念 Shell是一种命令行解释器&#xff0c;是Linux系统中最常用的命令行界面。Shell脚本是由一系列Shell命令组成的文本文件&#xff0c;可以用来自动化执行Linux系统上的任务。Shell脚本是一种强大的工具&#xff0c;可以通过编写脚本来实现自动化运…

FPGA XDMA 中断模式实现 PCIE X8 测速试验 提供工程源码和QT上位机源码

目录 1、前言2、我已有的PCIE方案3、PCIE理论4、总体设计思路和方案XDMA简介XDMA中断模式QT上位机及其源码 5、vivado工程详解6、上板调试验证7、福利&#xff1a;工程代码的获取 1、前言 PCIE&#xff08;PCI Express&#xff09;采用了目前业内流行的点对点串行连接&#xf…

Unity 之 最新原生广告Ads接入 -- 助力增长游戏收益

Unity 之 最新Ads原生广告接入流程详解和工具类分享 一&#xff0c;注册 Unity Ads 广告 SDK二&#xff0c;下载 Unity Ads 广告 SDK三&#xff0c;配置 Unity Ads 广告 SDK3.1 广告位展示流程3.2 代码初始化 四&#xff0c;集成 Unity Ads 广告 SDK4.1 相关介绍4.2 代码分享 五…

开发日记-凌鲨中数据库代理的实现

凌鲨定位于连接研发过程中一切信息和工具。下面是数据库代理的大概框架&#xff1a; 技术选型 使用golang开发各种数据库协议代理,redis-proxy,mysql-proxy,mongo-proxy使用swagger提供代理协议的调试 选型原因 我们的客户端使用了tauri作为框架&#xff0c;在实现扩展功能的…

基于阴影检测和平衡亮度差阴影消除算法的MATLAB完整程序分享

完整代码: clc; clear; close all; warning off; addpath(genpath(pwd)); I=imread(1.png);%%此处导入自己需要检测的图片 [x,y,z]=size(I); figure(Name,Processing Steps),subplot(3,2,1), imshow(I),title(Image 1: Original Image); I=uint8(I); temp1=I; half_intens…

MySQL优化--MVCC

目录 概念 MVCC的具体实现 隐式字段 undo log日志 概念 undo log版本链 readview 接上文&#xff0c;redo log保证了事务的持久性&#xff0c;undo log 保证了事务的原子性和一致性 那&#xff0c;隔离性是如何保证的呢&#xff1f; 锁&#xff1a;排他锁&#xff08;如…

Linux下Redis 存储

命令使用 目录 命令使用 RDB持久化 AOF持久化 yum安装 [rootlocalhost ~]# yum -y install redis 已加载插件&#xff1a;fastestmirror Loading mirror speeds from cached hostfile* c7-media: * epel: ftp.yz.yamagata-u.ac.jpvim到文件etc/redis.conf 取消注释requirep…

Paddle lite 初识与简单使用

一、何为Paddle lite 官方解释如下&#xff1a; Paddle Lite是飞桨基于Paddle Mobile全新升级推出的端侧推理引擎&#xff0c;在多硬件、多平台以及硬件混合调度的支持上更加完备&#xff0c;为包括手机在内的端侧场景的AI应用提供高效轻量的推理能力&#xff0c;有效解决手机…

Android——事务处理(十二)

1. 事件处理简介 1.1 知识点 &#xff08;1&#xff09;了解事件处理的作用&#xff1b; &#xff08;2&#xff09;了解常用的事件及相关处理接口&#xff1b; 1.2 具体内容 在android当中&#xff0c;基本上每一个组件都有用相应的事件处理&#xff0c;但是不过有多少种事…

chatgpt赋能python:Python抢单软件:如何优化SEO?

Python抢单软件&#xff1a;如何优化SEO&#xff1f; 导言 随着互联网技术的飞速发展&#xff0c;越来越多的人开始关注SEO&#xff08;Search Engine Optimization&#xff09;技术。而对于Python编程工程师来说&#xff0c;了解SEO技术也是非常重要的。那么&#xff0c;如何…

day10 伪操作与混合编程

伪操作 伪操作&#xff1a;不会生成代码&#xff0c;只是在编译之前告诉编译器怎么编译 .global symbol 将symbol声明成全局符号.local symbol 将symbol声明成局部符号.equ DATA, 0xFFMOV R1, #DATA.macro FUNCMOV R1, #1MOV R2, #2.endmFUNC.if 0MOV R1, #1MOV R2, #2.endif…

简要介绍 | 快速傅里叶变换:从原理到应用

注1&#xff1a;本文系“简要介绍”系列之一&#xff0c;仅从概念上对快速傅里叶变换进行非常简要的介绍&#xff0c;不适合用于深入和详细的了解。 快速傅里叶变换&#xff1a;从原理到应用 Denoising Data with Fast Fourier Transform 1. 背景介绍 傅里叶变换&#xff08;F…

vcruntime140_1.dll修复,vcruntime140_1.dll丢失推荐的修复方法-一键修复

vcruntime140_1.dll是什么什么文件呢&#xff1f;为什么电脑在运行一些游戏的时候会出现丢失vcruntime140_1.dll&#xff0c;然后游戏运行失败?这个dll文件是电脑重要的运行库文件。丢失了会导致很多程序无法运行。 本教程操作系统&#xff1a;Windows vcruntime140_1.dll丢失…

第十四章 json模块

1. json模块介绍 Python 中的json 模块提供了对JSON 的支持&#xff0c;用于将JSON 格式字符串转换为Python 对象。首先需要了解一下什么是JSON。 什么是JSON JSON 是基于JavaScript 语言的轻量级的数据交换格式&#xff0c;是JavaScript 对象的表示法&#xff08;JavaScrip…