清华大学《人工智能导论》课程电子教案(一)课件.ppt
- 【下载声明】
1. 本站全部试题类文档,若标题没写含答案,则无答案;标题注明含答案的文档,主观题也可能无答案。请谨慎下单,一旦售出,不予退换。
2. 本站全部PPT文档均不含视频和音频,PPT中出现的音频或视频标识(或文字)仅表示流程,实际无音频或视频文件。请谨慎下单,一旦售出,不予退换。
3. 本页资料《清华大学《人工智能导论》课程电子教案(一)课件.ppt》由用户(晟晟文业)主动上传,其收益全归该用户。163文库仅提供信息存储空间,仅对该用户上传内容的表现方式做保护处理,对上传内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(点击联系客服),我们立即给予删除!
4. 请根据预览情况,自愿下载本文。本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
5. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007及以上版本和PDF阅读器,压缩文件请下载最新的WinRAR软件解压。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 人工智能导论 清华大学 人工智能 导论 课程 电子 教案 课件
- 资源描述:
-
1、1l1943年Post首先在一种计算形式体系中提出l60年代开始,成为专家系统的最基本的结构l形式上很简单,但在一定意义上模仿了人类思考的过程2l组成三要素:一个综合数据库存放信息一组产生式规则知识一个控制系统规则的解释或执行程序 (控制策略)(推理引擎)3lIF THEN lIF THEN l或者简写为:4过程PRODUCTION1,DATA初始数据库2,until DATA满足结束条件,do3,4,在规则集中选择一条可应用于DATA 的规则R5,DATA R应用到DATA得到的结果6,5l问题:设字符转换规则ABCACDBCGBEFDE已知:A,B求:F6一、综合数据库x,其中x为字符二、
2、规则集1,IF AB THEN C2,IF AC THEN D3,IF BC THEN G4,IF BE THEN F5,IF D THEN E7三、控制策略顺序排队四、初始条件A,B五、结束条件Fx8数据库可触发规则被触发规则A,B(1)(1)A,B,C(2)(3)(2)A,B,C,D(3)(5)(3)A,B,C,D,G(5)(5)A,B,C,D,G,E(4)(4)A,B,C,D,G,E,F1,IF AB THEN C 2,IF AC THEN D3,IF BC THEN G 4,IF BE THEN F5,IF D THEN E9例1:传教士与野人问题(M-C问题)问题:N个传教士,N个野
3、人,一条船,可同时乘坐k个人,要求在任何时刻,在河的两岸,传教士人数不能少于野人的人数。问:如何过河。以N=3,k=2为例求解。10 初始 目标 L R L R m 3 0 m 0 3 c 3 0 c 0 3 B 1 0 B 0 1111,综合数据库 (m,c,b),其中:0m,c3,b 0,12,初始状态 (3,3,1)3,目标状态(结束状态)(0,0,0)124,规则集IF(m,c,1)THEN(m-1,c,0)IF(m,c,1)THEN(m,c-1,0)IF(m,c,1)THEN(m-1,c-1,0)IF(m,c,1)THEN(m-2,c,0)IF(m,c,1)THEN(m,c-2,0)
4、13IF(m,c,0)THEN(m+1,c,1)IF(m,c,0)THEN(m,c+1,1)IF(m,c,0)THEN(m+1,c+1,1)IF(m,c,0)THEN(m+2,c,1)IF(m,c,0)THEN(m,c+2,1)5,控制策略:(略)144,规则集:IF(m,c,1)AND 1 i+j2 THEN(m-i,c-j,0)IF(m,c,0)AND 1 i+j2 THEN(m+i,c+j,1)15 c a b161,综合数据库(M,B,Box,On,H)M:猴子的位置B:香蕉的位置Box:箱子的位置On=0:猴子在地板上On=1:猴子在箱子上H=0:猴子没有抓到香蕉H=1:猴子抓到了香
5、蕉172,初始状态(c,a,b,0,0)3,结束状态(x1,x2,x3,x4,1)其中x1x4为变量。184,规则集r1:IF (x,y,z,0,0)THEN (w,y,z,0,0)r2:IF (x,y,x,0,0)THEN (z,y,z,0,0)r3:IF (x,y,x,0,0)THEN (x,y,x,1,0)r4:IF (x,y,x,1,0)THEN (x,y,x,0,0)r5:IF (x,x,x,1,0)THEN (x,x,x,1,1)其中x,y,z,w为变量19l数据驱动l知识的无序性l控制系统与问题无关l数据、知识和控制相互独立20l正向、逆向、双向产生式系统l可交换的产生式系统l可
6、分解的产生式系统21l内容:状态空间的搜索问题。l搜索方式:盲目搜索启发式搜索l关键问题:如何利用知识,尽可能有效地找到问题的解(最佳解)。22S0Sg23l讨论的问题:有哪些常用的搜索算法。问题有解时能否找到解。找到的解是最佳的吗?什么情况下可以找到最佳解?求解的效率如何。24l例:皇后问题QQQQ25()26()Q(1,1)27()QQ(1,1)(1,1)(2,3)28()Q(1,1)(1,1)(2,3)29()QQ(1,1)(1,1)(2,3)(1,1)(2,4)30()QQ(1,1)(1,1)(2,3)(1,1)(2,4)Q(1,1)(2,4)(3.2)31()QQ(1,1)(1,1)
7、(2,3)(1,1)(2,4)(1,1)(2,4)(3.2)32()Q(1,1)(1,1)(2,3)(1,1)(2,4)(1,1)(2,4)(3.2)33()(1,1)(1,1)(2,3)(1,1)(2,4)(1,1)(2,4)(3.2)34()(1,1)(1,1)(2,3)(1,1)(2,4)(1,1)(2,4)(3.2)Q(1,2)35()(1,1)(1,1)(2,3)(1,1)(2,4)(1,1)(2,4)(3.2)Q(1,2)Q(1,2)(2,4)36()(1,1)(1,1)(2,3)(1,1)(2,4)(1,1)(2,4)(3.2)Q(1,2)Q(1,2)(2,4)Q(1,2)(2,
8、4)(3,1)37()(1,1)(1,1)(2,3)(1,1)(2,4)(1,1)(2,4)(3.2)Q(1,2)Q(1,2)(2,4)Q(1,2)(2,4)(3,1)Q(1,2)(2,4)(3,1)(4,3)38当前状态目标状态g39int ListLenght(LIST*pList)if(pList=NULL)return 0;else return ListLength(pList-next)+1;NULLpLIST12340BACKTRACK(DATA)DATA:当前状态。返回值:从当前状态到目标状态的路径(以规则表的形式表示)或FAIL。41递归过程BACKTRACK(DATA)1,
9、IF TERM(DATA)RETURN NIL;2,IF DEADEND(DATA)RETURN FAIL;3,RULES:=APPRULES(DATA);4,LOOP:IF NULL(RULES)RETURN FAIL;5,R:=FIRST(RULES);6,RULES:=TAIL(RULES);7,RDATA:=GEN(R,DATA);8,PATH:=BACKTRACK(RDATA);9,IF PATH=FAIL GO LOOP;10,RETURN CONS(R,PATH);42l解决办法:对搜索深度加以限制记录从初始状态到当前状态的路径当前状态l问题:深度问题死循环问题43BACKTRA
10、CK1(DATALIST)DATALIST:从初始到当前的状态表(逆向)返回值:从当前状态到目标状态的路径(以规则表的形式表示)或FAIL。441,DATA:=FIRST(DATALIST)2,IF MENBER(DATA,TAIL(DATALIST)RETURN FAIL;3,IF TERM(DATA)RETURN NIL;4,IF DEADEND(DATA)RETURN FAIL;5,IF LENGTH(DATALIST)BOUND RETURN FAIL;6,RULES:=APPRULES(DATA);7,LOOP:IF NULL(RULES)RETURN FAIL;8,R:=FIRST
11、(RULES);459,RULES:=TAIL(RULES);10,RDATA:=GEN(R,DATA);11,RDATALIST:=CONS(RDATA,DATALIST);12,PATH:=BACKTRCK1(RDATALIST)13,IF PATH=FAIL GO LOOP;14,RETURN CONS(R,PATH);46l失败原因分析、多步回溯QQ47l回溯搜索中知识的利用基本思想(以皇后问题为例):尽可能选取划去对角线上位置数最少的。QQQQ3 2 2 348l问题的引出回溯搜索:只保留从初始状态到当前状态的一条路径。图搜索:保留所有已经搜索过的路径。49l节点深度:根节点深度=0
12、其它节点深度=父节点深度+1012350l路径设一节点序列为(n0,n1,nk),对于i=1,k,若节点ni-1具有一个后继节点ni,则该序列称为从n0到nk的路径。l路径的耗散值一条路径的耗散值等于连接这条路径各节点间所有耗散值的总和。用C(ni,nj)表示从ni到nj的路径的耗散值。51l扩展一个节点生成出该节点的所有后继节点,并给出它们之间的耗散值。这一过程称为“扩展一个节点”。521,G=G0(G0=s),OPEN:=(s);2,CLOSED:=();3,LOOP:IF OPEN=()THEN EXIT(FAIL);4,n:=FIRST(OPEN),REMOVE(n,OPEN),ADD
13、(n,CLOSED);5,IF GOAL(n)THEN EXIT(SUCCESS);6,EXPAND(n)mi,G:=ADD(mi,G);537,标记和修改指针:ADD(mj,OPEN),并标记mj到n的指针;计算是否要修改mk、ml到n的指针;计算是否要修改ml到其后继节点的指针;8,对OPEN中的节点按某种原则重新排序;9,GO LOOP;54.mjmkml55修改指针举例123456s56修改指针举例(续1)123456s57123456修改指针举例(续2)s58123456修改指针举例(续3)s59l深度优先搜索l宽度优先搜索601,G:=G0(G0=s),OPEN:=(s),CLOS
14、ED:=();2,LOOP:IF OPEN=()THEN EXIT(FAIL);3,n:=FIRST(OPEN);4,IF GOAL(n)THEN EXIT(SUCCESS);5,REMOVE(n,OPEN),ADD(n,CLOSED);6,IF DEPTH(n)Dm GO LOOP;7,EXPAND(n)mi,G:=ADD(mi,G);8,IF 目标在mi中 THEN EXIT(SUCCESS);9,ADD(mj,OPEN),并标记mj到n的指针;10,GO LOOP;612 31 8 47 6 5 2 31 8 47 6 52 8 31 47 6 52 31 8 47 6 52 8 31
15、47 6 52 8 31 6 47 52 8 3 1 47 6 52 8 31 6 47 52 8 31 6 4 7 52 8 37 1 4 6 5 8 32 1 47 6 52 81 4 37 6 52 8 31 4 57 6 1 2 37 8 4 6 51 2 38 47 6 52 8 3 6 41 7 52 8 31 67 5 48 32 1 47 6 52 8 37 1 46 52 81 4 37 6 52 8 31 4 57 6123456789abcd1 2 3 8 47 6 5目标62l一般不能保证找到最优解l当深度限制不合理时,可能找不到解,可以将算法改为可变深度限制l最坏情况
16、时,搜索空间等同于穷举l与回溯法的差别:图搜索l是一个通用的与问题无关的方法63宽度优先搜索1,G:=G0(G0=s),OPEN:=(s),CLOSED:=();2,LOOP:IF OPEN=()THEN EXIT(FAIL);3,n:=FIRST(OPEN);4,IF GOAL(n)THEN EXIT(SUCCESS);5,REMOVE(n,OPEN),ADD(n,CLOSED);6,EXPAND(n)mi,G:=ADD(mi,G);7,IF 目标在mi中 THEN EXIT(SUCCESS);8,ADD(OPEN,mj),并标记mj到n的指针;9,GO LOOP;642 31 8 47 6
17、 5 2 31 8 47 6 52 8 31 47 6 52 31 8 47 6 52 8 31 47 6 52 8 31 6 47 52 8 3 1 47 6 52 8 31 6 47 52 8 31 6 4 7 52 8 37 1 4 6 5 8 32 1 47 6 52 81 4 37 6 52 8 31 4 57 6 1 2 37 8 4 6 51 2 38 47 6 51256731 2 3 8 47 6 5目标82 3 41 8 7 6 5465l当问题有解时,一定能找到解l当问题为单位耗散值,且问题有解时,一定能找到最优解l方法与问题无关,具有通用性l效率较低l属于图搜索方法66
18、l目的解决宽度优先方法的空间问题和回溯方法不能找到最优解的问题。l思想首先给回溯法一个比较小的深度限制,然后逐渐增加深度限制,直到找到解或找遍所以分支为止。67l利用知识来引导搜索,达到减少搜索范围,降低问题复杂度的目的。l启发信息的强度强:降低搜索工作量,但可能导致找不到最 优解弱:一般导致工作量加大,极限情况下变为 盲目搜索,但可能可以找到最优解68l引入启发知识,在保证找到最佳解的情况下,尽可能减少搜索范围,提高搜索效率。69l定义一个评价函数f,对当前的搜索状态进行评估,找出一个最有希望的节点来扩展。70l评价函数的格式:f(n)=g(n)+h(n)f(n):评价函数h(n):启发函数
展开阅读全文