人工智能导论笔记
1、概论
1.1人工智能介绍
①人工智能1956年诞生;1997年IBM公司研发的深蓝超级计算机国际象棋世界冠军卡斯帕罗夫;2017年阿尔法狗击败中国世界围棋冠军柯洁
②人工智能的三步走战略:同步(2020)、突破(2025)、领先(2030)
③SIRI、指纹识别、人脸识别、无人驾驶等都涉及到了AI
④AI就是让机器实现原本只有人类才能完成的任务
⑤人工智能分为三种形态
1.弱:没有自主意识,只能完成程序设定内的任务,广泛用于取代机械体力劳动
2.强:具有自我意识,可以像人脑一样独立思考,并制定解决问题的最佳方案
3.超:全方位碾压人类脑力体力
1.2人工智能概念
①人工智能的定义众说纷纭,一般的解释为人工智能就是用人工的方法在机器(计算机)上实现的智能行为,包括感知、推理、学习、通信和复杂环境下的动作行为
1.3人工智能的发展史
①人工智能现状
1.人工智能的发展较为单一
2.人工智能尚处于起步阶段
3.“智能+X”成为人工智能应用的创新模式
4.人工智能领域的国际竞争日益激烈
②当前中国人工智能
1.高度重视—国家大力支持
2.态势喜人—中国AI企业数量全球第二,中国AI领域融资规模占全球60%
3.差距不小—尚处于“跟跑”地位,与世界领先水平还存在明显差距
4.前景看好
1.4人工智能三大学派
①人工智能三大学派
1.符号主义学派
2.连接主义学派
3.行为主义学派
②图灵测试
测试者与被测试者(一个人和一台机器)隔开的情况下,通过一些装置(如键盘)向被测试者随意提问。进行多次测试后,如果机器让平均每个参与者做出超过30%的误判,那么这台机器就通过了测试,并被认为具有人类智能。(来源百度百科)
2、状态搜索空间表示及其搜索技术
2.1状态空间法
①问题求解过程实际上就是一个搜索的过程
问题求解技术主要涉及两个方面:问题的表示和求解的方法
②状态空间表示法:用来表示问题及其搜索过程的一种方法,以状态和算符为基础来表示和求解问题
包括三要素:状态、算符和状态空间
状态—表示问题求解过程中每一步问题状况的数据结构
算符—当对一个问题状态使用某个可用操作时,它将引起该状态中某些分量值的变化,从而使问题从一个具体状态变为另一个具体状态
状态空间—用来描述一个问题的全部状态以及这些状态之间的相互关系;常用一个三元组表示:(S,F,G)
S—问题的所有初始状态的集合;F—算符的集合;G—目标状态的集合
2.2图搜索
①搜索的目的是为了寻找初始节点到目标节点的路径,所以要随时记录搜索轨迹
1.必须记住下一步还可以走哪些点,OPEN表
2.必须记住哪些点走过了,CLOSED表
3.必须记住从目标返回的路径
②例题
2.3盲目式搜索
①定义—按预定的控制策略进行搜索,在搜索工程中获得的中间信息不用来改进控制策略(没有启发信息的一种搜索形式)
②种类—宽度优先(广度);深度优先;等代价搜索
③不足—适合简单问题求解,问题较复杂时,效率低
④宽度优先搜索
⑤深度优先搜索
深度界限—一个节点扩展最大深度,防止搜索过程沿着无益的路径扩展下去;起始节点的深度为0
⑥等代价搜索
等代价搜索是宽度优先搜索的一种推广,沿着等代价路径断层进行扩展
2.4启发式搜索
①启发性信息—指那种与具体问题求解过程有关的,并可指导搜索过程朝着最有希望方向前进的控制信息
②A算法
③A*算法
A* 算法的搜索效率在很大程度上取决于h(n),在满足h(n)<=h*(n)的前提下,h(n)的值越大越好
3、问题归约知识表示及搜索技术
3.1问题归约法及与或图
①问题归约法基本思想—从已知问题的描述出发,通过一系列变换把此问题最终变为一个子问题集合;这些子问题的解可以直接得到,从而解决了初始问题(类似于递归)
②问题归约法组成
1.一个初始问题的描述
2.一套把问题变换为子问题的操作符
3.一套本原问题
③与或图
④所有节点都是或节点,这时就是一般的图,即状态空间图
除了起始节点外,所有节点只有一个父节点,此时称为与或树
⑤可解节点
1.终叶节点是可解节点
2.如果某个非终叶节点含有或后继节点时,只有当其后继节点至少有一个是可解的时,此非终叶节点才是可解的
3.如果某个非终叶节点含有与后继节点时,只有当其后继节点全部可解时,此非终叶节点才是可解的
⑥不可解节点
1.没有后继节点的非终叶节点
2.全部后继节点为不可解的非终叶节点且含有或后继节点
3.后继节点至少有一个为不可解的非终叶节点且含有与后继节点
3.2与或图的盲目式搜索
①与或图搜索—在与或图上执行搜索的过程,其目的在于标明起始节点是有解的,即搜索不是去寻找到目标节点的一条路径,而是寻找一个解树
解树—由能够证明初始节点时可解的可解节点构成的连通的子图
②与或树—除初始节点,其余节点只有一个父节点
③与或图—除初始节点,其余节点允许有多个父节点
④与或树搜索过程
⑤与或树的宽度优先搜索—先产生的节点先扩展
求解步骤为:
初始化:节点1送到OPEN表,且不为终叶节点
OPEN | CLOSED |
1 |
---|
STEP1:把节点1放入CLOSED表,扩展,得到节点2、3
OPEN | CLOSED |
---|---|
1 | |
2,3 | 1 |
STEP2:扩展节点2后,得到节点4、t1;节点t1是终叶节点且为可解节点,对其先辈节点进行标志;t1的父结点是与节点,无法判断节点2是否可解,接着扩展节点3
OPEN | CLOSED |
---|---|
1 | |
2,3 | 1 |
3,4,t1 | 1,2 |
STEP3:扩展节点3,得到节点5、B;节点5、B都不是终叶节点,接着扩展节点4
OPEN | CLOSED |
---|---|
1 | |
2,3 | 1 |
3,4,t1 | 1,2 |
4,t1,5,B | 1,2,3 |
t1,5,B | 1,2,3,4 |
STEP4:扩展节点4,得到节点A、t2;节点t2是终叶节点且为可解节点,对其先辈节点进行标志;节点4、2可解,但不确定1是否可解;从OPEN表中删除掉A;此时节点5是OPEN表第一个待考察的节点,下一步扩展节点5
OPEN | CLOSED |
---|---|
1 | |
2,3 | 1 |
3,4,t1 | 1,2 |
4,t1,5,B | 1,2,3 |
t1,5,B,A,t2 | 1,2,3,4 |
5,B,t2 | 1,2,3,4,t1 |
B,t2 | 1,2,3,4,t1,5 |
STEP5:扩展节点5后,得到节点t3、t4;节点t3、t4都是终叶节点且为可解节点,对其先辈节点进行标志;节点5可解,接着推出节点3可解,节点1可解,从OPEN表中删除B,成功退出
OPEN | CLOSED |
---|---|
1 | |
2,3 | 1 |
3,4,t1 | 1,2 |
4,t1,5,B | 1,2,3 |
t1,5,B,A,t2 | 1,2,3,4 |
5,B,t2 | 1,2,3,4,t1 |
B,t2,t3,t4 | 1,2,3,4,t1,5 |
t2,t3,t4 | 1,2,3,4,t1,5 |
⑥与或树深度优先搜索—新产生的节点先扩展
求解步骤为:
初始化:节点1送到OPEN表,且不为终叶节点
OPEN | CLOSED |
---|---|
1 |
STEP1:把节点1放入CLOSED表,扩展,得到节点2、3;节点2、3都不是终叶节点,接着扩展节点2,此时OPEN表只剩节点3
OPEN | CLOSED |
---|---|
1 | |
2,3 | 1 |
3 | 1,2 |
STEP2:扩展节点2后,得到节点4、t1;t1是终叶节点,但无法表示节点2;继续扩展节点4
OPEN | CLOSED |
---|---|
1 | |
2,3 | 1 |
4,t1,3 | 1,2 |
t1,3 | 1,2,4 |
STEP3:扩展节点4后,得到节点A、t2;标志4、2为可解节点,但不能确定1是否可解;删掉OPEN表中的节点A,接着扩展节点3
OPEN | CLOSED |
---|---|
1 | |
2,3 | 1 |
4,t1,3 | 1,2 |
A,t2,t1,3 | 1,2,4 |
3 | 1,2,4,t2,t1 |
STEP4:扩展节点3,得到节点5、B;接着扩展节点5
OPEN | CLOSED |
---|---|
1 | |
2,3 | 1 |
4,t1,3 | 1,2 |
A,t2,t1,3 | 1,2,4 |
3 | 1,2,4,t2,t1 |
5,B | 1,2,4,t2,t1,3 |
B | 1,2,4,t2,t1,3,5 |
STEP5:扩展节点5后,得到节点t3、t4;标志可解节点5、3,推出初始节点1可解,删掉节点B;成功退出
OPEN | CLOSED |
---|---|
1 | |
2,3 | 1 |
4,t1,3 | 1,2 |
A,t2,t1,3 | 1,2,4 |
3 | 1,2,4,t2,t1 |
5,B | 1,2,4,t2,t1,3 |
t3,t4,B | 1,2,4,t2,t1,3,5 |
t3,t4 | 1,2,4,t2,t1,3,5 |
3.3博弈树搜索
①机器博弈—机器参与的博弈,参与智力竞技
②博弈树特点
③Max-Min搜索
④α-β剪枝搜索
对于一个与节点来说,它取当前子节点中的最小倒退值作为它倒退值的上界,称此为β值(β<=最小值)