![](https://img-blog.csdnimg.cn/20190927151101105.png?x-oss-process=image/resize,m_fixed,h_224,w_224)
人工智能课程
人工智能课程作业整理
trnbf
这个作者很懒,什么都没留下…
展开
-
人工智能-动物识别专家系统(pyqt5)
1.设计 UI 界面 首先使用 QtDesigner 设计 UI 界面,只将 24 个可输入的事实及其编号列在界面上(有 编号便于参照规则库输入),24 个复选框是以 4*6 的矩阵排列,使用了 horizontalLayout 水平布局和 verticalLayout 垂直布局。 界面上有两个按钮--确定和清除;以及一个 label 显示提示以及结果。...原创 2021-05-28 20:31:39 · 4021 阅读 · 7 评论 -
人工智能-遗传算法
1.编码采用的是二进制编码,用一个二进制编码序列表示一条染色体。首先需要确定序列的长度。区间是 [0,9],区间长度为9-0=9,精确到小数点后4位,所以至少需要把区间分为等份,又因为,所以至少需要17位二进制编码。然后是将解码后的数归一化到规定区间 [0,9] 内,转化公式如下:, (设二进制编码对应的十进制整数为x)解码代码如下:double decoding(int *a) //解码{ double x = 0; for (int i..原创 2021-05-16 10:35:55 · 621 阅读 · 0 评论 -
人工智能-八数码问题-宽度优先搜索
第一个难点在于怎样判断当前状态是否已经遍历过,可以把每一种状态映射为字符串,如果该状态遍历过了,就将<该状态对应的字符串,1>加入到 map 中,每次需要判断该状态是否遍历过的时候直接使用 map 搜索 value 的值 是否存在就可以。更近一步地,可以直接把 vector<int>作为 map 的第一个值,也不需要将状态转化为字符串,直接比较判断就可以,极大地简化了代码。 第二个难点在于保存移动路线,输出结果需要走完每一步的状态,所以保存路线是必须...原创 2021-05-05 14:31:33 · 1242 阅读 · 0 评论 -
人工智能-八数码问题-启发式搜索
【问题描述】 以八数码问题为例,以启发式搜索方法求解给定初始状态和目标状态的最优搜索路径。 1、设计代码的构架。 2、定义启发式函数,使用 A*算法,要求能正确求解出从初始状态到目标状态的移动路线。 3、在控制台界面显示初始状态、目标状态和中间搜索步骤。 4、在实验报告中对所采用的启发式函数作出性能分析。【问题分析】 在简单的宽度优先搜索中,队列的元素排列顺序是根据进栈的先后顺序,最先进栈的排在队首。而 A*算法就是要利用启发信息,根据估价函数值重新排序,对估价函数值小的.原创 2021-05-05 14:25:21 · 2773 阅读 · 0 评论