文档库 最新最全的文档下载
当前位置:文档库 › 人工智能课程报告

人工智能课程报告

人工智能课程报告
人工智能课程报告

武汉轻工大学数计学院《人工智能》课设报告

名称:人工智能算法的应用

班级:信计1201

姓名:张相军

学号:1205130122

指导教师:曾山

学年学期:2015 ~ 2016 学年第一学期

2015 年12 月11 日

目录

1知识简介 (3)

2发展概况 (4)

3研究与应用 (5)

4遗传算法的研究 (6)

5实验结果 (7)

6课设总结 (8)

7附录文件 (9)

1知识简介

人工智能概述

人工智能(Artificial Intelligence,简称AI),是相对自然人的天然智能而言,即用人工的方法和技术,模仿、延伸和扩展人的智能,实现某些“机器思维”。

作为计算机学科的一个重要分支,是由 McCarthy 于1956 年在 Dartmouth 学会上正式提出,在当前被人们称为世界三大尖端技术之一。美国斯坦福大学著名的人工智能研究中心尼尔逊(Nilson)教授这样定义人工智能“人工智能是关于知识的学科——怎样表示知识以及怎样获得知识并使用知识的学科”,另一名著名的美国大学 MIT的 Winston 教授认为“人工智能就是研究如何使计算机去做过去只有人才能的智能的工作”。除此之外,还有很多关于人工智能的定义,今尚未统一,但这些说法均反映了人工智能学科的基本思想和基本容,由此可以将人工智能概括为研究人类智能活动的规律,构造具有一定智能行为的人工系统。

2发展概况

人工智能 ( Artificial Intelligence)自1956 年正式问世以来的五十年间已经取得了长足的进展, 由于其应用的极其广泛性及存在的巨大研究开发潜力, 吸引了越来越多的科技工作者投入人工智能的研究中去。尤其是八十年代以来出现了世界范围的开发新技术的高潮, 许多发达国家的高科技计划的重要内容是计算机技术, 而尤以人工智能为其基本重要组成部分。人工智能成为国际公认的当代高技术的核心部分之一。

人工智能的发展历史

自古以来,人类就力图根据自己的认识水平和当时的技术条件,企图用机器来代替人的部分脑力劳动,以提高征服自然的能力。公元 850 年,古希腊就有制造机器人帮助人们劳动的传说。在我国公元前900多年,也有歌舞机器人传说的记载, 这说明古代人就有人工智能的幻想。随着历史的发展, 到十二世纪末至十三世纪初, 西班牙的神学家和逻辑学家 Romen Luee 试图制造能解决各种问题的通用逻辑机。十七世纪法国物理学家和数学家 B·Pascal制成了世界第一台会演算的机械加法器并获得实际应用。随后德国数学家和哲学家 G·W·Leibniz 在这台加法器的基础上发展并制成了进行全部四则运算的计算器。他还提出了逻辑机的设计思想, 即通过符号体系, 对对象的特征进行推理, 这种“万能符号”和“推理计算”的思想是现代化“思考”机器的萌芽, 因而他被后人誉为数理逻辑的第一个奠基人。接着, 英国数学家、逻辑学家 Boole 初步实现了LeibniZ 关于思维符号化和数学化的思想,提出了一种崭新的代数系统, 这就是后来在计算机上广泛应用的布尔代数。十九世纪末英国数学和力学家C · Babbage 致力于差分机和分析机的研究, 虽因条件限制未能完全实现, 但其设计思想不愧为当年人工智能的最高成就。

进入二十世纪后, 人工智能相继出现若干开创性的工作。

1936 年, 年仅 24 岁的英国数学家 A·M·Turing 在他的一篇“理想计算机”的论文中, 就提出了著名的图林机模型, 1945 年他进一步论述了电子数字计算机的设计思想, 1950 年他又在“计算机能思维吗? ”一文中提出了机器能够思维的论述, 可以说这些都是图林为人工智能所作的杰出贡献。1946 年美国

科学家 J·W·Mauchly等人制成了世界上第一台电子数字计算机 ENIAC。随后又有不少人为计算机的实用化不懈奋斗, 其中贡献卓著的应当是 VonNeomann 。目前世界上占统治地位的依然是冯·诺依曼计算机。电子计算机的研制成功是许多代人坚持不懈地努力的结果。这项划时代的成果为人工智能研究奠定了坚实的物质基础。同一时代,美国数学家 N·Wiener控制论的创立, 美国数学家C·E·Shannon信息论的创立, 英国生物学家 W·R·Ashby所设计的电脑等, 这一切都为人工智能学科的诞生作了理论和实验工具的巨大贡献。

1.1 形成时期 ( 1956- 1961 年)

1956 年夏季, 在美国 Dartmouth 大学,由年青数学助教 J·Mdarthy 和他的三位朋友 M·minsky 、N· Lochester 和 C·Shannor 共同发起, 邀请 IBM 公司的 T·More 和 A·Samuel、MIT的O·Self-ridge 和R·Solomonff 以及 RAND 公司和 Carnagie 工科大学的 A·Newell 和H·A·Simon 等人参加夏季学术讨论班, 历时两个月。这十位学者都是在数学神经生理学、心理学、信息论和计算机科学等领域中从事教学和研究工作的学者, 在会上他们第一次正式使用了人工智能 ( AI ) 这一术语, 从而开创了人工智能的研究方向。这次历史性的聚会被认为是人工智能学科正式诞生的标志,从此在美国开始形成了以人工智能为研究目标的几个研究组: 如Newell 和 Simon 的 Carnegie- RAND 协作组 ; Samuel 和 Gelernter的 IBM 公司工程课题研究组; Minsky 和 Mccarthy 的MIT 研究组等, 这一时期人工智能的主要研究工作有下述几个方面:1957 年A·Newell、J·Shaw 和H·Siomon 等人的心理学小组编制出一个称为逻辑理论机 LT(The Logic Theory Machine) 的数学定理证明程序, 当时该程序证明了B·A·W·Russell 和A·N·Whitehend 和“数学原理”一书第二章中的38 个定理。

后来他们又揭示了人在解题时的思维过程大致可归结为三个阶段:( 1 ) 先想出大致的解题计划;( 2 ) 根据记忆中的公理、定理和推理规则组织解题过程;( 3 ) 进行方法和目的分析, 修正解题计划。这种思维活动不仅解数学题时如此, 解决其他问题时也大致如此。基于这一思想他们于 1960 年又编制了能解十种类型不同课题的通用问题求解程序 GPS(General Problem Solving) ,另外他们还发明了编程的表处理技术和 NSS 国际象棋机,和这些工作有联系的Newell关于自适应象棋机的论文和 Simon 关于问题求解和决策过程中合理选择和环境影响的行为理论的论文, 也是当时信息处理研究方面的巨大成就。

1956 年 Samuel 研究的具有自学习、自组织、自适应能力的西洋跳棋程序是 IBM 小组有影响的工作,这个程序可以像一个优秀棋手那样,向前看几步来下棋。它还能学习棋谱,在分析大约175000 幅不同棋局后,可猜测出书上所有推荐的走步,准确度达48% ,这是机器模拟人类学习过程卓有成就的探索。1959 年这个程序曾战胜设计者本人,1962 年还击败了美国一个州的跳棋大师。

在 MIT 小组, 1959 年 Mccarthy 发明的表 ( 符号) 处理语言LISP ,成为人工智能程序设计的主要语言,至今仍被广泛采用。1958 年 Mccarthy 建立的行动计划咨询系统以及 1960 年 Minsky的论文“走向人工智能的步骤”,对人工智能的发展都起了积极的作用。此外, 1956 年 N·Chomsky的文法体系, 1958年Selfridge等人的模式识别系统程序等 ,都对人工智能的研究产生有益的影响。这些早期成果, 充分表明人工智能作为一门新兴学科正在茁壮成长。

1.2 发展时期 (1961年以后)

上世纪六十年代以来,人工智能的研究活动越来越受到重视。为了揭示智能

的有关原理,研究者们相继对问题求解、博弈、定理证明、程序设计、机器视觉、自然语言理解等领域的课题进行了深入的研究。四十多年来,不仅使研究课题有所扩展和深入,而且还逐渐搞清了这些课题共同的基本核心问题以及它们和其他学科间的相互关系。1974 年 N·J·Nillson对发展时期的一些工作写过一篇综述论文,他把人工智能的研究归纳为四个核心课题和八个应用课题。这四个具有一般意义的核心课题是:( 1 ) 知识的模型化和表示方法;( 2 ) 启发式搜索理论;( 3 ) 各种推理方法 ( 演绎推理、规划、常识性推理、归纳推理等) ;( 4 ) 人工智能系统结构和语言。这些课题的新成果极大地推动了人工智能应用课题的研究。这八个应用课题是:( 1 ) 自然语言理解( Natural Language Under-standing ) (2) 数据库的智能检索 ( Intelligent Retrieval fromDatabase )( 3 ) 专家咨询系统 ( Expert Consulting Systems ) (4) 定理证明 ( Theorem Proving ) (5) 博弈 ( Game Playing ) (6) 机器人学( Robotics ) (7) 自动程序设计 ( Automatic Programming ) (8) 组合调度问题 ( Combinatorial and Scheduling Problems ) 。这一时期学术交流的发展对人工智能的研究有很大推动作用。 1969 年国际人工智能联合会成立, 并举行第一次学术会议IJCAI- 69 ( International Joint Conference On Artificial Intelligence )以后每两年召开一次。随着人工智能研究的发展, 1974 年又成立了欧洲人工智能学会,并召开第一次会议 ECAI ( European Con-ference On Artificial Intelligence ) ,也是相隔两年召开一次。此外,许多国家也都有本国的人工智能学术团体。在人工智能刊物方面, 1970 年创办了《 Artificial Intelligence 》国际性期刊,爱丁堡大学还不定期出版<> 杂志, 还有 IJCAI 会议文集, ECAI 会议文集等。另外许多国际知名刊物也刊载人工智能的论著。

1.3 繁荣时期

上世纪九十年代以来, 人工智能研究出现了新的高潮。这一方面是因为在人工智能理论方面有了新的进展, 另一方面也是因为计算机硬件突飞猛进的发展。随着计算机速度的不断提高、存储容量的不断扩大、价格的不断降低以及网络技术的不断发展,许多原来无法完成的工作现在已经能够实现。因此, 人工智能研究也就进入繁荣期。目前人工智能研究的3个热点是 :智能接口、数据挖掘、主体及多主体系统。其中某些技术已经实用化。技术的发展总是超乎人们的想象, 从目前的一些前瞻性研究可以看出未来人工智能可能会向以下几个方面发展: 模糊处理、并行化、神经网络和机器情感。人工智能一直处于计算机技术的前沿,人工智能研究的理论和发现在很大程度上将决定计算机技术的发展方向。今天, 已经有很多人工智能研究的成果进入人们的日常生活。将来,人工智能技术的发展将会给人们的生活、工作和教育等带来更大的影响。

人工智能是计算机科学、控制论、信息论、神经生理学、心理学、语言学等多种学科互相渗透而发展起来的一门综合性学科,就其本质而言,它是研究如何制造出人造的智能机器或智能系统, 来模拟人类智能活动的能力,以延伸人们智能的科学。

计算机所要模拟的人类智能活动的能力,具体地可以概括为:

( 1 ) 通过视觉、听觉、触觉等感官活动, 接受并理解文字、图象、声音、语言等各种外界的“自然信息” , 这就是认识和理解世界环境的能力。

( 2 ) 通过人脑的生理与心理活动以及有关的信息处理过程,将感性知识抽象为理性知识, 并能对事物运动的规律进行分析, 判断和推理, 这就是提出概

念, 建立方法, 进行演绎和归纳推理, 作出决策的能力。

( 3 ) 通过教育、训练和学习过程, 日益丰富自身的知识和技能, 这就是学习的能力。

( 4 ) 对变化多端的外界环境条件, 如干扰、刺激等作用能灵活地作出反应, 这就是自我适应的能力。

针对以上人类智能活动的能力,目前研究人工智能主要有两条途径。一条是心理学家、生理学家们希望搞清大脑信息处理过程的机理。他们认为大脑是智能活动的物质基础,要揭示人类智能的奥秘,就必须弄清大脑的结构,也就是要从大脑的神经元模型着手研究。显然由于人脑有上百亿神经元,而且现阶段要进行人脑的物理模拟实验很困难,因而完成这个任务极其艰巨。但是这一学派试图创立“信息处理的智能理论”作为实现人工智能的长远研究目标, 这个观点是值得重视的。另一条是计算机科学家们提出的从模拟人脑功能的角度来实现人工智能, 也就是通过计算机程序的运行,从效果上达到和人们智能行为活动过程相类似作为研究目标, 因而这派学者只是局限于解决“建造智能机器或系统为工程目标的有关原理和技术”作为实现人工智能的近期目标,这个观点比较实际,目前引起较多人的注意。总之不论从什么角度来研究人工智能,都是通过计算机来实现,因此可以说人工智能的中心目标是要搞清楚实现人工智能的有关原理,使计算机有智慧、更聪明、更有用。美国是人工智能的发源地, 随着人工智能的发展,世界各国有关学者也都相继加入这一行列。英国在 60 年代就起步人工智能的研究,到70 年代,在爱丁堡大学还成立了《人工智能》系,日本和西欧一些国家虽起步较晚,但发展都较快, 前苏联对人工智能研究也给予重视。我国是从 1978 年才开始人工智能课题的研究,主要在定理证明、汉语自然语言理解、机器人及专家系统方面设立课题, 并取得一些初步成果。八十年代国内也相应成立了中国人工智能学会, 中国计算机学会人工智能和模式识别专业委员会, 中国自动化学会模式识别与机器智能专业委员会, 开展这方面的学术交流。作为“86.3”高科技计划的重要内容, 国家着手兴建了若干个人工智能研究中心实验室, 极大地促进了我国人工智能的研究, 缩短了我国人工智能技术与世界先进水平的差距, 也为未来的发展奠定了技术和人才基础。获得首届国家最高科学奖的数学家吴文俊院士, 就是因为其研究领域主要集中在运用计算机进行定理证明方面。

人工智能这门新兴学科也曾一度陷入低谷,遭到某些人的攻击和非难。但是随着高科技竞争的愈演愈烈,以及人工智能学者的艰苦卓绝的探索,它最终冲破迷雾以先锋的姿态披荆斩棘,乘风破浪,成为二十一世纪的前卫学科。也许在不远的将来,我们会无法分辨谁是机器人,谁是自然人。

3研究与应用

3.1 问题求解

问题求解,即解决管理活动中由于意外引起的非预期效应或与预期效应之间的偏差。能够求解难题的下棋 (如国际象棋 )程序的出现,是人工智能发展的一大成就。在下棋程序中应用的推理,如向前看几步,把困难的问题分成一些较容易的子问题等技术,逐渐发展成为搜索和问题归约这类人工智能的基本技术。搜索策略可分为无信息导引的盲目搜索和利用经验知识导引的启发式搜索,它决定着问题求解的推理步骤中,使用知识的优先关系。另一种问题的求解程序,是把各种数学公式符号汇编在一起,其性能已达到非常高的水平并正在被许多科学家和工程师所应用,甚至有些程序还能够用经验来改善其性能。例如,1993 年美

国发布的一个叫做 MACSYMA 的软件,它能够进行较复杂的数学公式符号运算。如前所述 ,尚未解决的问题包括人类棋手具有的表达的能力,如国际象棋大师们洞察棋局的能力;另一个未解决的问题涉及问题的原概念,在人工智能中叫做问题表示的选择。人们常常能够找到某种思考问题的方法从而使求解变得容易而最终解决该问题。

3.2 专家系统

专家系统 ES (Expert System)是人工智能研究领域中另一重要分支,它将探讨一般的思维方法转入到运用专门知识求解专门问题,实现了人工智能从理论研究向实际应用的重大突破;专家系统可看作一类具有专门知识的计算机智能程序系统,它能运用特定领域中专家提供的专门知识和经验,并采用人工智能中的推理技术来求解和模拟通常由专家才能解决的各种复杂问题。总的来说,专家系统是一种具有智能的软件,它求解方法是一种启发式方法,专家系统所要解决的问题一般无算法解,并且与传统的计算机程序上不同之处在于,它要经常在不完全、不精确或不确定的信息基础上做出结论。

在近年来的专家系统或“知识工程的研究中,已经出现了成功和有效应用人工智能技术的趋势,具有有代表性的是用户与专家系统进行“咨询对话”,如同其与专家面对面的进行对话是一样的:解释问题并建议进行某些试验,向专家系统询问以期得到有关解答等。当前的实验系统,在比如化学和地质数据分析、计算机系统结构、建筑工程以及医疗诊断等咨询任务方面,已达到很高的水平。另外,还有很多研究主要是集中在让专家系统能够说明推理的能力,从而使咨询更好地被用户接受,同时还能帮助人类发现系统推理过程中所出现的差错。发展专家系统的关键在于表达和运用专家知识,即来自人类专家的且已被证明能够解决某领域内的典型问题的有用的事实和过程。不同领域与不同类型的专家系统,它们的体系结构和功能是有一定的差异的,但它们的组成基本一致。一个基本的专家系统主要由知识库、数据库、推理机、解释机制、知识获取和用户界面六部分组成,如图1 所示。

3.3 机器学习

机器学习(Machine Learning)是研究如何使用计算机模拟或实现人类的学习活动。它是继专家系统之后人工智能的又一重要应用领域,是使计算机具有智能的根本途径,也是人工智能研究的核心课题之一,它的应用遍及人工智能的各

个领域。

学习是人类智能的重要特征,是获得知识的基本手段,而机器学习也是使计算机具有智能的根本途径,如香克所说:“一台计算机若不会学习,就不能称为具有智能的。”除此之外,机器学习还有助于发现人类学习的机理和揭示人脑的奥秘。学习是一个有特定目的的知识获取过程,它的内部主要表现为新知识结构的不断建立和修改,外部表现为性能的改善。一个学习过程本质上讲,就是学习系统把导师(或专家)提供的信息转换成能被系统理解并应用的形式的过程。按照系统对导师的依赖程度可将学习方法分类为:机械式学习(Rotelearning)、讲授式学习(Learning from instruction)、类比学习(Learning by analogy)、归纳学习(Learning from induction)、观察发现式学习(learning by observation and discovery)等。此外,近年来又发展了基于解释、事例、概念、神经网络的学习和遗传学习等学习方法。

3.4 神经网络

人工神经网络(Aficial Neural Network),是由大量处理单元即神经元互连而成的网络,也常简称为神经网络或类神经网络。神经网络是一种由大量的节点(或称神经元)和之间相互联接构成的运算模型,是对人脑或自然神经网络一些基本特性的抽象和模拟,其目的在于模拟大脑的某些机理与机制,从而实现某些方面的功能。通俗地讲,人工神经网络是仿真研究生物神经网络的结果。详细地说,人工神经网络是为获得某个特定问题的解,根据所掌握的生物神经网络机理,按照控制工程的思路及数学描述方法,建立相应的数学模型并采用适当的算法,而有针对性地确定数学模型参数的技术。神经网络的信息处理是由神经元之间的相互作用实现的:知识与信息的存贮主要表现为网络元件互连间分布式的物理联系。人工神经网络具有很强的自学习能力,它可以不依赖于“专家”的头脑,而自动从已有的实验数据中总结规律。由此,人工神经网络擅长于处理复杂多维的非线性问题,不但可以解决定性问题,也可解决定量的问题,同时还具有大规模并行处理和分布的信息存储能力,具有良好的自适应、自组织性以及很强的学习、联想、容错和较好的可靠性。

3.5 模式识别

计算机人工智能所研究的模式识别是指用计算机代替人类或帮助人类感知模式。其主要的研究对象是计算机模式识别系统,也就是让计算机系统能够模拟人类通过感觉器官对外界产生的各种感知能力。较早的模式识别研究工作集中在对文字和二维图像的识别方面,并取得了不少成果。自20世纪60年代中期起,机器视觉方面的研究工作开始转向解释和描述复杂的三维景物这一更困难的课题。罗伯斯特 ( Robest ) 于1965年发表的论文奠定了分析由棱柱体组成的景物的方向,迈出了用计算机将三维图像解释成三维景物的一个单眼视图的第一步,即所谓的积木世界。接着,机器识别由积木世界进入识别更复杂的景物和在复杂环境中寻找目标以及室外景物分析等方面的研究。

目前研究的热点是活动目标(如飞行器)的识别和分析,它是景物分析走向实用化研究的一个标志。语音识别技术的研究始于20世纪50年代初期,发展到20世纪70年代,各种语音识别装置相继出现,性能良好的能够识别单词的声音识别系统已进入实用阶段,神经网络用于语音识别也已取得成功。作为一门新兴学科,模式识别在不断发展,其理论基础和研究范围也在不断发展。当前模式识别正处于大发展的阶段,随着其应用范围的逐渐扩大及计算机科学的发展,模式识别技术将在今后有更大的发展,并且量子计算技术也将用于模式识别的研究。

3.6 人工生命

人工生命 ( Artificial Life, 简称 AL) 是由美国圣菲研究所非线性研究组的计算机科学家 Christopher Langton 于1987 年与 Los Alamos National Laboratory 召开的“生成以及模拟生命系统的国际会议”上首先提出的。它主要是通过人工模拟生命系统来研究生命的领域。AL 的概念主要包括两方面内容:

1)计算机科学领域的虚拟生命系统,主要涉及计算机软件工程和人工智能技术;

2)基因工程技术人工改造生物的工程生物系统,主要涉及合成生物学技术。

相比于传统的人工智能和神经网络,人工生命不论在理论上还是方法上都有很大的区别。人工生命主要是通过计算机仿真生命现象来体现自适应机理,对相关非线性对象进行更真实的动态描述以及动态特征研究。人工生命学科主要包括仿生系统、人工建模与仿真、人工生命的计算理论、进化动力学、进化与学习综合系统以及人工生命的应用等研究内容。现阶段比较典型的人工生命研究有:计算机病毒、计算机进程、进化机器人、自催化网络、细胞自动机、人工核苷酸和人工脑等。

4遗传算法的研究

1遗传算法概述

遗传算法(GeneticAlgorithm,GA)是模拟生物进化论的自然选择和遗传学进化过程的计算模型,是一种通过模拟自然进化过程随机搜索最优解的方法,体现了适者生存、优胜劣汰的进化原则,其主要特点是直接对结构对象进行操作,不存在求导和函数连续性的限定,具有并行性和较强的全局寻优能力。遗传算法把问题的解表示成染色体,

求解步骤如下:

(1)编码:定义问题的解空间到染色体编码空间的映射,

一个候选解(个体)用一串符号表示。

(2)初始化种群:在一定的限制条件下初始化种群,该种群是解空间的一个子空间。

(3)设计适应度函数:将种群中的每个染色体解码成适于适应度函数的形式,计算其数值。

(4)选择:根据适应度大小选择优秀个体繁殖下一代,适应度越高,选择概率越大。

(5)交叉:随机选择两个用于繁殖下一代的个体的相同位置,在选中的位置实行交换。

(6)变异:对某个串中的基因按突变概率进行翻转。

(7)从步骤4开始重复进行,直到满足某一性能指标或规定的遗传代数。

GA在图像分割领域应用最为成熟,只要有两种应用,一是在多种分割结果中搜索最佳分割结果,二是搜索图像分割算法的最优参数,如用来确定图像最佳分割阂

值。Jincong等使用最小误差概率做为适应度函数来搜索图像最佳分割阂值,Leesu将GA用于分割阂值计算,提高了分割效率,Bhanu使用GA在多个分割参数空间中搜索最优分割参数,提出了动态环境中图像分割系统,大大提高了环境适应性,iaJgniTan一ihz使用GA搜索最优细胞轮廓模型参数,对高噪声细胞图像进行分割,chunDaeN使用GA对灰度图像的区域进行模糊测量,搜索一最佳区域。

GA在图像增强方面的应用主要是搜索最优或次优控制参数的过程。

GA在图像恢复中的应用主要解决高噪声图像的恢复。在图像压缩中,GA能有效解决分形压缩的最优匹配问题,提高了压缩比和精度,可用于低比特率的图像压缩。GA在图像匹配方面的应用主要解决速度问题,通过减少搜索位置的数量来减少计算量,提高效率。遗传算法是一类借鉴生物界自然选择和自然选择机制的随机化搜索方法,有美国J·Holhdn教授提出,他的主要特点是能够提供群体的搜索方案和实现群体里面个体之间的信息交换,且搜索不会依赖于梯度信息。它尤其适用于处理传统搜索方法难于解决的复杂和非线性的问题,可广泛应用于组合优化、机器学习、自适应控制、规划设计和图像处理等多个方面,是二十一世纪的智能计算的关键技术之一。

2遗传方法在图像处理中的应用

2.1在图像增强中的应用。

图像增强技术是将不清晰的图像经过优化处理变一张比之前更加清楚,或者变成一张使得特点更加鲜明的照片,以便于对图像再进行后期的加工。目前图像增强方法主要包括将图像进行某种变换的频域法和对直接对原始图像进行处理的空域法两种。而基于遗传算法的图像增强技术的实现则是利用遗传的选择方法找到一个最优或者局部最优的方法。

具体的操作方法是,首先将每一个目标值设置一个基位,用实数进行编码,这样问题就转化成求解这个目标基位组合的题目。然后,对适应度进行设计,适应度设计为个体进化提供动力,在设置适应度的时候既要考虑图像的整体和局部的质量问题,也要将结构和细节考虑进去。

再后,对遗传算子进行设计,先根据前面设置的适应度值将个体从大到小进行排列,从中选择优秀的个体进入下一个程序当中;为了防止遗传算法在计算的过程中过早收敛,对种群的多样性进行保护,在计算过程中采用交叉操作的方法产生新的个体;对进化方向进行微调,采用变异操作的方法,对一个被选中的变异操作来说,就是采用“1”一“0”和“1”一“0”的方式进行变异。最后,设置算法的结束条件,一般算法的结束条件就是迭代次数达到了最大进化代数或者最大适应度的值变化不明显。

2.2图像恢复技术。

图像恢复技术的目的就是降一些退化的图像经过技术处理使得图像的本来面目得到恢复。作为数字图像处理技术的一个分支,他的恢复方法有很多,包括维纳滤波法,逆滤波法、最大嫡恢复法和奇异值分解伪逆法等。但是,上述方法在应用过程中都有自己的缺陷,图像退化原因的不确定性和无确定的函数表达式,会导致上述算法过于复杂,计算量过大和约束条件过多等情况的出现。

采用遗传算法进行图像恢复,突破了原有理论的缚,能够更好的与其他一些计算方法进行融合,使得计算率和精确度都有很大的提高。

由于遗传算法具有功能强大的全局搜索能力,采用遗传算法结合其他算法处理过的图像在客服噪影响方面具有很大的优势,同时也能使得图像边缘不会出现条纹效应、过的更加平滑,整体感觉好。

2.3图像重建技术。

图像重建是由在某种观测方式下得到的携带图像信息的数据恢复出原图像的过程。图像重建技术的方法也有很多种,主要是根据取得图像信息的方法不同,使用重建方法也不同,有迭代法、代数法和傅里叶变换法等法。

遗传算法在图像重建中的应用主要是解决带有噪声的投影数据的图像处理问题。遗传算法在这方面的处理方法有很多,包括利用最小化被测像素值和计算的线总和之间的差的方法;利用松弛迭代的傅里叶变换算法来解决计算过程中出现的停滞现象;假定目标组合点分散的条件下,使用线性拟合方式来重建高分辨雷达图像数据。

2.4图像压缩技术。

图像压缩技术最主要的原理就是将拥有自相似性的对象用这一组简单的代数关系式进行表达的过程。将互相不重叠的小块定义为值域块,然后进行编码,并使经过映射后的定义域块与值域块的距离在某种度量值下最小,在分解和处理过程中,由于值域块的数量过于庞大,压缩搜索过程任务繁重,遗传算法的强大全局搜索能力就能很好的派上用场,发挥良好的效果。

遗传算法的基本原理

遗传算法(GA)是基于“适者生存”的一种高度并行、随机和自适应的优化算法,它将问题的求解表示成“

染色体”的适者生存过程,通过“染色体”群的一代代不断进化,包括复制、交叉和变异等操作,最终收敛到“最适应环境”的个体,从而求得问题的最优解或满意解〔’」。其中选择、交叉和变异是遗传算法的三个主要操作算子。

具体操作步骤图如下:

l)在一定编码方案下,随机产生一个初始种群;

2)用相应的解码方法将编码后的个体转换成问题空间的决策变量,并求个体的适应值;

3)按照个体适应值的大小,从种群中选出适应值较大的一些个体构成交配池;

4)由交叉和变异这两个遗传算子对交配池中的个体进行操作,并形成新一的种群;

5)反复执步骤2)一4),直至满足收敛判据为止。

GA是一种通用的优化算法,其编码技术和遗传操作比较简单,优化不受限制性条件的约束,其搜索过程是从问题解的一个集合开始的,而不是从单个个体开始的,具有隐含并行搜索特性,也就大大减小了陷人局部极小值的可能。

正是由于其具有以上突出的优点,遗传算法几乎渗透到从工程到社会科学的各个领域。为了验证遗传算法的全局寻优能力,本文将运用基于MATLAB编制的遗传算法来求解数值优化和旅行商问题。

遗传算法概述

遗传算法(GeneticAlgorithm,GA)是借鉴生物界自然选择和群体进化机制形成的一种全局寻优算法。与传统的优化算法相比,遗传算法具有如下优点[1]:1)不是从单个点,而是从多个点构成的群体开始搜索;2)在搜索最优解过程中,只需要由目标函数值转换得来的适应值信息,而不需要导数等其它辅助信息;3)搜索过程不易陷入局部最优点。目前,该算法已渗透到许多领域,并成为解决各领域复杂问题的有力工具[2]。在遗传算法中,将问题空间中的决策变量通过一定编码方法表示成遗传空间的一个个体,它是一个基因型串结构数据;同时,将目标函数值转换成适应值,它用来评价个体的优劣,并作为遗传操作的依据。遗传操作包括三个算子:选择、交叉和变异。选择用来实施适者生存的原则,即把当前群体中的个体按与适应值成比例的概率复制到新的群体中,构成交配池(当前代与下一代之间的中间群体)。选择算子的作用效果是提高了群体的平均适应值。由于选择算子没有产生新个体,所以群体中最好个体的适应值不会因选择操作而有所改进。交叉算子可以产生新的个体,它首先使从交配池中的个体随机配对,然后将两两配对的个体按某种方式相互交换部分基因。变异是对个体的某一个或某一些基因值按某一较小概率进行改变。从产生新个体的能力方面来说,交叉算子是产生新个体的主要方法,它决定了遗传算法的全局搜索能力;而变异算子只是产生新个体的辅助方法,但也必不可少,因为它决定了遗传算法的局部搜索能力。交叉和变异相配合,共同完成对搜索空间的全局和局部搜索。遗传算法的基本步骤[3]如下:

1)在一定编码方案下,随机产生一个初始种群;

2)用相应的解码方法,将编码后的个体转换成问题空间的决策变量,并求得个体的适应值;

3)按照个体适应值的大小,从种群中选出适应值较大的一些个体构成交配池;

4)由交叉和变异这两个遗传算子对交配池中的个体进行操作,并形成新一代的种群;

5)反复执行步骤2~4,直至满足收敛判据为止。

使用遗传算法需要决定的运行参数有:编码串长度、种群大小、交叉和变异概率。编码串长度由优化问题所要求的求解精度决定。种群大小表示种群中所含个体的数量,种群较小时,可提高遗传算法的运算速度,但却降低了群体的多样性,可能找不出最优解;种群较大时,又会增加计算量,使遗传算法的运行效率降低。一般取种群数目为20~100。交叉概率控制着交叉操作的频率,由于交叉操作是遗传算法中产生新个体的主要方法,所以交叉概率通常应取较大值;但若过大的话,又可能破坏群体的优良模式。一般取0.4~0.99。变异概率也是影响新个体产生的一个因素,变异概率小,产生新个体少;变异概率太大,又会使遗传算法变成随机搜索。一般取变异概率为0.0001~0.1。遗传算法常采用的收敛判据有:规定遗传代数;连续几次得到的最优个体的适应值没有变化或变化很小等。

3 用MATLAB 实现遗传算法

MATLAB 是Matwork公司的产品,是一个功能强大的数学软件,其优秀的数值计算能力使其在工业界和学术界的使用率都非常高。MATLAB还十分便于使用,它以直观、简洁并符合人们思维习惯的代码给用户提供了一个非常友好的开发环境。利用MATLAB处理矩阵运算的强大功能来编写遗传算法程序有着巨大的优势。

3. 1 编码

遗传算法不对优化问题的实际决策变量进行操作, 所以应用遗传算法首要的问题是通过编码将决策变量表示成串结构数据。本文中我们采用最常用的二进制编码方案, 即用二进制数构成的符号串来表示一个个体, 用下面的encoding 函数来实现编码并产生初始种群:

function[bin-gen,bits]=encoding(min-var,max-var,scale-var,popsize) bits=ceil(log2(( max-var-min-var)./scale-var));

bin-gen=randint(popsize,sum(bits));

在上面的代码中, 首先根据各决策变量的下界(min-var)、上界(max-var)及其搜索精度scale-var来确定表示各决策变量的二进制串的长度 bits, 然后随机产生一个种群大小为 popsize 的初始种群 bin - gen。编码后的实际搜索精度为scale-dec=(max-var-min-var)/(2bits-1), 该精度会在解码时用到。

3. 2 解码

编码后的个体构成的种群bin-gen必须经过解码,以转换成原问题空间的决策变量构成的种群var - gen,方能计算相应的适应值。我们用下面的代码实现。

function[var-gen,fitness]=decoding(funname,bin-gen,bits,min-

var,max-var)

num-var=length(bits);

popsize=size(bin-gen,1);

scale-dec=(max-var-min-var)./(2.bits-1);

bits=cumsum(bits);

bits=[0bits];

fori=1:num-var

bin-var{i}=bin-gen(:,bits(i)+1:bits(i+1));

var{i}=sum(ones(popsize,1)*2.(size(bin-var{i},2)-1:-

1:0).*bin-var{i},2).*scale-dec(i)+min-var(i);

end

var-gen=[var{1,:}];

fori=1:popsize

fitness(i)=eval([funname,'(var-gen(i,:))']);

end

解码函数的关键在于先由二进制数求得对应的十进制数 D, 并根据下式求得实际决策变量值 X:

X=D×scale-dec+min-var

3. 3 选择

选择过程是利用解码后求得的各个体适应值大小, 淘汰一些较差的个体而选出一些比较优良的个体,以进行下一步的交叉和变异操作。选择算子的程序如下:

function[evo-gen,best-indiv,max-fitness]=selection(old-gen,fit- ness)

popsize=length(fitness);

[max-fitness,index1]=max(fitness);[min-fitness,index2]= min(fitness);

best-indiv=old-gen(index1,:);

index=[1:popsize];index(index1)=0;index(index2)=0;

index=nonzeros(index);

evo-gen=old-gen(index,:);

evo-fitness=fitness(index,:);

evo-popsize=popsize-2;

ps=evo-fitness/sum(evo-fitness);

pscum=cumsum(ps);

r=rand(1,evo-popsize);

selected=sum(pscum*ones(1,evo-popsize)

evo-gen=evo-gen(selected,:);

在该算子中, 采用了最优保存策略和比例选择法相结合的思路, 即首先找出当前群体中适应值最高和最低的个体, 将最佳个体best-indiv保留并用其替换掉最差个体。为保证当前最佳个体不被交叉、变异操作所被坏, 允许其不参与交叉和变异而直接进入下一代。然后将剩下的个体evo-gen按比例选择法进行操作。所谓比例选择法, 也叫赌轮算法,是指个体被选中的概率与该个体的适应值大小成正比。将这两种方法相结合的目的是: 在遗传操作中, 不仅能不断提高群体的平均适应值, 而且能保证最佳个体的适应值不减小。

3. 4交叉

下面采用单点交叉的方法来实现交叉算子,即按选择概率 PC在两两配对的个体编码串cpairs中随机设置一个交叉点cpoints,然后在该点相互交换两个配对个体的部分基因, 从而形成两个新的个体。交叉算子的程序如下: functionnew-gen=crossover(old-gen,pc)

[nouse,mating]=sort(rand(size(old-gen,1),1));

mat-gen=old-gen(mating,:);

pairs=size(mat-gen,1)/2;

bits=size(mat-gen,2);

cpairs=rand(pairs,1)

cpoints=randint(pairs,1,[1,bits]);

cpoints=cpairs.

*cpoints;

fori=1:pairs

new-gen([2*i-1 2*i],:)=[mat-gen([2*i-1 2*i],1: cpoints(i))mat-gen([2*i 2*i-1],cpoints(i)+1:bits)];

end

3. 5变异

对于二进制的基因串而言,变异操作就是按照变异概率pm随机选择变异点mpoints,在变异点处将其位取反即可。变异算子的实现过程如下: functionnew-gen=mutation(old-gen,pm)

mpoints=find(rand(size(old-gen))

new-gen=old-gen;

new-gen(mpoints)=1-old-gen(mpoints);

5实验结果

上述程序已经考虑了多参数编码问题,可以用于搜索多变量函数的最优解。为简单起见,下面仅以一个单变量函数为例,来验证所编遗传算法程序的全局寻优能力。设函数为:y=cos(5x)-sin(3x)+10,x∈[17],函数特性如图1所示。

取种群大小popsize=20,搜索精度scale-var=0.0001,交叉概率pc=0.6,变异概率pm=0.1。图2和图3是某一次运算遗传20代后最佳个体的适应值增长情况和最佳个体的变化情况

由于采用了最优保存策略,所以在图2中未看到最佳个体适应值减少的现象。由图3可见:在前三代种群中适应值最大的个体解码后的值为1.1944,落在函数的一个局部极值处。但是搜索并没有在此处停滞,很快就跃到了另一个更大的极值点3.7附近。在该点附近搜索多次后,我们发现连续几次得到的最优个体的适应值变化很小,可以认为找到全局最大值,全局最大值点为3.7414,最大值为

11.9638。

6课设总结

在实验设计过程中,遇到的问题主要是人工智能相关知识的收集和整理,参考了相关书籍,和老师讨论后,才对人工智能有了初步的了解,并学习了一些常见的人工智能算法。对于这个算法的编写我觉得设计难度比较大,一方面,我们数据结构方面的思想不足,另一方面,因为长时间不用,对语言也有些生疏,所以设计起来比较吃力。通过对整个算法的实现,我进一步了解遗传算法的基本原理及过程,体会到了其重要性。同时也锻炼了我独立分析问题以及解决问题的能力。

人工智能课程设计报告--动物识别系统

计算机科学与技术学院 《人工智能》课程设计报告设计题目:动物识别系统 设计人员:学号: 学号: 学号: 学号: 学号: 学号: 指导教师: 2015年7月

目录 目录 (1) 摘要 (2) Abstract (2) 一、专家系统基本知识 (3) 1.1专家系统实际应用 (3) 1.2专家系统的开发 (3) 二、设计基本思路 (4) 2.1知识库 (4) ....................................................................................................... 错误!未定义书签。 2.1.2 知识库建立 (4) 2.1.3 知识库获取 (5) 2.2 数据库 (6) ....................................................................................................... 错误!未定义书签。 ....................................................................................................... 错误!未定义书签。 三、推理机构 (7) 3.1推理机介绍 (7) 3.1.1 推理机作用原理 (7) ....................................................................................................... 错误!未定义书签。 3.2 正向推理 (7) 3.2.1 正向推理基本思想 (7) 3.2.2 正向推理示意图 (8) 3.2.3 正向推理机所要具有功能 (8) 3.3反向推理 (8) ....................................................................................................... 错误!未定义书签。 3.3.2 反向推理示意图 (8) ....................................................................................................... 错误!未定义书签。 四、实例系统实现 (9)

人工智能结课论文

人工智能在电子信息上的应用————专家系统 引言: 人工智能(Artificial Intelligence) ,英文缩写为AI。它是研究、开发用于模拟、延伸和扩展人的智能的理论、方法、技术及应用系统的一门新的技术科学。人工智能是计算机科学的一个分支,它企图了解智能的实质,并生产出一种新的能以人类智能相似的方式做出反应的智能机器,该领域的研究包括机器人、语言识别、图像识别、自然语言处理和专家系统等。 专家系统是人工智能应用研究的一个重要领域。它实现了人工智能从理论研究走向实际应用,从一般思维方法探讨转入专门知识运用的重大突破。专家系统是一个智能计算机程序系统,其内部含有大量的某个领域专家水平的知识与经验,能够利用人类专家的知识和解决问题的方法来处理该领域问题。 摘要: 专家系统是人工智能应用研究的主要领域。专家系统是一个具有大量的专门知识与经验的程序系统,它应用人工智能技术和计算机技术,根据某领域一个或多个专家提供的知识和经验,进行推理和判断,模拟人类专家的决策过程,以便解决那些需要人类专家处理的复杂问题,简而言之,专家系统是一种模拟人类专家解决领域问题的计算机程序系统。它运用于医疗、军事、地质勘探、教学、化工等领域,产生了巨大的经济效益和社会效益。现在,专家系统已成为人工智能领域中最活跃、最受重视的领域。 关键词:人工智能,专家系统 正文: 1、什么是专家系统 专家系统是一种模拟人类专家解决领域问题的计算机程序系统。专家系统内部含有大量的某个领域的专家水平的知识与经验,能够运用人类专家的知识和解决问题的方法进行推理和判断,模拟人类专家的决策过程,来解决该领域的复杂问题。 目前,对什么是专家系统还没有一个严格公认的形式化定义。作为一种一般的解释,可以认为专家系统是一种具有大量专门知识与经验的智能程序系统,它能运用领域专家多年积累的经验和专门知识,模拟领域专家的思维过程,解决该领域中需要专家才能解决的复杂问题。 2、专家系统的基本结构 专家系统通常由人机交互界面、知识库、推理机、解释器、综合数据库、知识获取等6个部分构成。 在其中,知识库是专家系统质量是否优越的关键所在,即知识库中知识的质量和数量决定着专家系统的质量水平。一般来说,专家系统中的知识库与专家系统程序是相互独立的,用户可以通过改变、完善知识库中的知识内容来提高专家系统的性能。 人工智能中的知识表示形式有产生式、框架、语意网络等,而在专家系统中运用得较为普遍的知识是产生式规则。产生式规则以IF…THEN…的形式出现,就像编程语言里的条件语句一样,IF后面跟的是条件(前件),THEN后面的是结论(后件),条件与结论均可以通过逻辑运算AND、OR、NOT进行复合。在这里,产生式规则的理解非常简单:如果前提条件得到满足,就产生相应的动作或结论。产生式专家系统的知识库中包含了大量的规则,换言之,这里的知识库就是一个规则集。 3、专家系统的特性(与人类专家相比) 专家系统作为一个计算机程序系统具有如下几个特性: (1)不受时间限制:人类专家的工作时间有限,但专家系统是恒久,一旦开发完成,可随时使用,并可二十四小时持续运作。

人工智能实验报告大全

人工智能实验报告大 全

人工智能课内实验报告 (8次) 学院:自动化学院 班级:智能1501 姓名:刘少鹏(34) 学号: 06153034 目录 课内实验1:猴子摘香蕉问题的VC编程实现 (1) 课内实验2:编程实现简单动物识别系统的知识表示 (5)

课内实验3:盲目搜索求解8数码问题 (18) 课内实验4:回溯算法求解四皇后问题 (33) 课内实验5:编程实现一字棋游戏 (37) 课内实验6:字句集消解实验 (46) 课内实验7:简单动物识别系统的产生式推理 (66) 课内实验8:编程实现D-S证据推理算法 (78)

人工智能课内实验报告实验1:猴子摘香蕉问题的VC编程实现 学院:自动化学院 班级:智能1501 姓名:刘少鹏(33) 学号: 06153034 日期: 2017-3-8 10:15-12:00

实验1:猴子摘香蕉问题的VC编程实现 一、实验目的 (1)熟悉谓词逻辑表示法; (2)掌握人工智能谓词逻辑中的经典例子——猴子摘香蕉问题的编程实现。 二、编程环境 VC语言 三、问题描述 房子里有一只猴子(即机器人),位于a处。在c处上方的天花板上有一串香蕉,猴子想吃,但摘不到。房间的b处还有一个箱子,如果猴子站到箱子上,就可以摸着天花板。如图1所示,对于上述问题,可以通过谓词逻辑表示法来描述知识。要求通过VC语言编程实现猴子摘香蕉问题的求解过程。 图1 猴子摘香蕉问题

四、源代码 #include unsigned int i; void Monkey_Go_Box(unsigned char x, unsigned char y) { printf("Step %d:monkey从%c走到%c\n", ++i, x, y);//x表示猴子的位置,y为箱子的位置 } void Monkey_Move_Box(char x, char y) { printf("Step %d:monkey把箱子从%c运到%c\n", ++i, x, y);//x表示箱子的位置,y为香蕉的位置 } void Monkey_On_Box() { printf("Step %d:monkey爬上箱子\n", ++i); } void Monkey_Get_Banana() { printf("Step %d:monkey摘到香蕉\n", ++i); } void main() { unsigned char Monkey, Box, Banana; printf("********智能1501班**********\n"); printf("********06153034************\n"); printf("********刘少鹏**************\n"); printf("请用a b c来表示猴子箱子香蕉的位置\n"); printf("Monkey\tbox\tbanana\n"); scanf("%c", &Monkey); getchar(); printf("\t"); scanf("%c", &Box); getchar(); printf("\t\t"); scanf("%c", &Banana); getchar(); printf("\n操作步骤如下\n"); if (Monkey != Box) { Monkey_Go_Box(Monkey, Box); } if (Box != Banana)

《人工智能导论》课程研究报告总结

《人工智能导论》课程研究报告题目:BP神经网络的非线性函数拟合 班级:自动化1303班 姓名:汪洋、房亮、彭正昌、蔡博、刘航、范金祥 学号: 2016年1月1日

目录 第一章人工智能相关介绍 1.1人工神经网络与matlab (3) 1.2人工神经网络的研究背景和意义 (3) 1.3神经网络的发展与研究现状 (4) 1.4神经网络的应用 (5) 第二章神经网络结构及BP神经网络 (5) 2.1神经元与网络结构 (5) 2.2 BP神经网络及其原理 (9) 2.3 BP神经网络的主要功能 (11) 第三章基于matlab的BP神经网络的非线性函数拟合 3.1运用背景 (5) 3.2模型建立 (9) 3.3MatLab实现 (11) 参考文献 (15) 附录 (17)

人工智能相关介绍 1.1人工神经网络与matlab 人工神经网络(Artificial Neural Networks,NN)是由大量的、简单的处理单元(称为神经元)广泛地互相连接而形成的复杂网络系统,它反映了人脑功能的许多基本特征,是一个高度复杂的非线性动力学系统。神经网络具有大规模并行、分布式存储和处理、自组织、自适应和自学习能力,特别适合处理需要同时考虑许多因素和条件的、不精确和模糊的信息处理问题。神经网络的发展与神经科学、数理科学、认知科学、计算机科学、人工智能、信息科学、控制论、机器人学、微电子学、心理学、微电子学、心理学、光计算、分子生物学等有关,是一门新兴的边缘交叉学科。 神经网络具有非线性自适应的信息处理能力,克服了传统人工智能方法对于直觉的缺陷,因而在神经专家系统、模式识别、智能控制、组合优化、预测等领域得到成功应用。神经网络与其他传统方法相组合,将推动人工智能和信息处理技术不断发展。近年来,神经网络在模拟人类认知的道路上更加深入发展,并与模糊系统、遗传算法、进化机制等组合,形成计算智能,成为人工智能的一个重要方向。 MATLAB是一种科学与工程计算的高级语言,广泛地运用于包括信号与图像处理,控制系统设计,系统仿真等诸多领域。为了解决神经网络问题中的研究工作量和编程计算工作量问题,目前工程领域中较为流行的软件MATLAB,提供了现成的神经网络工具箱(Neural Network Toolbox,简称NNbox),为解决这个矛盾提供了便利条件。神经网络工具箱提供了很多经典的学习算法,使用它能够快速实现对实际问题的建模求解。在解决实际问题中,应用MATLAB 语言构造典型神经网络的激活传递函数,编写各种网络设计与训练的子程序,网络的设计者可以根据需要调用工具箱中有关神经网络的设计训练程序,使自己能够从烦琐的编程中解脱出来,减轻工程人员的负担,从而提高工作效率。 1.2 人工神经网络的研究背景和意义 人工神经网络是由具有适应性的简单单元组成的广泛并行互连的网络,它的组织能够模拟生物神经系统对真实世界物体所作出的交互反应。 人工神经网络就是模拟人思维的一种方式,是一个非线性动力学系统,其特色在于信息的分布式存储和并行协同处理。虽然单个神经元的结构极其简单,功能有限,但大量神经元构成的网络系统所能实现的行为却是极其丰富多彩的。 近年来通过对人工神经网络的研究,可以看出神经网络的研究目的和意义有以下三点:(1)通过揭示物理平面与认知平面之间的映射,了解它们相互联系和相互作用的机理,从而揭示思维的本质,探索智能的本源。(2)争取构造出尽可能与人脑具有相似功能的计算机,即神经网络计算机。(3)研究仿照脑神

人工智能课程设计报告-罗马尼亚度假问题

人工智能课程设计报告-罗马尼亚度假 问题 1

2

3 2020年5月29日 课 程 :人工智能课程设计报告 班 级: 姓 名: 学 号: 指导教师:赵曼 11月

人工智能课程设计报告 课程背景 人工智能(Artificial Intelligence),英文缩写为AI。它是研究、开发用于模拟、延伸和扩展人的智能的理论、方法、技术及应用系统的一门新的技术科学。人工智能是计算机科学的一个分支,它企图了解智能的实质,并生产出一种新的能以人类智能相似的方式做出反应的智能机器,该领域的研究包括机器人、语言识别、图像识别、自然语言处理和专家系统等。人工智能从诞生以来,理论和技术日益成熟,应用领域也不断扩大,能够设想,未来人工智能带来的科技产品,将会是人类智慧的”容器”。 人工智能是对人的意识、思维的信息过程的模拟。人工智能不是人的智能,但能像人那样思考、也可能超过人的智能。 人工智能是一门极富挑战性的科学,从事这项工作的人必须懂得计算机知识,心理学和哲学。人工智能是包括十分广泛的科学,它由不同的领域组成,如机器学习,计算机视觉等等,总的说来,人工智能研究的一个主要目标是使机器能够胜任一些一般需要人类智能才能完成的复杂工作。但不同的时代、不同的人对这种”复杂工作”的理解是不同的。 人工智能是计算机学科的一个分支,二十世纪七十年代以来被称为世界三大尖端技术之一(空间技术、能源技术、人工智能)。也被认为是二十一世纪三大尖端技术(基因工程、纳米科学、人工智能)之一。这是因为近三十年来它获得了迅 速的发展,在很多学科领域都获得了广泛应用,并取得了丰硕的成果,人工智能已逐 - 1 - 2020年5月29日

自然辩证法概论结课论文 人工智能对人类未来社会的影响

2016秋《自然辩证法概论》课程期末论文 班级__ 学号__ 姓名__ 开课学院马克思主义学院任课教师_ 成绩________

人工智能对人类未来社会的影响 摘要:近年来,由于“深度学习”神经网络的提出,突破瓶颈的人工智能迅速发展,各大科技公司也纷纷布局。人工智能逐渐融入人们生活,并极大的促进了社会发展,同时其飞速的发展也引发了人们对于人工智能未来与人类关系的忧虑。 关键词:人工智能人类未来 一、人工智能的发展 今年全球最热门的词汇,“人工智能”无疑是其中之一。前不久谷歌AlphaGo与李世石的围棋人机大战,是继1997年IBM计算机“深蓝”战胜人类国际象棋冠军之后,人工智能领域的又一重大里程碑。提到人工智能,因为受科幻小说或电影的影响,大多数人会想到屠杀人类的机器人大军,但就其本质而言,人工智能是对人的意识、思维的信息过程的模拟,现代人工智能主要依靠数据和算法。1956年夏季,以麦卡赛、明斯基、罗切斯特和申农等为首的一批有远见卓识的年轻科学家在一起聚会,共同研究和探讨用机器模拟智能的一系列有关问题,并首次提出了“人工智能”这一术语,它标志着“人工智能”这门新兴学科的正式诞生。随后,人工智能与众多学科产生融合并飞速进展,但在90年代暴力破解需要的呈指数增长的计算量使人工智能发展陷入僵局。直到2006年“深度学习”神经网络的提出,才取得了突破性进展。深度学习算法体现出来的高性能,掀起了新一代人工智能技术的革新浪潮。“近年来,谷歌、微软、IBM、 百度等拥有大数据的高科技公司相继投入大量资源进行深度学习技术研发,在语音、图像、自然语言、在线广告等领域取得显着进展。”[1] 二、人工智能对现代人类社会的影响 人工智能在我们的生活中早已是随处可见,例如,大多数智能手机上都有的语音助手,使用搜索引擎时跳出的快捷项等。人工智能也对社会生产产生众多影响,例如,富士康每年计划打造1万台机器人同时裁掉6万员工,报社使用人工智能进行简单的新闻编辑,甚至有机构在研发已在研发能写药物处方的算法。“技术的社会价值可以表现为积极的正面价值,推动社会发展增进人类幸福,但也可以表现为消极的负面价值,给社会带来诸多风险。”[2]人工智能在初步发展阶段会极大的造福人类,这也正是人类研发其的原因,但也有人担心现阶段人工智能带来的问题,如失业,对科技的依赖等。首先,对于失业,新闻编辑,富士康员工,药师等人员所做的重复性工作由人工智能代替可以把人类从繁重的劳动中解放出来,提高生产生活的效率和质量。被替换掉的人力资源可以进行更高级的生产,促进社会进步。当年工业化刚开始的时候也曾出现过这样的忧虑,现在看来那时的忧虑完全没有必要,现在情况依旧如此。当然让人们放弃熟悉的事物做出改变是比较困难的,却也是无法违背的。其次,对科技的过分依赖,生活中经常听到不要过度的使用手机这类“善良”的劝告,但在我看来,经常使用手机是必须的。手机是当前人与人连接最高效的方式,在信息时代线上生存是大势所趋,如有必要,时刻保持在线。现在只是处于过渡阶段,虽然人们已经通过手机连接,但线下生活依旧是主流,所以在习惯于线下生活的较年长人的眼里,花费大量时间看手机是不务正业。认识趋势,看到趋势,顺应趋势才是明智得做法。所以老师们不应徒劳的去劝说同学们上课不要看手机,而应积极地结合趋势寻找新的传授知识的

游戏人工智能实验报告四

实验四有限状态机实验 实验报告 一、实验目的 通过蚂蚁世界实验掌握游戏中追有限状态机算法 二、实验仪器 Windows7系统 Microsoft Visual Studio2015 三、实验原理及过程 1)制作菜单 设置参数:点击会弹出对话框,设置一些参数,红、黑蚂蚁的家会在地图上标记出来 运行:设置好参数后点击运行,毒药、食物、水会在地图上随机显示 下一步:2只红蚂蚁和2只黑蚂蚁会随机出现在地图上,窗口右方还会出现红、黑蚂蚁当前数量的统计 不断按下一步,有限状态机就会不断运行,使蚁群产生变化 2)添加加速键 资源视图中 下方

选择ID和键值 3)新建头文件def.h 在AntView.cpp中加入#include"def.h" 与本实验有关的数据大都是在这里定义的 int flag=0; #define kForage 1 #define kGoHome 2 #define kThirsty 3 #define kDead 4 #define kMaxEntities 200 class ai_Entity{ public: int type; int state; int row; int col; ai_Entity(); ~ai_Entity() {} void New (int theType,int theState,int theRow,int theCol); void Forage(); void GoHome(); void Thirsty(); void Dead(); }; ai_Entity entityList[kMaxEntities]; #define kRedAnt 1 #define kBlackAnt 2

人工智能结课论文

内蒙古科技大学2014/2015 学年第一学期《人工智能》结课报告 课程号:76807376-01 考试方式:结课报告 使用专业、年级:计算机应用2012-3,4 任课教师:陈淋艳 班级:12级计算机3班 学号:1276807336 姓名:王志鹏

目录 前言 (3) 一、专家系统简介 (4) 二、关键字: (5) 三、专家系统概念和理论 (6) 四、专家系统的发展概况 (7) 五、专家系统的应用分析 (8) 六、专家系统的发展前景 (12) 七、专家系统的总结 (13) 八、学习心得 (14) 参考文献 (15)

前言 人工智能是经过40多年发展起来的一门综合性学科,它旨在研究如何利用计算机等现代工具设计模拟人类智能行为的系统。在众多的人工智能应用领域中,专家系统是30多年来发展起来的一种最具代表性的智能应用系统,它旨在研究如何设计基于知识的计算机程序系统来模拟人类专家求解专门问题的能力。专家系统是人工智能中最活跃的一个分支,是人工智能发展最重要的推动力。 由于人类对自身的思维规律和智能行为仍在探索中,因此,人工智能与专家系统仍然是一门开放的年轻学科。近几年来,人工智能与专家系统的研究越来越深入,新的思想、新的理论以及新的方法与技术不断涌现,新的研究成果不断充实着这一研究领域,尤其是模糊逻辑与神经网络及其结合的研究已成为当前人工智能或智能模拟的重要研究方向,学术论文数以千计,应用成果迭出。

一、专家系统简介 摘要:自从1965年世界上第一个专家系统DENDRAL问世以来,专家系统的技术和应用,在短短的30年间获得了长足的进步和发展。特别是20世纪80年代中期以后,随着知识工程技术的日渐丰富和成熟,各种各样的实用专家系统如雨后春笋般地在世界各地不断涌现。构建专家系统用到的思维方式可能是各种认知工具中最难的,因为它需要形式推理与逻辑推理,建构专家系统需要智力上的参与和挑战。本文首先介绍了专家系统的概念和理论及发展概况,并着重分析他们的应用和发展前景。

人工智能课程报告

武汉轻工大学数计学院《人工智能》课设报告 名称:人工智能算法的应用 班级:信计1201 姓名:张相军 学号:1205130122 指导教师:曾山 学年学期:2015 ~ 2016 学年第一学期 2015 年12 月11 日

目录 1知识简介 (3) 2发展概况 (4) 3研究与应用 (5) 4遗传算法的研究 (6) 5实验结果 (7) 6课设总结 (8) 7附录文件 (9)

1知识简介 人工智能概述 人工智能(Artificial Intelligence,简称AI),是相对自然人的天然智能而言,即用人工的方法和技术,模仿、延伸和扩展人的智能,实现某些“机器思维”。 作为计算机学科的一个重要分支,是由McCarthy 于1956 年在Dartmouth 学会上正式提出,在当前被人们称为世界三大尖端技术之一。美国斯坦福大学著名的人工智能研究中心尼尔逊(Nilson)教授这样定义人工智能“人工智能是关于知识的学科——怎样表示知识以及怎样获得知识并使用知识的学科”,另一名著名的美国大学MIT的Winston 教授认为“人工智能就是研究如何使计算机去做过去只有人才能的智能的工作”。除此之外,还有很多关于人工智能的定义,今尚未统一,但这些说法均反映了人工智能学科的基本思想和基本容,由此可以将人工智能概括为研究人类智能活动的规律,构造具有一定智能行为的人工系统。2发展概况 人工智能( Artificial Intelligence)自1956 年正式问世以来的五十年间已经取得了长足的进展, 由于其应用的极其广泛性及存在的巨大研究开发潜力, 吸引了越来越多的科技工作者投入人工智能的研究中去。尤其是八十年代以来出现了世界范围的开发新技术的高潮, 许多发达国家的高科技计划的重要内容是计算机技术, 而尤以人工智能为其基本重要组成部分。人工智能成为国际公认的当代高技术的核心部分之一。 人工智能的发展历史 自古以来,人类就力图根据自己的认识水平和当时的技术条件,企图用机器来代替人的部分脑力劳动,以提高征服自然的能力。公元850 年,古希腊就有制造机

人工智能课程设计报告-n皇后问题解读

人工智能课程设计报告 课班姓学程:人工智能课程设计报告级 : 名: 号: 指导教师:赵曼 2015年11月

人工智能课程设计报告 人工智能课程设计报告 课程背景 人工智能(Artificial Intelligence),英文缩写为AI。它是研究、开发用于模拟、延伸和扩展人的智能的理论、方法、技术及应用系统的一门新的技术科学。人工智能是计算机科学的一个分支,它企图了解智能的实质,并生产出一种新的能以人类智能相似的方式做出反应的智能机器,该领域的研究包括机器人、语言识别、图像识别、自然语言处理和专家系统等。人工智能从诞生以来,理论和技术日益成熟,应用领域也不断扩大,可以设想,未来人工智能带来的科技产品,将会是人类智慧的“容器”。 人工智能是对人的意识、思维的信息过程的模拟。人工智能不是人的智能,但能像人那样思考、也可能超过人的智能。 人工智能是一门极富挑战性的科学,从事这项工作的人必须懂得计算机知识,心理学和哲学。人工智能是包括十分广泛的科学,它由不同的领域组成,如机器学习,计算机视觉等等,总的说来,人工智能研究的一个主要目标是使机器能够胜任一些通常需要人类智能才能完成的复杂工作。但不同的时代、不同的人对这种“复杂工作”的理解是不同的。 人工智能是计算机学科的一个分支,二十世纪七十年代以来被称为世界三大尖端技术之一(空间技术、能源技术、人工智能)。也被认为是二十一世纪三大尖端技术(基因工程、纳米科学、人工智能)之一。这是因为近三十年来它获得了迅速的发展,在很多学科领域都获得了广泛应用,并取得了丰硕的成果,人工智能已逐步成为一个独立的分支,无论在理论和实践上都已自成一个系统。 人工智能是研究使计算机来模拟人的某些思维过程和智能行为(如学习、推理、思考、规划等)的学科,主要包括计算机实现智能的原理、制造类似于人脑智能的计算机,使计算机能实现更高层次的应用。人工智能将涉及到计算机科学、心理学、哲学和语言学等学科。可以说几乎是自然科学和社会科学的所有学科,其范围已远远超出了计算机科学的范畴,人工智能与思维科学的关系是实践和理论的关系,人工智能是处于思维科学的技术应用层次,是它的一个应用分支。从思维观点看,人工智能不仅限于逻辑思维,要考虑形象思维、灵感思维才能促进人工智能的突破性的发展,数学常被认为是多种学科的基础科学,数学也进入语言、思维领域,人工智能学科也必须借用数学工具,数学不仅在标准逻辑、模糊数学等范围发挥作用,数学进入人工智能学科,它们将互相促进而更快地发展。

人工智能及其航天应用课程报告

南京航空航天大学 课程报告 《人工智能及其航天应用》题目 学生姓名 学号 学院 专业 班级 教师 二〇一三年十二月

人工智能 摘要:人工智能是研究使计算机来模拟人的某些思维过程和智能行为(如学习、推理、思考、规划等)的学科,主要包括计算机实现智能的原理、制造类似于人脑智能的计算机,使计算机能实现更高层次的应用。人工智能将涉及到计算机科学、心理学、哲学和语言学等学科。可以说几乎是自然科学和社会科学的所有学科,其范围已远远超出了计算机科学的范畴,人工智能与思维科学的关系是实践和理论的关系,人工智能是处于思维科学的技术应用层次,是它的一个应用分支。从思维观点看,人工智能不仅限于逻辑思维,要考虑形象思维、灵感思维才能促进人工智能的突破性的发展,数学常被认为是多种学科的基础科学,数学也进入语言、思维领域,人工智能学科也必须借用数学工具,数学不仅在标准逻辑、模糊数学等范围发挥作用,数学进入人工智能学科,它们将互相促进而更快地发展。 关键词:发展历史及现状;应用;影响; 0 引言 人工智能(Artificial Intelligence,简称AI)是计算机学科的一个分支,二十世纪七十年代以来被称为世界三大尖端技术之一(空间技术、能源技术、人工智能)。也被认为是二十一世纪(基因工程、纳米科学、人工智能)三大尖端技术之一。这是因为近三十年来它获得了迅速的发展,在很多学科领域都获得了广泛应用,并取得了丰硕的成果,人工智能已逐步成为一个独立的分支,无论在理论和实践上都已自成一个系统。 1 人工智能的发展历史与现状 关于“人工智能”的起源,我们要追溯到公元前三百多年的历史伟人——古希腊伟大的哲学家、思想家 Aristotle(亚里士多德)(公元前 384-322),他的主要贡献是为形式逻辑奠定了基础。形式逻辑是一切推理活动的最基本的出发点。在他的代表作《工具论》中,就给出了形式逻辑的一些基本规律,如矛盾律、排中律,并且实际上已经提到了同一律和充足理由律。此外,亚里士多得还研究了概念、判断问题,以及概念的分类和概念之间的关系,判断问题的分类和它们之间的关系。其最著名的创造就是提出人人熟知的三段论。亚里士多德虽没有明确提出“人工智能”的概念,但概念却在此悄悄的萌芽。随后穿越到英国数学家 Turing(图灵)(1912-1954),1936 年提出了一种理想计算机的数学模型(图灵机),1950 年提出了图灵试验,发表了"计算机与智能"的论文。当今世界上计算机科

人工智能实验报告大全

人工智能课内实验报告 (8次) 学院:自动化学院 班级:智能1501 姓名:刘少鹏(34) 学号: 06153034

目录 课内实验1:猴子摘香蕉问题的VC编程实现 (1) 课内实验2:编程实现简单动物识别系统的知识表示 (5) 课内实验3:盲目搜索求解8数码问题 (18) 课内实验4:回溯算法求解四皇后问题 (33) 课内实验5:编程实现一字棋游戏 (37) 课内实验6:字句集消解实验 (46) 课内实验7:简单动物识别系统的产生式推理 (66) 课内实验8:编程实现D-S证据推理算法 (78)

人工智能课内实验报告实验1:猴子摘香蕉问题的VC编程实现 学院:自动化学院 班级:智能1501 姓名:刘少鹏(33) 学号: 06153034 日期: 2017-3-8 10:15-12:00

实验1:猴子摘香蕉问题的VC编程实现 一、实验目的 (1)熟悉谓词逻辑表示法; (2)掌握人工智能谓词逻辑中的经典例子——猴子摘香蕉问题的编程实现。 二、编程环境 VC语言 三、问题描述 房子里有一只猴子(即机器人),位于a处。在c处上方的天花板上有一串香蕉,猴子想吃,但摘不到。房间的b处还有一个箱子,如果猴子站到箱子上,就可以摸着天花板。如图1所示,对于上述问题,可以通过谓词逻辑表示法来描述知识。要求通过VC语言编程实现猴子摘香蕉问题的求解过程。 图1 猴子摘香蕉问题 四、源代码 #include unsigned int i; void Monkey_Go_Box(unsigned char x, unsigned char y) {

人工智能结课论文解读

小论知识与知识表示方法 摘要: 知识是人们在生产生活中经常使用的词汇,知识表示的过程是用一些约定的符号把知识编码成计算机可以接受的数据形式。知识的表示方法例如一阶谓词逻辑表示法,产生式表示法,语义网络表示法,框架表示法和过程规则表示法等等。目前,产生式表示法已经成了人工智能中应用最多的一种知识表示模式,尤其是在专家系统方面,产生式的基本形式P→Q 或者 IF P THEN QP是产生式的前提,也称为前件,它给出了该产生式可否使用的先决条件,由事实的逻辑组合来构成;Q是一组结论或操作,也称为产生式的后件,它指出当前题P 满足时,应该推出的结论或应该执行的动作。 关键字:知识;知识表示;产生式表示法 引言: 知识和知识表示方法是人们生活中必不可少的一部分,知识表示能力是指知识表示方法能否正确、有效地将推理所需要的各种知识表示出来,这是对知识表示方法的最为重要的要求。因为产生式表示方法的自然性,有效性,一致性获得了所有人的肯定,成为构造专家系统的第一选择的知识表示方法。

正文: 1、知识 1.1知识的定义 知识是经过筛选和整理的信息,是对事物运动变化规律的表述,是人类对客观世界一种较为准确、全面的认识和理解。 1.2知识的特性 1)真假性及其相对性 2)不确定性 3)矛盾性或相容性 4)可表示性与可利用性 1.3知识的分类 1)叙述型知识,有关系统状态、环境、条件和问题的概念、定义和事实的知识。 2)过程型知识,有关系统变化、问题求解过程的操作、演算和运动的知识。 3)控制型知识,有关如何选择相应的操作、演算和行动的比较、判断、管理和决策的知识。 2、知识表示方法——产生式表示方法 “产生式”由美国数学家波斯特(E.POST)在1943年首先提出,它根据串代替规则提出了一种称为波斯特机的计算模型,模型中的每条规则称为产生式。 2.1产生式规则

人工智能论文

重庆理工大学 专业选修课课程考查报告 《AI的发展与未来》 课程名称:《人工智能及应用》 专业:软件工程 学号: 学生姓名: 提交时间:2017年5月5日

进入人工智能 人工智能的话题,在近年尤其火热,很多人是因为在2016年看到AlphaGo打败了世界围棋冠军李世石。这使得大家对人工智能非常感兴趣,同时也有很多人思考人工智能是否应该继续无节制地发展下去?人们会担忧将来人工智能发展到一定的高度可能会取代人类。包括霍金、比尔·盖茨这样伟大的人物也怀疑人工智能。 我们谁都无法下结论说到底该不该发展人工智能,所以我们先来了解一下什么是人工智能,否则我们只会在对人工智能的恐惧中无法获得理性认知。 人工智能似乎没有明确的定义。人工智能就是研究如何使计算机去做过去只有人才能做的智能工作[1],这是美国麻省理工学院的温斯顿教授认为的人工智能。人工智能大概来说可能是有几个部分,首先是感知,感知是包括视觉、语音、语言;然后是决策,做一些预测,做一些判断;那当然如果你要做一套完整的系统,就像机器人或是自动驾驶,它会需要一个反馈[2]。 人工智能的发展 通过了解人工智能发展的主要里程碑,可能会更加直观的了解人工智能。在感知方面,比如我国的科大讯飞。该企业使命是让机器能听会说,能理解会思考;用人工智能建设美好世界[3]。正如他们的企业使命,讯飞语音识别软件现在已经能听懂人们所说的,而且正确率相当高,如果要打很多字完全可以不动手,直接念一遍就都以文字的形式输出来。以前电视里播的现场直播都是没有字幕的,现在已经可以在直播的时候也可以看到实时字幕。可见语音识别给我们带来了巨大的便利。还如微软的小冰,你可以在微信关注她,并且同她聊天,还可以和她语音聊天,她甚至可以为你唱歌。现在小冰会的东西越来越多,也越来越智能。 决策方面,从早期MicrosoftOffice里的工具到Google广告的推荐,然后到金融行业的很多智能决策公司的出现,进步迅速。现在的gamil,有时候收到email,Google会跳出来问要不要发回复,有时候它连回复都帮你写好了,而且写的很精确。这也是人工智能的体现。可能以后我们讲话都不用,助理能帮我们搞定。最后是反馈,比如无人驾驶汽车,它通过车载传感系统感知道路环境,并根据感知所获得的道路、车辆位置和信息,控制车辆的转向和速度,自动规划行车路线并控制车辆到达预定目标的。从而使车辆能够安全、可靠地在道路上行驶。 深度学习及其应用领域 提到人工智能就不得不提深度学习,它是一种神经网络,它的特点是使用了多层网络,能够学习抽象概念,同时融入自我学习,而且收敛相对快速。收敛快速可能是一种技巧,不见得是一个理论,但是有一批人通过它解决了很多重要的问题。简单的来说,如果我们有很多笑脸,然后我们把笑脸的像素输入到一个神经网络里面去,最后你那儿希望让机器能识别这是姚明,那是马云,但是因为你这个深度学习的网络很深,要一次性学会这么多也会比较困难,所以就需要用到一个比较快速收敛的技巧——自我学习。通过自我学习,机器会逐步从大量的样本中逐层抽象出相关的概念,然后做出理解,最终做出判断和决策。深度学习或者是任何的机器学习,它是不是超越人类的能力表现,如果超越的话,可能很多应用就会产生。比如在机场,如果机器识别人脸的准确度超过人,那么那些边防的人就可能不需要那么多。这并不是说机器不会犯错,而是说既然人不能比机器做的更好,那不妨就用机器取代。

人工智能结课报告

结课报告 课程名称:人工智能 学院:信息工程与自动化学院 专业:物联网工程 年级:2013级 学号:201310107125 学生姓名:王子龙 指导教师:吴霖 日期:2014年12月28日 教务处制

智能家居 摘要 智能家居是在互联网影响之下物联化的体现。智能家居通过物联网技术将家中的各种设备(如音视频设备、照明系统、窗帘控制、空调控制、安防系统、数字影院系统、影音服务器、影柜系统、网络家电等)连接到一起,提供家电控制、照明控制、电话远程控制、室内外遥控、防盗报警、环境监测、暖通控制、红外转发以及可编程定时控制等多种功能和手段。与普通家居相比,智能家居不仅具有传统的居住功能,兼备建筑、网络通信、信息家电、设备自动化,提供全方位的信息交互功能,甚至为各种能源费用节约资金。 智能家居的概念起源很早,但一直未有具体的建筑案例出现,直到1984年美国联合科技公司(United Technologies Building System)将建筑设备信息化、整合化概念应用于美国康涅狄格州(Connecticut)哈特佛市(Hartford)的CityPlaceBuilding时,才出现了首栋的“智能型建筑”,从此揭开了全世界争相建造智能家居派的序幕。 应用价值 随着物联网技术的日益发展,依照物联网技术发展的新兴产业智能家居以住宅为平台,通过物联网、云计算、无线通讯等新技术,将照明、门窗、家电、安防等家居设施集,从而构建高效的住宅设施家庭日程事务的管理系统,并为用户营造安全、健康、舒适的家居生活环境。家居与人们的生活息息相关,所以比传统家居更具优势的智能家居也为人所称道,走进千家万户也是势在必行。 难点 1、用户搞不懂智能家居的概念 2、“智能家居产品太贵了” 3、安全隐患 收获 近年来智能家居行业发展迅速,所以对于行业标准的制定非常重要,1979年,美国的斯坦福研究所提出了将家电及电气设备的控制线集成在一起的家庭总线(HOMEBUS), 并成立了相应的研究会进行研究,1983年美国电子工业协会组织专门机构开始制定家庭电气设计标准,并于1988年编制了第一个适用于家庭住宅的电气设计标准,即:《家庭自动化系统与通讯标准》,也有称之为家庭总线系统标准(HBS,Home Bus System)。在其制定的设计规范与标准中,智能住宅的电气设计要求必须满足以下三个条件,即: 1.具有家庭总线系统; 2.通过家庭总线系统提供各种服务功能; 3.能和住宅以外的外部世界相连接。 物联传感技术是全球第一个利用物联网来控制灯饰及电子电器产品(我们通称为zigbee产品),并将其作为智能家居主流产品走向了商业化。ZigBee最初预计的应用领域主要包括消费电子、能源管理、卫生保健、家庭自动化、建筑自动化和工业自动化。这种技术低功耗、

人工智能深度优先算法课程设计报告

人工智能课程报告 题目: 深 度 优 先 算 法 班级:XXXXXXXXXXX 学号:XXXXXXXXXXX 姓名:XXXXXXXXXXX

【摘要】结合生活中解决搜索问题所常用的思考方法与解题方法,从深度优先探讨了提高程序效率的适用技巧。 【关键词】1搜索顺序;2搜索对象;3搜索优化; 一、深度优先搜索的优化技巧 我们在做事情的时候,经常遇到这类问题——给出约束条件,求一种满足约束条件的方案,这类问题我们叫它“约束满足”问题。对于约束满足问题,我们通常可以从搜索的顺序和搜索的对象入手,进而提高程序的效率。 二、搜索的顺序及对象: 在解决约束满足问题的时候,问题给出的约束条件越强,对于搜索就越有利。之所以深度优先搜索的效率在很大程度上优于穷举,就是因为它在搜索过程中很好的利用了题目中的约束条件进行优化,达到提高程序效率的目的。 显然,在同样的一棵搜索树中,越在接近根接点的位置利用约束条件优化效果就越好。如何在搜索中最大化的利用题目的约束条件为我们提供剪枝的依据,是提高深度优先搜索效率的一个很重要的地方。而不同的搜索顺序和搜索对象就直接影响到我们对于题目约束条件的运用。 三、搜索特点 1.由于深度搜索过程中有保留已扩展节点,则不致于重复构造不必要的子树系统。 2.深度优先搜索并不是以最快的方式搜索到解,因为若目标节点在第i层的某处,必须等到该节点左边所有子树系统搜索完毕之后,才会访问到该节点,因此,搜索效率还取决于目标节点在解答树中的位置。

3.由于要存储所有已被扩展节点,所以需要的内存空间往往比较大。 4.深度优先搜索所求得的是仅仅是目前第一条从起点至目标节点的树枝路径,而不是所有通向目标节点的树枝节点的路径中最短的路径。 5.适用范围:适用于求解一条从初始节点至目标节点的可能路径的试题。若要存储所有解答路径,可以再建立其它空间,用来存储每个已求得的解。若要求得最优解,必须记下达到目前目标的路径和相应的路程值,并与前面已记录的值进行比较,保留其中最优解,等全部搜索完成后,把保留的最优解输出。 四、算法数据结构描述 深度优先搜索时,最关键的是结点扩展(OPEN)表的生成,它是一个栈,用于存放目前搜索到待扩展的结点,当结点到达深度界限或结点不能再扩展时,栈顶结点出栈,放入CLOSE表(存放已扩展节点),继续生成新的结点入栈OPEN 表,直到搜索到目标结点或OPEN栈空为止。 具体算法如下: ①把起始结点S放到非扩展结点OPEN表中(后进先出的堆栈),如果此结点为一目标结点,则得到一个解。 ②如果OPEN为一空表,则搜索失败退出。 ③取OPEN表最前面(栈顶)的结点,并把它放入CLOSED的扩展结点表中,并冠以顺序编号n。 ④如果结点n的深度等于最大深度,则转向2。 ⑤否则,扩展结点n,产生其全部子结点,把它们放入OPEN表的前头(入栈),并配上指向n的返回指针;如果没有后裔,则转向2。 ⑥如果后继结点中有任一个为目标结点,则求得一个解,成功退出;否则,转向2。

人工智能实验报告

实验报告 1.对CLIPS和其运行及推理机制进行介绍 CLIPS是一个基于前向推理语言,用标准C语言编写。它具有高移植性、高扩展性、 强大的知识表达能力和编程方式以及低成本等特点。 CLIPS由两部分组成:知识库、推理机。它的基本语法是: (defmodule< module-n ame >[< comme nt >]) CLIPS的基本结构: (1).知识库由事实库(初始事实+初始对象实例)和规则库组成。 事实库: 表示已知的数据或信息,用deftemplat,deffact定义初始事实表FACTLIS,由关系名、后跟 零个或多个槽以及它们的相关值组成,其格式如下: 模板: (deftemplate [] *) :: = | 事实: (deffacts [] *) 当CLIPS系统启动推理时,会把所有用deffact定义的事实自动添加到工作存储器中。常用命令如下:asser:把事实添加到事实库(工作存储器)中retract:删除指定事实 modify :修改自定义模板事实的槽值duplicate :复制事实 clear:删除所有事实 规则库 表示系统推理的有关知识,用defrule命令来定义,由规则头、后跟零个或多个条件元素以 及行为列表组成,其格式如下: (defrule [] * ; =>

相关文档
相关文档 最新文档