• 986.73 KB
  • 2022-04-22 11:54:36 发布

《人工智能》--课后习题答案.pdf

  • 47页
  • 当前文档由用户上传发布,收益归属用户
  1. 1、本文档共5页,可阅读全部内容。
  2. 2、本文档内容版权归属内容提供方,所产生的收益全部归内容提供方所有。如果您对本文有版权争议,可选择认领,认领后既往收益都归您。
  3. 3、本文档由用户上传,本站不保证质量和数量令人满意,可能有诸多瑕疵,付费之前,请仔细先通过免费阅读内容等途径辨别内容交易风险。如存在严重挂羊头卖狗肉之情形,可联系本站下载客服投诉处理。
  4. 文档侵权举报电话:19940600175。
'《人工智能》课后习题答案第一章绪论1.1答:人工智能就是让机器完成那些如果由人来做则需要智能的事情的科学。人工智能是相对于人的自然智能而言,即用人工的方法和技术,研制智能机器或智能系统来模仿延伸和扩展人的智能,实现智能行为和“机器思维”,解决需要人类专家才能处理的问题。1.2答:“智能”一词源于拉丁“Legere”,意思是收集、汇集,智能通常用来表示从中进行选择、理解和感觉。所谓自然智能就是人类和一些动物所具有的智力和行为能力。智力是针对具体情况的,根据不同的情况有不同的含义。“智力”是指学会某种技能的能力,而不是指技能本身。1.3答:专家系统是一个智能的计算机程序,他运用知识和推理步骤来解决只有专家才能解决的复杂问题。即任何解题能力达到了同领域人类专家水平的计算机程序度可以称为专家系统。1.4答:自然语言处理—语言翻译系统,金山词霸系列机器人—足球机器人模式识别—MicrosoftCartoonMaker博弈—围棋和跳棋第二章知识表达技术2.1解答:(1)状态空间(StateSpace)是利用状态变量和操作符号,表示系统或问题的有关知识的符号体系,状态空间是一个四元组(S,O,S0,G):S—状态集合;O—操作算子集合;S0—初始状态,S0S;G—目的状态,GS,(G可若干具体状态,也可满足某些性质的路径信息描述)从S0结点到G结点的路径被称为求解路径。状态空间一解是一有限操作算子序列,它使初始状态转换为目标状态:O1O2O3OkS0S1S2……G其中O1,…,Ok即为状态空间的一个解(解往往不是唯一的)(2)谓词逻辑是命题逻辑的扩充和发展,它将原子命题分解成客体和谓词两个部分。与命题逻辑中命题公式相对应,谓词逻辑中也有谓词(命题函数)公式、原子谓词公式、复合谓词公式等概念。一阶谓词逻辑是谓词逻辑中最直观的一种逻辑。(3)语义网络是一种采用网络形式表示人类知识的方法。即用一个有向图表示概念和概念之间的关系,其中节点代表概念,节点之间的连接弧(也称联想弧)代表概念之间的关系。常见的语义网络形式有命题语义网络、数据语义网络:E-R图(实体-关系图)、语言语义网络等。1 2.2解答:(1)GSMANAREMORTALISAFgISAISAISA动作动作MAH主体对象(2)GSCLOUDHASLININGSILVERISAFISAISAISAcolorg动作动作CHW主体对象(3)DECPLANMANAGERSbelongISAISABRANCHPROFIT-SHARINGMANAGERSPARTICIPATEPLANGSISAFgISAISAISA动作动作MPS主体对象2 2.3解答:设有如下四个谓词:HUMAN(X)X是人LAWED(X)X受法律管制COMMIT(X)X犯法PUNISHED(X)X受法律制裁前两个谓词可以变为:HUMAN(X)LAWED(X),表示:人人都要受法律的管制;后两个谓词可以变为:COMMIT(X)PUNISHED(X),表示只要X犯了罪,X就要受到惩罚;进一步,还可以把上述两个谓词联结成如下形式:[HUMAN(X)LAWED(X)][COMMIT(X)PUNISHED(X)]本公式的含义是:如果由于某个X是人而受到法律管制,则这个人犯了罪就一定要受到惩罚。晁盖是人,受法律的管制(老百姓受法律的管制);所以晁盖劫了生辰纲,违反了宋王朝的法律,一定要受到官府的追究。高衙内是人,却不受法律的管制(达官贵人和恶少不受法律的管制);所以高衙内强抢民女,同样是违反了宋王朝的法律,却可以横行无忌。2.4解答:题中提供的条件可记为①②③④⑤,依次利用这些条件可得到如下结果:(1)条件②:周和钱是同一性别;推得:李、徐、周、钱是同一性别条件⑤:李、徐、周是同一性别;条件③:李的爱人是陈的爱人的表哥,则李的爱人性别是男,而李的性别是女这样可以初步推出:李、徐、周、钱均是女的,对应的王、陈、孙、吴均是男的。(2)条件④:陈与徐、周俊不构成夫妻,则陈选择的余地为钱或李;推得:陈与钱是夫妻条件③:李与陈不构成夫妻;条件④:吴与徐、周均不构成夫妻,则吴选择的余地为李;推得:吴与李是夫妻条件①:王与周不构成夫妻,则王选择的余地为徐;推得:王与徐是夫妻排除上述已经成立的条件,显然可推得:孙与周是夫妻。bb2.5解答:符号微积分基本公式为f(x)F(b)F(a)F(x)|aa用产生式表示为:Iff(x)and(a,b)ThenF(b)-F(a)2.6解答:题中描述的情况用谓词形式可表达如下:DOG(X)X是狗SOUND(X)X会吠叫BIT(X,Y)X咬YANIMAL(X)X是动物题中各条推理则可以表示为:P1:xDOG(X)yBIT(X,Y)∨SOUND(X)P2::x(ANIMAL(X)∧SOUND(X))yBIT(X,Y)P3:猎犬是狗,即DOG(X)种X的谓词样品是猎犬,同时也可得ANIMAL(猎犬)将P3带入P1可得SOUND(猎犬),再将SOUND(猎犬)和ANIMAL(猎犬)带入P2可得3 yBIT(猎犬,Y),即可以得到结果:猎犬是咬人的。2.7解答:题中的三条规则侧重点不同:R1规则的重点在于我师的任务;R2规则的重点在于敌团的配置;R3规则的重点在于我师的任务和敌团的配置同时满足。它们之间的关系为R1R2R3。所以根据冲突解决规则中的规模排序,可知首先应该选择规则R3,系统执行才最有效。2.8解答:鸵鸟非是鸟会飞ISAISAISAISA动作动作ZIBCF主体对象ISA知更鸟CL-1HNISACLYDEISAISATIME占有巢STAISAISAISA春天到秋天2.9解答:(1)摇动作动作动作主体对象方式海浪战舰轻轻地4 (2)5 2.10解答:TB图书馆框架一般工业技术TDAB…TZ矿业工程书名工业技术…自动化技术、作者TP计算机技术TVISBN水利工程出版时间出版社2.11解答:在产生式系统中,随着产生式规则的数量的增加,系统设计者难以理解规则间的相互作用,究其原因,在于每条规则的自含性使得知识表示的力度过于细微。因此要提高产生式系统的可理解性,就应当按照软件工程的思想,通过对规则的适当划分,将规则组织诚易于管理的功能模块。由于框架系统具有组织成块知识的良好特性,因此将两者进行有机结合,可以为产生式系统的开发、调试和管理提供有益的帮助。基于框架的表示机制可以用作产生式语言和推理机制设计的一个重要构件。另外,框架可以直接用于表示规则,如果将每一个规则作为一个框架处理,一组用于解决特定问题的规则可组织成一类,且在这一类框架中表示这组规则的各种特性。2.12解答:略2.13解答:(1)题目描述可转换为如下问题(N阶汉诺塔问题)有编号为A、B、C的三个柱子和标识为1、2、…、N的尺寸依次从小到大的N个有中心孔的金片;初始状态下N个金片按1、2、…、N顺序堆放在A号柱子上,目标状态下N个金片以同样次序顺序堆放在B号柱子上,金片的搬移须遵守以下规则:每次只能搬一个金片,且较大金片不能压放在较小金片之上,可以借助于C针。(2)假设基本操作为move(x,A,C,B),表示将x个金片从A移到B上,中间可借助于C。当N=1时,则无需借助中间的C针,就可以直接实现将1个金片从A移到B上,这也是问题的最简操作,可表示为move-one(1,A,B);当N>1时,需要用中间的C针作辅助。其操作又可分为以下三步:将N-1个金片从A移到C上,中间可借助于B,转换为基本操作就是move(N-1,A,B,C);将1个金片直接从A移到B上,转换为基本操作就是move-one(1,A,B);将N-1个金片从C移到B上,中间可借助于A,转换为基本操作就是move(N-1,C,A,B);6 这样,就将问题的规模减小为N-1,依次递归求解就可以得到相应的结果。(3)设M(x)表示移动x个金片所需要的操作次数,则上述N阶汉诺塔问题可以表示成如下形式:M(1)=1M(N)=2M(N-1)+1N最后可以解得M(N)=2-1下面给出对梵塔问题给出产生式系统描述,并讨论N为任意时状态空间的规模。(1)综合数据库定义三元组:(A,B,C),其中A,B,C分别表示三根立柱,均为表,表的元素为1~N之间的整数,表示N个不同大小的盘子,数值小的数表示小盘子,数值大的数表示大盘子。表的第一个元素表示立柱最上面的柱子,其余类推。(2)规则集为了方便表示规则集,引入以下几个函数:first(L):取表的第一个元素,对于空表,first得到一个很大的大于N的数值。tail(L):取表除了第一个元素以外,其余元素组成的表。cons(x,L):将x加入到表L的最前面。规则集:r1:IF(A,B,C)and(first(A)β(先辈层)则中止这个MAX以下的搜索算法如下:doublealphabeta(intdepth,doublealpha,doublebeta,Positionp);{/*alpha是MAX的当前值beta是MIN的当前值,depth是在搜索树中的深度,p是所求结点的位置*/doublet;if(depth=0)returnevaluate(p);/*如果P是叶结点,算出P的值*/for(i=1;i<=w;i++){t=alphabeta(depth-1,beta,alpha,pi);if(t>alpha&&MAX){if(t>beta)returnt;/*直接返回*/elsealpha=t;}if(t~Alpine(x)∨Skier(x)∨Alpinist(x)(5)(x){Alpinist(x)→~Like(x,Rain)}=(x){~Alpinist(x)∨~Like(x,Rain)}=>~Alpinist(x)∨~Like(x,Rain)(6)(x){~Like(x,Snow)→~Skier(x)}=(x){Like(x,Snow)∨~Skier(x)}=>Like(x,Snow)∨~Skier(x)(7)(x){Like(Tony,x)→~Like(Mike,x)}=(x){~Like(Tony,x)∨~Like(Mike,x)}=>~Like(Tony,x)∨~Like(Mike,x)(8)(x){~Like(Tony,x)→Like(Mike,x)}=(x){Like(Tony,x)∨Like(Mike,x)}=>Like(Tony,x)∨Like(Mike,x)(9)Like(Tony,Snow)(10)Like(Tony,Rain)目标取反:~(x){Alpine(x)∧Alpinist(x)∧~Skier(x)}17 =(x){~Alpine(x)∨~Alpinist(x)∨Skier(x)}=>~Alpine(x)∨~Alpinist(x)∨Skier(x)经变量换名后,得到子句集:{Alpine(Tony),Alpine(Mike),Alpine(John),~Alpine(x1)∨Skier(x1)∨Alpinist(x1),~Alpinist(x2)∨~Like(x2,Rain),Like(x3,Snow)∨~Skier(x3),~Like(Tony,x4)∨~Like(Mike,x4),Like(Tony,x5)∨Like(Mike,x5),Like(Tony,Snow),Like(Tony,Rain),~Alpine(x)∨~Alpinist(x)∨Skier(x)}归结树如下:4.10答:基于规则的演绎推理可分为正向演绎推理、反向演绎推理和正反向混合演绎推理。在正向演绎推理中,作为F规则用的蕴含式对事实的总数据库进行操作运算,直至得到该目标公式的一个终止条件为止。事实目标公式在反向演绎推理中,作为B规则用的蕴含式对目标的总数据库进行操作运算,直至得到包含这些事实的终止条件为止。目标公式事实4.11答:第五章不精确推理5.1答:不精确推理是建立在非经典逻辑基础上的一种推理,是基于不确定性知识的推理。.....不精确推理就是从不确定性的初始事实(证据)出发,通过运用不确定性的知识,最终推出具有一定程度的不确定性却是合理或者近乎合理的结论的思维过程。在不精确推理中,知识和证据都具有不确定性,这为推理机的设计与实现增加了复杂度和难度。它除了必须解决推理方向、推理方法和控制策略等基本问题外,一般还需要解决不确定性的表示、不确定性的匹配和不确定性的更新算法等问题。18 5.2答:有明确定义但不一定出现的事件中包含的不确定性称为随机性,他不因人的主观意思变化,由事物本身的因果律决定。不精确推理就是表示和处理随机性的推理方法。5.3答:(1)当有一个证据E1时,根据Bayes公式,可得P(H)P(E|H)111P(H)P(E|H)P(H)P(E|H)P(H)P(E|H)P(H|E)=1|1212313|1=0.4*0.5/(0.4*0.5+0.3*0.3+0.3*0.5)=0.2/0.44=0.45同理可得:P(H|E)=0.09/0.44=0.20P(H|E)=0.15/0.44=0.34|2|3这说明,由于证据E1的出现,H1和H3成立的可能性有所增加,而H2成立的可能性有所下降。(2)当证据E1、E2同时出现时,根据多证据情况下的Bayes公式,可得P(E|H)P(E|H)P(H)|1211P(H1|E|E2)P(E||H1)P(E2|H1)P(H1)P(E1|H2)P(E2|H2)P(H2)P(E1|H3)P(E2|H3)P(H3)=0.14/(0.14+0.162+0.009)=0.59同理可得:P(H|EE)0.34P(H|EE)0.0642|23|2这说明,由于证据E1和E2的出现,H1和H2成立的可能性有不同程度的增加,而H3成立的可能性则有了较大幅度的下降。5.4答:①LSLS为规则的充分性量度,它反映E的出现对H的支持程度。当LS=1时,O(H|E)=O(H),说明E对H没有影响;当LS>1时,O(H|E)>O(H),说明E支持H,且LS越大,E对H的支持越充分,若LS为∞,则E为真时H就为真;当LS<1时,O(H|E)1时,O(H|E)>O(H),说明E支持H,且LN越大,E对H的支持越充分,若LN为∞,则E为真时H就为真;当LN<1时,O(H|E)1且LN<1情形2:LS<1且LN>1情形3:LS=LN=15.5答:5.6答:根据经验对一个事物或现象为真的相信程度称为可信度。19 规则的一般形式为:IFETHENH(CF(H,E))。其中,CF(H,E)是该规则的可信度,称为可信度因子或规则强度。CF(H,E)在[-1,1]上取值,它表示在已知证据E的情况下对假设H为真的支持程度。CF(H,E)定义如下:CF(H,E)=MB(H,E)-MD(H,E)。其中,MB(MeasureBelief)称为信任增长度,表示因证据E的出现而增加对假设H为真的信任增加程度[MB(H,E)>0P(H|E)>P(H)];MD(MeasureDisbelief)称为不信任增长度,表示因证据E的出现对假设H为假的信任减少的程度[MD(H,E)>0P(H|E)Y.safe_cabbage(X,_,_,X).safe_cabbage(F,_,X,Y):-opposite(X,Y),F<>Y.is_peaceful(F,W,G,C):-safe_goat(F,W,G,C),safe_cabbage(F,W,G,C).member(X,[X|_]).member(X,[_|T]):-member(X,T).transform(location(X,W,G,C),location(Y,W,G,C)):-opposite(X,Y).transform(location(X,X,G,C),location(Y,Y,G,C)):-opposite(X,Y).transform(location(X,W,X,C),location(Y,W,Y,C)):-opposite(X,Y).transform(location(X,W,G,X),location(Y,W,G,Y)):-opposite(X,Y).legal_states(location(F0,W0,G0,C0),location(F,W,G,C),States,X):-transform(location(F0,W0,G0,C0),location(F1,W1,G1,C1)),is_peaceful(F1,W1,G1,C1),not(member(location(F1,W1,G1,C1),States)),legal_states(location(F1,W1,G1,C1),location(F,W,G,C),[location(F1,W1,G1,C1)|States],X).legal_states(location(F,W,G,C),location(F,W,G,C),L,L).write_state(location(X,W,G,C),location(Y,W,G,C)):-!,write("Thefarmercrossestheriverhimself"),nl.write_state(location(X,X,G,C),location(Y,Y,G,C)):-!,write("Thefarmercrossestheriverwiththewolf"),nl.write_state(location(X,W,X,C),location(Y,W,Y,C)):-!,write("Thefarmercrossestheriverwiththegoat"),nl.write_state(location(X,W,G,X),location(Y,W,G,Y)):-!,write("Thefarmercrossestheriverwiththecabbage"),nl.write_actions([]).write_actions([H1,H2|T]):-write_state(H1,H2),write_actions([H2|T]).boat(location(F0,W0,G0,C0),location(F,W,G,C)):-legal_states(location(F0,W0,G0,C0),location(F,W,G,C),[location(F0,W0,G0,C0)],X),write_actions(X).3.某机器人需要在一间大商店里巡逻,由于商品每天都在流动,商店的平面图经常变化。一个典型的平面路径如图所示,在这个图中,点代表机器人的工作站,线表示点与点之间适于巡逻的通道。在机器人的内部数据库中,将通过一组事实表示图的路径,例如:joined_to(a,b);joined_to(b,c);joined_to(b,d);joined_to(d,c);joined_to(c,e)。机器人必须能够判断连接两个点的路线,例如,它应该识别出这个序列代表从e到b的一条路线。请写出一个程序,用来证明或者反证某一个给定序列是两个给定点之间的路线。26 3.答:理解问题已知一个序列和一对点,要求证明(或反证)这个序列是这两个点之间一条可能的路线。可以看出,这是一个证明型问题:即证明给出的序列是给定的两点之间的一条路线。那么什么是路线?结合图2,我们来看几个有用的例子。(1)bdc这个序列是a和c两点之间的路线吗?显然不是,因为它的起始点不对。(2)dce这个序列是d和b两点之间的路线吗?当然不是:它的终止点不对。(3)abe是a和e之间的路线吗?不是,因为在平面图上,b和e两个点之间不是直接相连的。可见,对于一个给定的点序列,要使它成为某对特定的点之间的路线,需要满足以下三个条件:·序列应该从点对的第一点开始。·序列应该以点对的第二点结束。·序列应该是连通的(连通序列)——也就是说,序列中任意两个连续的点在平面图中应该是相连的。对于给定的一个序列和一对端点,如果这三个条件都满足,那么可以确信这个序列是这两个点之间的路线。这三个条件是证明该假设的充分条件,同时也是必要条件。设计方案在Prolog中可以用一个表来表示一个点序列,例如,序列可以表示为[e,c,d,b];一对端点也可以用一个表表示。因此,route_between([e,c,d,b],[e,b])可以表示egcgdgb是e、b两点之间的路线。将是我们所关心的关系的一个实例。目标是什么?我们可以写成route_between(X,[Y,Z]),这里序列X和一对端点[Y,Z]是给定的,我们关心的是目标能否取得成功。为了给route_between写出一条规则,我们只需要将上面写下的三个条件转换成Prolog就可以了,如下所示:route_between(X,[Y,Z]):-begins_with(X,Y),ends_with(X,Z),is_connected(X).如果能够写出begins_with、ends_with和is_connected这三个谓词的检验定义,我们应该能够输入询问,如route_between([a,d,e,c,b],[a,b]),并得到一个是还是否的回答。执行方案(1)begins_with该关系的一个实例就是begins_with([b,a,d],b)。显然,这个关系要成立,端点与表头必须是完全相同的。用规则表示就是begins_with([X|Y],X)。可以用一些询问进行试验,例如begins_with([b,a,d,],b)等。(2)ends_withends_with([b,a,d],d)就是该关系的一个实例。与begins_with相比,这个关系就不是那27 么容易定义了,因为表的最后一个元素看起来并不像第一个元素那样特别。不过,你可以想出一个表,使得它与表[b,a,d]相关,又是从它的最后一个元素开始的吗?将原表倒置一下,变成[d,a,b]如何?所以我们可以这样描述ends_with:表X以点Y结束,如果X的逆序从点Y开始。表的倒置,即求一个表的逆序表是关于表的一个最常见的问题,这里我们不做具体讨论,其完整程序如图4所示。现在,我们就可以用reverse关系和刚才已经定义好的begins_with关系,将上面的描述用Prolog表示成:ends_with(X,Y):-reverse(X,Z),begins_with(Z,Y).可以用一些合适的询问来试验一下。domainss_list=symbol*predicatesappend(s_list,s_list,s_list)reverse(s_list,s_list)clausesappend([],L,L).append([H|T],L2,[H|Tn]):-append(T,L2,Tn).reverse([],[]).reverse([H|T],L):-reverse(T,L1),append(L1,[H],L).(3)is_connected给这个关系举出几个例子并不困难,例如,通过图3我们可以看出,表[c,d,b,a]是一个连通序列,而[b,d,c,e,a]不是。用一般序列的表示方法,即[X|Y]来表示可以吗?为了使得[X|Y]是一个连通序列,对于X有什么要求呢?显然,X必须与序列中下一个出现的点在平面图中是直接相连的;因此要把这个“下一个”点展开。所以我们应该用[X1,X2|Y]来表示一般序列,而不是[X|Y];如果X1与X2相连,并且[X2|Y]是一个连通序列,那么这就是一个连通的序列。(注意这里的第二个条件,为什么只问Y是否连通是不够的呢?)因此,我们写出如下规则is_connected([X1,X2|Y]):-linked_to(X1,X2),is_connected([X2|Y]).这里我们已经特意用linked_to替代joined_to了,为什么呢?举例来说,前面给出的joined_to事实声明a是连到b的,但是没有事实对应于b连到a。所以需要使用关系linked_to,以使Prolog能够做出明显的推论。我们用下面两条规则来定义:linked_to(X,Y):-joined_to(X,Y).linked_to(X,Y):-joined_to(Y,X).然而,我们还没有完成is_connected的定义。上面的规则是递归的,所以我们需要一个特殊的、非递归的情况。[X1,X2|Y]这个模式是包含两个或两个以上成员的表,一个只有一个点的表当然是“连通的”,所以我们加上is_connected([X]),这个语句提供了一个“直接的答案”。现在程序已经完成了,接下来就是检验我们的计算机现在确实能够解决机器人巡逻问题了,用一些询问,如route_between([d,b,c,e],[d,e])试验一下。机器人巡逻问题的完整程序如图5所示,该程序在TurboProlog2.0环境下运行通过。28 domains/*领域段,说明程序要用到的数据类型*/s_list=symbol*predicates/*谓词段,说明程序要用到的谓词名和参数*/append(s_list,s_list,s_list)reverse(s_list,s_list)joined_to(symbol,symbol)linked_to(symbol,symbol)begins_with(s_list,symbol)ends_with(s_list,symbol)is_connected(s_list)route_between(s_list,s_list)clauses/*子句段,说明程序要用到的事实和规则*/append([],L,L).append([H|T],L2,[H|Tn]):-append(T,L2,Tn).reverse([],[]).reverse([H|T],L):-reverse(T,L1),append(L1,[H],L).joined_to(a,b).joined_to(b,a).joined_to(b,c).joined_to(c,b).joined_to(b,d).joined_to(d,b).joined_to(d,c).joined_to(c,d).joined_to(c,e).joined_to(e,c).linked_to(X,Y):-joined_to(X,Y).linked_to(X,Y):-joined_to(Y,X).begins_with([X|_],X).ends_with(X,Y):-reverse(X,Z),begins_with(Z,Y).is_connected([_]).is_connected([X1,X2|Y]):-linked_to(X1,X2),is_connected([X2|Y]).route_between(X,[Y,Z]):-begins_with(X,Y),ends_with(X,Z),is_connected(X).第七章专家系统7.1.答:(1)专家系统的定义费根鲍姆(E.A.Feigenbaum):“专家系统是一种智能的计算机程序,它运用知识和推理步骤来解决只有专家才能解决的复杂问题”专家系统是基于知识的系统,用于在某种特定的领域中运用领域专家多年积累的经验和专门知识,求解需要专家才能解决的困难问题保存和大面积推广各种专家的宝贵知识博采众长29 比人类专家更可靠,更灵活(2)专家系统的特点①具有专家水平的专门知识专家系统中的知识按其在问题求解中的作用可分为三个层次:数据级、知识库级和控制级数据级知识(动态数据):具体问题所提供的初始事实及在问题求解过程中所产生的中间结论、最终结论数据级知识通常存放于数据库中知识库级知识:专家的知识,这一类知识是构成专家系统的基础一个系统性能高低取决于这种知识质量和数量控制级知识(元知识):关于如何运用前两种知识的知识在问题求解中的搜索策略、推理方法②能进行有效的推理推理机构——能根据用户提供的已知事实,通过运用知识库中的知识,进行有效的推理,以实现问题的求解。专家系统的核心是知识库和推理机③具有启发性除能利用大量专业知识外,还必须利用经验判断知识来对求解问题作出多个假设(依据某些条件选定一个假设,使推理继续进行)④能根据不确定(不精确)的知识进行推理综合利用模糊的信息和知识进行推理,得出结论⑤具有灵活性知识库与推理机相互独立,使系统易于扩充,具有较大的灵活性⑥具有透明性一般有解释机构,所以具有较好的透明性解释机构向用户解释推理过程,回答“Why?”、“How?”等问题⑦具有交互性一般都为交互式系统,具有较好的人机界面一方面它需要与领域专家或知识工程师进行对话以获取知识;另一方面它也需要不断地从用户处获得所需的已知事实并回答询问。7.2.答:专家系统的一般结构人机接口、推理机、知识库、动态数据库、知识获取机构、解释机构用户领域专家知识工程师人机接口专家解释机构知识获取机构系统核心数据库推理机知识库知识库:主要用来存放领域专家提供的专门知识(1)知识表达方法的选择(最多的三种表示方法是产生式规则、框架和语义网络)30 ①充分表示领域知识②能充分、有效地进行推理③便于对知识的组织、维护与管理④便于理解与实现(2)知识库管理冗余和矛盾一致性和完整性安全性推理机模拟领域专家的思维过程,控制并执行对问题的求解能根据当前已知的事实,利用知识库中的知识,按一定的推理方法和控制策略进行推理,直到得出相应的结论为止推理机包括推理方法和控制策略两部分推理方法有精确推理和不精确推理(已在推理章节介绍)控制策略主要指推理方向控制及推理规则选择策略推理有正向推理、反向推理和正反向混合推理推理策略一般还与搜索策略有关(已在推理章节介绍)推理机性能/构造与知识的表示方法有关,但与知识的内容无关保证推理机与知识库的独立性,提高灵活性知识获取机构“瓶颈”,是建造和设计专家系统的关键基本任务是为专家系统获取知识,建立起健全、完善、有效的知识库,以满足求解领域问题的需要要对知识进行一致性、完整性检测人机接口专家系统与领域专家、知识工程师、一般用户间进行交互的界面,由一组程序及相应的硬件组成,用于完成输入输出工作更新、完善、扩充知识库;推理过程中人机交互;结束时显示结果内部表示形式与外部表示形式的转换数据库又称“黑板”、“综合数据库”或“动态数据库”,主要用于存放用户提供的初始事实、问题描述及系统运行过程中得到的中间结果、最终结果等信息数据库是推理机不可缺少的工作场地,同时由于它可记录推理过程中的各种有关信息,又为解释机构提供了回答用户咨询的依据(需相应的数据库管理程序)解释机构:回答用户提出的问题,解释系统的推理过程,使系统对用户透明7.3答:(1)传统程序是依据某一确定的算法和数据结构来求解某一确定的问题,而专家系统是依据知识和推理来求解问题,这是专家系统与传统程序的最大区别。传统程序=数据结构+算法专家系统=知识+推理(2)传统程序把关于问题求解的知识隐含于程序中,而专家系统则将知识与运用知识的过程即推理机分离。(使专家系统具有更大的灵活性,使系统易于修改)(3)从处理对象来看,传统程序主要是面向数值计算和数据处理,而专家系统则面向符号处理。传统程序处理的数据多是精确的,对数据的检索是基于模式的布尔匹配,而专家系统处理的数据和知识大多是不精确的、模糊的,知识的模式匹配也多是不精确的。(4)传统程序一般不具有解释功能,而专家系统一般具有解释机构,可对自己的行为作出解31 释。(5)传统程序因为是根据算法来求解问题,所以每次都能产生正确的答案,而专家系统则像人类专家那样工作,通常产生正确的答案,但有时也会产生错误的答案(这也是专家系统存在的问题之一)。专家系统有能力从错误中吸取教训,改进对某一工作的问题求解能力。(6)从系统的体系结构来看,传统程序与专家系统具有不同的结构。7.4答:可行性分析:威特曼(Watermam)从三方面研究如何选择适合专家系统开发的问题(1)什么情况下开发专家系统是可能的?(满足!)①问题的求解主要依靠经验性知识,而不需要大量运用常识性知识②存在真正的领域专家,这也是开发专家系统最重要的要求之一专家必须能够描述和解释他们用于解决领域问题的方法③一般某领域中有多个专家,他们应该对领域答案的选择和精确度有基本一致的看法④任务易,有明确的开发目标,且任务能被很好地理解(2)什么情况下开发专家系统是合理的?(之一!)①问题的求解能带来较高的经济效益②人类专家奇缺,但又十分需要,且十分昂贵③人类专家经验不断丢失④危险场合需要专门知识(3)什么情况下开发专家系统是合适的?(特征!)①本质——问题本质上必须能很自然地通过符号操作和符号结构来进行求解,且问题求解时需要使用启发式知识,需要使用经验规则才能得到答案②复杂性——问题不是太容易且较为重要③范围——问题需要有适当的范围。选择适当的范围是专家系统的关键,一般有两个原则:一是所选任务的大小可驾驭;二是任务要有实用价值。7.5答:专家系统的设计原则(1)专门任务领域大小(2)专家合作反复磋商,团结协作(3)原型设计从“最小系统”到“扩充式”开发(4)用户参与充实、完善知识库(5)辅助工具提高设计效率(6)知识库与推理机分离体现特征,灵活专家系统的开发步骤知识工程比软件工程更强调渐进性、扩充性32 重新描述重新设计重新完善问题识别概念化形式化实现测试需概结规求念构则(1)问题识别阶段——知识工程师和专家确定问题的重要特点,抓住问题各主要方面的特征①确定人员和任务②问题识别:描述问题的特征及相应的知识结构,明确问题的类型和范围③确定资源:确定知识源、时间、计算设备以及经费等资源④确定目标:确定问题求解的目标(2)概念化阶段——主要任务是揭示描述问题所需的关键概念、关系和控制机制,子任务、策略和有关问题求解的约束①什么类型的数据有用,数据之间的关系如何?②问题求解时包括哪些过程,这些过程中有哪些约束?③问题是如何划分成子问题的?④信息流是什么?哪些信息是由用户提供的,哪些信息是应当导出的?⑤问题求解的策略是什么?(3)形式化阶段——把概念化阶段概括出来的关键概念、子问题和信息流特征形式化地表示出来(究竟采用什么形式,要根据问题的性质选择适当的专家系统构造工具或适当的系统框架)三个主要的因素是:假设空间基本的过程模型数据形式化阶段假设空间①把概念描述成结构化的对象,还是处理成基本的实体?②概念之间的因果关系或时空关系是否重要,是否应当显式地表示出来?③假设空间是否有限?④假设空间是由预先确定的类型组成的,还是由某种过程生成的?⑤是否应考虑假设的层次性?⑥是否有与最终假设和中间假设相关的不确定性或其它的判定性因素?⑦是否考虑不同的抽象级别?形式化阶段基本的过程模型找到可以用于产生解答的基本过程模型是形式化知识的重要一步过程模型包括行为的和数学的模型(如果专家使用一个简单的行为模型,对它进行分析,就能产生很多重要的概念和关系)33 (数学模型可以提供附加的问题求解信息,或用于检查知识库中因果关系的一致性)形式化阶段数据的性质①数据是不足的、充足的还是冗余的?②数据是否有不确定性?③对数据的解释是否依赖于出现的次序?④获取数据的代价是多少?⑤数据是如何得到的?⑥数据的可靠性和精确性如何?⑦数据是一致的和完整的吗?(4)实现阶段把形式化知识变成计算机的软体,即要实现知识库、推理机、人机接口和解释系统(知识的一致性和相容性)推理机应能模拟领域专家求解问题的思维过程和控制策略必须很快地实现(实现原型系统的目的之一是检查开发早期阶段的设计是否有效)(5)测试阶段通过运行实例评价原型系统以及用于实现它的表达形式,从而发现知识库和推理机制的缺陷性能不佳的因素:①输入输出特性,即数据获取与结论表示方面存在缺陷例如,提问难于理解、含义模糊,使得存在错误或不充分的数据进入系统;结论过多或者太少,没有适当地组织和排序,或者详细的程度不适当②推理规则有错误、不一致或不完备③控制策略问题,不是按专家采用的“自然顺序”解决问题测试的主要内容:①可靠性——通过实例的求解,检查系统所得出的结论是否与已知结论一致②知识的一致性——向知识库输入一些不一致、冗余等有缺陷的知识,检查是否可检测出来检查是否会给出不应给出的答案检测获取知识的正确性(如有某些自动获取知识功能)③运行效率——知识查询及推理方面的运行效率,找出薄弱环节及求解方法与策略方面的问题④解释能力——一是检测能回答哪些问题,是否达到了要求;二是检测回答问题的质量(说服力)⑤人机交互的便利性7.6答:专家系统种类解决的问题解释根据感知数据推理情况描述诊断根据观察结果推断系统是否有故障预测推导给定情况可能产生的后果设计根据给定要求进行相应的设计规划设计动作控制控制整个系统的行为34 监督比较观察结果和期望结果修理执行计划来实现规定的补救措施教学诊断、调整、修改学生行为调试建议故障的补救措施(1)解释型专家系统能根据感知数据,经过分析、推理,从而给出相应解释。(必须能处理不完全、甚至受到干扰的信息,给出一致且正确的解释)代表性:DENDRAL(化学结构说明)、PROSPECTOR(地质解释)等(2)诊断型专家系统能根据取得的现象、数据或事实推断出系统是否有故障,并能找出产生故障的原因,给出排除故障的方案(目前开发、应用得最多的一类)代表性:PUFF(肺功能诊断系统)、PIP(肾脏病诊断系统)、DART(计算机硬件故障诊断系统)等(3)预测型专家系统能根据过去和现在信息(数据和经验)来推断可能发生和出现的情况(天气预报、市场预测、人口预测等)(4)设计型专家系统能根据给定要求进行相应的设计(工程设计、电路设计、服装设计)代表性:XCON(计算机系统配置系统)、KBVLSI(VLSI电路设计专家系统)等(5)规划型专家系统能按给定目标拟定总体规划、行动计划、运筹优化等(机器人动作控制、军事规划、城市规划等)代表性:NOAH(机器人规划系统)、SECS(帮助化学家制定有机合成规划的专家系统)、TATR(帮助空军制订攻击敌方机场计划的专家系统)等(6)控制型专家系统能根据具体情况,控制整个系统的行为代表性:YES/MVS(帮助监控和控制MVS操作系统)(7)监督型专家系统能完成实时的监测任务,并根据监测到的现象作出相应的分析和处理代表性:REACTOR(帮助操作人员检测和处理核反应堆事故)(8)修理型专家系统能根据故障的特点制订纠错方案,并能实施该方案排除故障,当制订的方案失效或部分失效时,能及时采取相应的补救措施(9)教学型专家系统能根据学生学习过程中所产生的问题进行分析、评价、找出错误原因,有针对性地确定教学内容或采取其它有效的教学手段代表性:GUIDON(讲授有关细菌感染性疾病方面的医学知识)(10)调试型专家系统能根据相应的标准检测被测试对象存在的错误,并能从多种纠错方案中选出适用于当前情况的最佳方案,排除错误专家系统的应用领域已扩展到数学、物理、化学、医学、地质、气象、农业、法律、教育、交通运输、机械、艺术以及计算机科学本身,甚至渗透到政治、经济、军事等重大决策部门,产生了巨大的社会效益和经济效益,同时也促进了人工智能基本理论和基本技术的发35 展。7.7答:(1)正向推理:见教材P206图7.7(2)反向推理:见教材P212图7.127.8答:(1)知识获取的任务基本任务:为专家系统获取知识,建立起健全、完善、有效的知识库,以满足求解领域问题需要①抽取知识识别、理解、筛选、归纳等,及自学习②知识的转换第一步:从专家及文献资料处抽取的知识转换为某种知识表示模式,如产生式规则、框架等(知识工程师完成)第二步:该模式表示的知识转换为系统可直接利用的内部形式。(输入及编译实现)③知识的输入知识编辑器④知识的检测不一致、不完整等⑵知识获取的模式①非自动知识获取(人工移植)知识工程师知识编辑器②自动知识获取系统具有获取知识的能力,它不仅可以直接与领域专家对话,从专家提供的原始信息中学习到专家系统所需的知识,而且还能从系统自身的运行实践中总结、归纳出新的知识,发现知识中可能存在的错误,不断自我完善,建立起性能优良、知识完善的知识库具有识别语音、文字、图像的能力具有理解、分析、归纳的能力具有从运行实践中学习的能力③半自动知识获取7.9答:正确性(1)系统设计的正确性①系统设计思想的正确性如目标、原则等②系统设计方法的正确性如知识表达方法、知识推理方法、控制策略、解释方法等③设计开发工具的正确性如正确使用和正确维护(2)系统测试的正确性①测试目的、方法、条件的正确性②测试结果、数据、记录的正确性(3)系统运行的正确性①推理结论、求解结果、咨询建议的正确性②推理解释及可信度估算的正确性③知识库知识的正确性语法、语义和语用及专业内容有用性(1)推理结论、求解结果、咨询建议的有用性(2)系统的知识水平、可用范围、易扩充性、易更新性等36 (3)问题的求解能力(解题速度、推理效率),可能场合和环境(4)人机交互的友好性(5)运行可靠性、易维护性、可移植性(6)系统的经济性(软硬件投资、运行维护费用、设计开发费用和系统运行取得的直接或间接经济效益)7.10答:(1)四种主要的类型:①用于开发专家系统的程序设计语言②骨架系统③通用型知识表达语言④专家系统开发环境(2)专家系统开发环境(工具包)AGE是斯坦福大学研制的一个专家系统开发环境。AGE是典型的模块组合式开发工具,为用户提供了一个通用的专家系统结构框架,并将该框架分解为许多在功能和结构上较为独立的的组件部件,这些组件已预先编制成标准模块存在系统中。AGE采用了黑板模型来构造专家系统结构框架。可通过两条途径构造自己的专家系统:①用户使用AGE现有的各种组件作为构造材料,很方便地来组合设计自己所需的系统。②用户通过AGE的工具界面,定义和设计各种所需的组成部件,以构造自己的专家系统。应用AGE已经开发了一些专家系统,主要用于医疗诊断、密码翻译、军事科学等方面。7.11答:EMYCIN是由MYCIN系统抽去原有的医学领域知识,保留骨架而形成的系统(产生式规则表达知识、目标驱动的反向推理控制策略)。EMYCIN具有MYCIN的全部功能:①解释程序——可以向用户解释推理过程。②知识编辑程序及类英语的简化会话语言——提供一开发知识库的环境,使得开发者可以使用比LISP更接近自然语言的规则语言来表示知识。③知识库管理和维护手段——所提供的开发知识库的环境还可以在进行知识编辑及输入时进行语法、一致性、是否矛盾和包含等检查。④跟踪和调试功能EMYCIN开发的一些专家系统(适合开发各种领域咨询、诊断型专家系统)。SACON帮助决定解决PIANT/CDP结构分析问题LIGHO的策略预测麦田是否通过解释油井将受黑鳞翅目EMYCIN钻探数据来鉴幼虫之害定地下岩层通过解释呼吸分析并确定病测试数据来诊人血液凝固机断肺病制中有无问题37 第八章机器学习8.2答:(1)学习是一项复杂的智能活动,学习过程与推理过程是紧密相连的学习中所用的推理越多,系统的能力越强(2)机器学习是一门研究机器获取新知识和新技能,并识别现有知识的学问“机器”——计算机(电子,以后还可能是中子计算机、光子计算机或神经计算机等)8.3答:机器学习系统的结构及基本功能环境选例监督学习元知识库执行元当监督环节为示教人时,为示教式学习系统;当监督环节为监督器时,为自学式学习系统。①知识库存储(记忆)、积累知识·长期记忆(LTM)先验知识背景如事物的基本概念和定义、定律和公理,博弈的基本规则等·中期记忆(MTM)环境事物的各种具体知识·短期记忆(STM)环境变化的信息和数据事实库或“黑板②学习元学习系统的核心环节·采集环境信息息选例环节或直接采集·接受监督指导监督环节的示教、指导信息或评价准则·进行学习推理获得有关问题的解答和结论·修改知识库将推理结果输入知识库,对知识增删改③执行元识别、论证、决策、判定模式分类器、专家咨询解释系统、智能控制机构、机械手/人等如执行元行动结果直接引起环境的变化“在线”学习系统机器人规划、生产过程控制、机器博弈等④监督环节人:示教者;监督器:评价准则或检验标准·工作执行效果评价——接受来自执行元环节的反馈信息,对系统的工作执行效果进行评价和检验·制定评价标准——接受来自环境变化的信息,制定和修订评价标准和检验标准·监督学习环节——根据评价和检验的结果,对学习环节进行示教、训练或指导·控制选例环节——根据环境变化信息及工作执行效果的反馈,控制选例环节,选取其它事例或样本⑤选例环节作用是从环境中选取有典型意义的事例或样本,作为系统的训练集或学习对象。如挑选38 典型病历,以便提高学习效率,加速学习过程。选例环节可以由人或机器来实现⑥环境系统获取知识和信息的来源,执行的对象和人物等。如,医疗专家系统的病员、病历档案、医生、诊断书等;模式识别系统的文字、图象、物景;博弈系统的对手、棋局;智能控制系统的被控对象和生产过程等。8.4答:(1).机械学习模型机械学习——一种最简单的机器学习方法机械学习是最基本的学习过程,任何学习系统都必须记住它们获取的知识机械学习系统:知识的获取是以较为稳定和直接的方式进行的,不需要系统进行过多的加工机械学习就是记忆,即把新的知识存储起来,供需要时检索调用,而不需要计算和推理归纳过程可以简化成推导过程直接使用求根公式计算一个一元二次方程的根自学(2).机械学习的主要问题①存储组织信息②环境的稳定性与存储信息的适用性问题。密切监视外界环境的变化,不断地更换所保存的信息;核对。③存储与计算之间的权衡。预估算;“选择忘却”技术8.5答:(1)示例学习:病态细胞的分类识别例如图,•正例——三个病细胞(P1,P2,P3),•反例——二个正常细胞(N1,N2);•每个细胞由二个细胞体组成*细胞体表示为三元组:(核数、尾数、染色状),*P1:{(2,2,深)(1,1,浅)}。•学习任务——从例子集中归纳出有病状X的细胞A.概念描述的搜索和获取概念描述39 •假设不必给每个特性(属性)都指明应取值:*没有给出值的特性(以?指示)——对于该概念的描述无关紧要;*病细胞假设(a):{(2,?,?)(?,1,深)},一个细胞体有二个胞核;另一个有一个尾巴,且染色是深的。•病细胞假设空间的半序图(图6.5)•假设之间的关系弧指示泛化/特化关系,•假设空间上的一个泛化/特化关系(图6.4),*假设(b)不考虑细胞体是否有尾巴,比假设(a)复盖更多的例子;*假设(b)比假设(a)泛化;*假设(a)比假设(b)特化。•底层假设——最特化(具体)的概念描述:*所有特性都给定特别值,对应于例子空间中的一个例子。•顶层假设——最泛化的概念描述:*不指定任何具体的特性值,*表示为{(???),(???)}。•假设空间中的搜索方式•特化搜索——从最泛化的假设(概念描述)出发,每次取用一个新的例子,就产生一些特化的描述,直到将初始最泛化的假设特化为解描述。•泛化搜索——从最特化的假设(相应于例子空间中的一个例子)开始,每次取用一个新的例子时,就产生一些泛化的描述,直到产生出足够泛化的解描述。•大多数示例学习方法都采用这二种方法或这二个方法的结合。B.逐步泛化的学习策略•采用宽度优先、自底向上的搜索方式:•将第一个正例(P1)作为初始假设(H1)——极端特化的假设;•正例(P2)用于指导系统生成泛化的假设(H2和H3):*多个泛化的假设——不同的映射会导致不同的假设,-假设H1中包含了二个对象(细胞体);*采用保守原则——最低限度的泛化,:-新的假设刚好覆盖现有的假设/例子。•反例(N1)用来剪裁过于泛化的假设:H3是过于泛化的假设,因为其蕴涵了反例N1。40 基本策略:•遇见正例就泛化某些假设以保证假设的完全描述性,•遇见反例则删去某些假设以保证假设的一致描述性,•直至得到一个既完全又一致的解描述(假设)为止。•这个解描述作为满足给定例子集的概念定义——学习系统获得的新知识。C.逐步特化的学习策略•采用宽度优先、自顶向下的搜索方式(与泛化策略相反):•新例子的加入会导致新假设的增加和已存在假设的删除(与泛化策略类似)。•正例和反例所起的作用与泛化策略相反:•反例——生成一些特化假设;*采用保守的原则——最低限度的特化:-新的假设在覆盖已有正例的同时只是刚好能排斥反例;•正例——剪裁过于特化的假设。(2)类比学习:“肖锋象部消防车”中,考虑肖锋与消防车之间的相似关于肖锋(目标框架)与消防车(源框架)的框架为:肖锋是一个(ISA)人性别男活动级音量进取心中等41 消防车是一辆(ISA)车辆颜色红活动级快音量极高燃料效率中等梯高异或(长,短)进取心是一种(ISA)个人品德现在目的是用消防车的信息来扩充肖锋的内容启发式规则:①选择那些用极值填写的槽②选择那些已知为重要的槽③选择那些与源框架没有密切关系的槽④选择那些填充值与源框架没有密切关系的槽⑤使用源框架中的一切槽这组规则用来寻找一种好的传递。对上述例题,将有下面一些结果:①活动级槽和音量级槽填有极值,所以它们首先入选②如果它们不存在,那么根据第②规则选择那些标记为特别重要的槽本例无此情况③下一规则将选择梯高槽,因为该槽不出现在其它类型的车辆中④下一规则将选颜色槽,因其它车辆都不是红色⑤最后一条规则,若用它,则消防车的所有槽均为可能的相似8.6-8.8答:略第九章人工神经网络9.1答:(1)误差纠正学习;wkj=ek(n)xj(n);yk(n)为输入xk(n)时,神经元k在n时刻的实际输出,dk(n)表示应有的输出(可由训练样本给出);其中η为学习步长,这就是通常所说的误差纠正学习规则(或称delta学习规则)。(2)Hebb学习;wkj(n)=F(yk(n),xj(n));当某一突触(连接)两端的神经元同步激活(同为激活或同为抑制)时,该连接的强度应为增强,反之应减弱;由于Δwkj与yk(n),xj(n)的相关成比例,有时称为相关学习规则。(3)竞争(Competitive)学习;xiwji,若神经元j竞争获胜wji若神经元j竞争失败;在竞争学习时,网络各输出单元互相0,竞争,最后达到只有一个最强者激活,最常见的一种情况是输出神经元之间有侧向抑制性连接,这样原来输出单元中如有某一单元较强,则它将获胜并抑制其它单元,最后只有此强者处于激活状态。9.2答:略9.3答:B-P算法的学习过程如下:(1)选择一组训练样例,每一个样例由输入信息和期望的输出结果两部分组成。(2)从训练样例集中取一样例,把输入信息输入到网络中。42 (3)分别计算经神经元处理后的各层节点的输出。(4)计算网络的实际输出和期望输出的误差。(5)从输出层反向计算到第一个隐层,并按照某种能使误差向减小方向发展的原则,调整网络中各神经元的连接权值。(6)对训练样例集中的每一个样例重复(3)—(5)的步骤,直到对整个训练样例集的误差达到要求时为止。文件头:#include#include#include#include"UTLab.h"//BP神经网络#definen17//输入节点数#definen211//中间层节点个数#definen35//输出节点数#definem400//学习次数voidinitialization(){}floatbpnet(floattension,floatinthick,floatoutthick,floatmeng,floattan,floatping,floattu){floatin1[n1];floatout1[n2];floatout2[n3];floatw1[n2][n1];floatw2[n3][n2];floata1[n2];43 floata2[n3];floatt[n3];floatdf1[n2];floatdf2[n3];floats2[n3];floats1[n2];floatw[n2][n3];floatz[n2][n3];floata=0.5;inti=0;intj=0;intk=0;intn=0;in1[1]=tension;in1[2]=inthick;in1[3]=outthick;in1[4]=meng;in1[5]=tan;in1[6]=ping;in1[7]=tu;initialization();for(n=1;n<=m;k++){for(i=1;i<=n2;i++){for(j=1;j<=n1;j++){a1[j]=a1[j]+w1[i][j]*in1[j];out1[j]=sigmoid(a1[j]);}}for(i=1;i<=n3;i++){for(j=1;j<=n2;j++){a2[j]=a2[j]+w2[i][j]文件尾:*in1[j];out2[j]=a2[j];}}for(i=1;i<=n3;i++){//计算敏感度,更新权值df2[i]=1;s2[i]=-2*(t[i]-out2[i]);for(j=1;j<=n2;j++){w2[i][j]=w2[i][j]+a*out1[j];}}for(i=1;i<=n3;i++){44 for(j=1;j<=n2;j++){w[j][i]=w2[i][j];}}for(j=1;j<=n2;j++){df1[j]=(1-out1[j])*out1[j];s1[j]=0;for(i=1;i<=n3;i++){z[j][i]=df1[j]*w[j][i];s1[j]=s1[j]+z[j][i]*s2[i];}}for(j=1;j<=n2;j++){for(k=1;k<=n1;k++){w1[j][k]=w1[j][k]+a*s1[j]*in1[k];}}}returnout2[n3];}voidmain(){}9.4答:略9.5答:Hopfield网络是一个单层回归自联想记忆网络。将记忆用能量函数(Lyapunov)来表示,并且在每个处理单元(神经元)中引入了异步工作方式。显著特点就是:许多已有的结构,不管是信息处理单元还是信息存储单元,都是并行工作的。但从信息处理的角度看,虽支持并行分布信息存储,但是信息处理并不是真的以并行方式进行。优点是:通常的神经网络要求在所有的时间里,每一个处理单元都要有整个网络的全局信息,而Hopfield网络就减少了这种要求,Hopfield联想记忆模型迭代过程为不断地从一顶角转向具有更小能量的另一顶角,直至稳定于具有最小能量的一个顶角与之相对应,连续的Hopfield联想记忆模型迭代过程,从一个起始状态到另一个全局极小值(预存状态)来穿越超空间当所有的神经元都被访问到,并且没有神经元再改变状态时,就认为网络已经收敛。9.6答:45 用pascal写的hopfield神经网络解决TSP问题的代码:initializedist[max_city,max_city]:=0.0;FORc1:="A"TOmax_cityDOFORi:=1TOmax_positionDOu[c1,i]:=u00+(((2*random-1.0)/10.0)*u0);clrscr;writeln("TSP[c]1987KnowledgeGardenInc.");writeln("473AMaldenBridgeRd");writeln("Nassau,NY12123");writeln;writeln("Presstobegin-Pressagaintostopiterating.");read(kbd,ch);END;(*initialize*)BEGINinitialize;iterate;END.9.7答:Kohonen网络自组织映射算法的实现过程如下:①定义一个输入向量与神经元接收到反馈信息加权值之间的相似性度量②选定输入向量与输出神经元所有连结权之间的相似度度量最大的为获胜输出单元③更新获胜神经元的权值和获胜神经元周围的邻域中所有单元的权值④不断自动地调整连接权最后由稳定的优胜神经元产生输出第十章人工智能游戏10.1答:电脑游戏中的人工智能是人类技能的一个人工版本,在游戏中我们把人工智能解释为非玩家角色(NPC)也称为机器智能。当前人工智能游戏研发还处于初级阶段。过去几年所用到的一些常用的技术,如脚本行为和A*路径搜索算法已经和二维图像技术相比了,一些公司46 开始尝试从人工智能领域发展出更高级的技术(如决策树和强化学习)。许多游戏研发人员认为仿生机器人是处理人工智能NPC最合理的手段,仿生机器人本质上是生活在虚拟环境下的综合创造物,可以通过多种学习算法来适应环境。10.2答:略47'