人工智能实验一_第1页
人工智能实验一_第2页
人工智能实验一_第3页
人工智能实验一_第4页
人工智能实验一_第5页
全文预览已结束

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

人工智能》实验指导书第一次实验编写者:刘铭皓实验一:知识表示方法(状态空间表示法)一、实验目的状态空间表示法是人工智能领域最基本的知识表示方法之一,也是进一步学习状态空间搜索策略的基础,本实验通过翻转钱币的问题,强化学生对知识表示的了解和应用,为人工智能后续环节的课程奠定基础。二、实验环境DEVC++或VisualStudio集成开发环境。三、实验内容三枚钱币处于反、正、反状态,每次只许翻动一枚钱币,问连续翻动三次后,能否出现全正或全反状态。使用任意语言设计一个算法,验证最后结果。将分析的过程及结果写入实验报告代码思路:0代表反,1代表正初始状态:010使用深度优先搜索dfs,每次选择第1,第2,第3枚硬币中的任意一个进行翻转,翻转3次后,如果全正或者全反,则找到结果进行输出。代码运行结果:■'C:\Users\wsb\De5ktop\f^W\d.exeI依次翻转第几个硬帀:12211122332332YESProcessreturned0!:.0x0/executiontime:0.047sPressanykeytocontinue.结果分析:一共有7种方法比如第一种方法112初始状态:010第一次翻转第1枚硬币后:110第二次翻转第1枚硬币后:010第三次翻转第2枚硬币后:000可以看的以112的顺序翻转后,最终状态是000,符合题目要求剩下6种方法不再一一分析。源代码:#include<bits/stdc++.h>usingnamespacestd;constintN=100+5;typedeflonglongll;inta[N];intflag=0;intvis[N];intres=0;voiddfs(intcnt,intn){if(cnt==n){res++;intans=0;intok=0;for(inti=0;i<n;i++){ans+=a[i];}if(ans==3||ans==0){flag=1;ok=1;}if(ok){for(inti=0;i<n;i++){cout<<vis[i]<<"";}cout<<endl;}return;}for(inti=0;i<n;i++){vis[cnt]=i+1;a[i]=!a[i];dfs(cnt+1,n);a[i]=!a[i];vis[cnt]=0;}}intmain(){intn=3;a[1]=1;coutvv"依次翻转第几个硬币:\n";dfs(0,n);if(flag){cout<<"YES\n";}else{cout<<"NO\n";}return0;}四、实验提交提交时间:下周实验课前提交上周的实验报告和源代码提交地址:88/账号:rgzn(无密码)提交内容:实验报告和源代码各

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论