当前位置:文档之家› 人工智能实验报告

人工智能实验报告

人工智能实验报告实验一 在搜索策略实验群实验目的熟悉和掌握启发式搜索的定义、估价函数和算法过程,并利用A*算法求解N 数码难题,理解求解流程和搜索顺序。

搜索图算法比较广度优先深度优先 A*Open 表 节点G ,节点10节点G ,节点6节点3,节点9,节点G ,节点10,节点8Close 表节点s ,节点1,节点2,节点3,节点4,节点5,节点6,节点7,节点8,节点9 节点s,节点1,节点3,节点7,节点4,节点8,节点2,节点5,节点9节点s ,节点2,节点1,节点5,节点6,节点4估价函数无无)()()(n h n g n f +=搜索节点次序记录 节点s ,节点1,节点2,节点3,节点4,节点5,节点6,节点7,节点8,节点9,节点G 节点s,节点1,节点3,节点7,节点4,节点8,节点2,节点5,节点9,节点G 节点s ,节点2,节点1,节点5,节点6,节点4,节点G观测结果 经过11步搜索得到目标节点经过10步搜索得到目标节点经过7步搜索得到目标节点学生结论宽度优先搜索能保证在搜索树 深度优先搜索要沿路径一条一 A*算法是启发式算法的一中找到一条通向目标节点的最短路径,但由于盲目性大所以当搜索数据比较多的时候该方法较为费时。

条的走到底,如果目标在前几条路径中那么该搜索会较为快捷,在本搜索树中虽然比宽度优先少一步,但是若第一条路径或者某几条路径很深,则该搜索会相当耗时且不能保证成功。

种能通过路径的权值找出代价最为小的一条,所以很具优越性,但是算法本身计算较为复杂,要考虑以前的和将来两方面的代价,进行估算,所以没有前两种方法简单。

实验二:产生式系统实验实验目的熟悉和掌握产生式系统的运行机制,掌握基于规则推理的基本方法。

推理方法□ 正向推理 □ 反向推理建立规则库 建立事实库该动物是哺乳动物 <- 该动物有毛发. 该动物是哺乳动物 <- 该动物有奶.该动物是鸟 <- 该动物有羽毛.该动物是鸟 <- 该动物会飞&会下蛋. 该动物是食肉动物 <- 该动物吃肉.该动物是食肉动物 <- 该动物有犬齿&有爪&眼盯前方. 该动物是有蹄类动物 <- 该动物是哺乳动物&有蹄. 该动物是有蹄类动物 <- 该动物是哺乳动物& 是嚼反刍动物.该动物是金钱豹 <- 该动物是哺乳动物&是食肉动物&是黄褐色&身上有暗斑点.该动物是虎 <- 该动物是哺乳动物&是食肉动物&是黄褐色&身上有黑色条纹.该动物是长颈鹿 <- 该动物是有蹄类动物&有长脖子&有长腿&身上有暗斑点.该动物是斑马 <- 该动物是有蹄类动物&身上有黑色条纹.该动物是鸵鸟 <- 该动物是鸟&有长脖子&有长腿&不会飞&有黑白二色.该动物是企鹅 <- 该动物是鸟&会游泳&不会飞&有黑白二色.该动物是信天翁 <- 该动物是鸟&善飞.%------动物识别系统事实集: %--该动物是企鹅 会游泳. 不会飞.有黑白二色. %该动物是鸟.%-------- %--该动物是鸟 该动物会飞.会下蛋.%----该动物是金钱豹 <- 该动物是哺乳动物&是食肉动物&是黄褐色&身上有暗斑点. 该动物有毛发. %是食肉动物. 是黄褐色. 身上有暗斑点. 该动物吃肉.%----该动物是虎 <- 该动物是哺乳动物&是食肉动物&是黄褐色&身上有黑色条纹.该动物是哺乳动物.%是食肉动物. 是黄褐色.身上有黑色条纹.%----该动物是长颈鹿 <- 该动物是有蹄类动物&有长脖子&有长腿&身上有暗斑点. %该动物是有蹄类动物. 有长脖子. 有长腿. 身上有暗斑点.%----该动物是有蹄类动物 <- 该动物是哺乳动物&有蹄. %有蹄.预测结果在相关询问:该动物是哺乳动物? 该动物是鸟? 该动物是食肉动物? 该动物是金钱豹?该动物是鸵鸟?该动物是企鹅?时为真,其余为假。

实验过程及结果(注意观测规则的匹配过程和方法)以该动物是否为鸵鸟为例,匹配过程如上图,得到结果为真。

符合预测。

以该动物是否为金钱豹为例,匹配过程如上图,得到结果为真。

不符合预测。

备注(原因等)鸵鸟根据规则“该动物是鸟&有长脖子&有长腿&不会飞&有黑白二色”查询知识库,首先看“该动物是鸟”,根据规则“该动物是鸟 <- 该动物有羽毛该动物是鸟 <- 该动物会飞&会下蛋.”查知识库没发现“该动物有羽毛”所以这一条路推出结论为false;“该动物是鸟”还有另外一个条件,“该动物会飞&会下蛋.”根据知识库满足,那么去掉这个条件,继续看下面的条件“有长脖子&有长腿&不会飞&有黑白二色”,根据知识库上述条件都有,所以一次去掉,最后得到结论为true。

而第二个例子同理需要先根据规则“该动物是金钱豹 <- 该动物是哺乳动物&是食肉动物&是黄褐色&身上有暗斑点.”查询知识库,首先判断“该动物是哺乳动物”,“该动物是哺乳动物<-该动物有毛发.该动物是哺乳动物 <- 该动物有奶.”进行判断,知识库中“该动物是哺乳动物.该动物有毛发.”均可肯定它,所以走这两条路,但找不到“是食肉动物”这条知识,所以判断该动物不是金钱豹。

学生结论虽然我们可以通过规则“该动物是食肉动物 <- 该动物吃肉.”与知识“该动物吃肉.”判断出“该动物是食肉动物”但是与规则中“是食肉动物”不一样,所以不能据此推出剩下结论,而把规则库中“该动物是食肉动物 <- 该动物吃肉.”改为:“是食肉动物 <- 该动物吃肉.”或者把:“该动物是金钱豹 <- 该动物是哺乳动物&是食肉动物&是黄褐色&身上有暗斑点.”改为“该动物是金钱豹 <- 该动物是哺乳动物&该动物是食肉动物&是黄褐色&身上有暗斑点.”就能使推论成立。

因此我们可以看出知识库必须完全和规则库中条件匹配才能得到相关结论。

实验目的理解反向传播网络的结构和原理,掌握反向传播算法对神经元的训练过程,了解反向传播公式。

通过构建BP网络实例,熟悉前馈网络的原理及结构。

网络拓朴图初始目标初始目标初始目标训练数据集节点0 1 2 50 0 0 00 0 1 00 1 0 00 1 1 11 0 0 01 0 1 11 1 0 1节点0 1 40 0 00 1 11 0 1输入1 2 与或或非0 0 0 0 10 1 0 1 01 0 0 1 01 1 1 1 0训练误差R=0.1R=0.1R=0.05模拟的问题或函数多数赞成表决器异或问题布尔网观测结果学生结论训练以前(上图)训练以后:经过87步训练达到目标,训练之后准确性明显提高但是由于存在0.1的误差所以不能完全准确,赋的值不同,学习速度不同,到达目标的时间长短也不同,r越小,同等条件下所需要训练的次数也越多且近似成反比关系。

训练以前(上图)训练以后:经过121步训练达到目标,训练之后准确性明显提高但是由于存在0.1的误差所以不能完全准确,赋的值不同,学习速度不同,到达目标的时间长短也不同,r越小,同等条件下所需要训练的次数也越多且近似成反比关系。

训练以前(上图)训练以后:经过467次训练达到目标误差,可见训练次多远远大于前两种,但是相对的训练后精度也更高,更接近于理论水平,但是永远也达不到100%准确,所以实际运用中根据需要选取可接受的误差范围即可。

实验四自动规划实验实验目的理解自动规划的基本原理,掌握为活动实体(人、组织、机器)设计合理的行为--按时间顺序的活动序列。

的基本技术。

实验原理规划是一种问子题求解技术,它从某个特定的问题状态出发,寻求一系列行为动作,并建立一个操作序列,直到求得目标状态为止。

简而言之,规划是一个行动过程的描述。

一个总规划可以含有若干个子规划。

状态定义Empty:表示机械手为空ontable(木块X):木块X在桌面上clear(木块X):木块X上面为空on(木块X, 木块Y):木块X在木块Y上面hand(X):机械手抓着木块X动作定义Pickup(木块X,木块Y):从木块Y上抓取木块XPickuptable:(木块X)从桌面抓取木块XPutdown(木块X,木块Y):把木块X放在木块Y上面。

Putdowntable(木块X):把木块X放在桌面上动作Pickup(木块X,木块Y)的先决条件和删除表:clear(X)∧on(木块X,木块Y)∧empty添加表:hand(X) Pickuptable(X)的先决条件和删除表:ontable(X)∧clear(X)∧empty添加表:hand(X)Putdown(木块X,木块Y)的先决条件和删除表:hand(X)∧clear(Y)添加表:on(木块X,木块Y)∧emptyPutdowntable(木块X)的先决条件和删除表:hand(X)添加表:ontable(X)∧empty初始状态emptyontable(木块一) clear(木块四) ontable(木块三) on(木块四, 木块一)on(木块二, 木块三)clear(木块二)目标状态emptyontable(木块一) on(木块二, 木块一)on(木块三, 木块二)on(木块四, 木块三)clear(木块四)规划结果pickup(木块四, 木块一) putdowntable(木块四)pickup(木块二, 木块三)putdown(木块二, 木块一) pickuptable(木块三)putdown(木块三, 木块二) pickuptable(木块四)putdown(木块四, 木块三)观测结果{ontable(木块一),on(木块二, 木块一),on(木块三, 木块二),on(木块四, 木块三),clear(木块四),empty}->{ontable(木块一),clear(木块一),ontable(木块三),clear(木块三),ontable (木块四),on(木块二,木块三),clear(木块二),empty}->{ontable(木块一),ontable (木块三),clear(木块三),ontable(木块四),clear(木块四),on(木块二,木块一),clear(木块二),empty}->{ontable(木块一),ontable(木块四),c lear(木块四),on(木块二,木块一),on(木块三,木块二),clear(木块三),empty}->{ontable(木块一),on(木块二,木块三),on(木块四,木块三),clear(木块四),empty}学生结论本系统能解决任意初始状态到任意目标状态的规划,通过机械手完成操作。

相关主题