实验设计三(基于AI的问题求解).docVIP

  1. 1、本文档共15页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多

—PAGE10—

—PAGE14—

北京信息科技大学

实验设计报告

课程名称面向对象程序设计实验设计

题目基于AI的问题求解

指导教师李春强

设计起止日期2007-8-27

设计地点小营校区计算机中心

系别计算机信息系统系

专业信息安全

学生姓名宋君易

班级/学号信安09012009012221

成绩___________________

课程设计目的:

通过本实验使学生利用面向对象程序设计软件开发方法,即软件开发过程划分为明显的几个阶段:问题分析和功能定义、对象设计及实现、核心控制设计、编码与测试、进化等实现AI的DFS和BFS的应用。

课程设计内容:

在此应用示例中要讲述一个有趣的程序设计主题:人工智能(AI)。

人工智能的领域由几个引人注目的部分组成,但许多基于AI的应用程序的基础是问题求解。本质上,存在两类问题。第一类问题是可以用来求解确定性问题的;另一类问题是只有通过寻找一个解决方案来解决。AI所关心的正是后一类问题的解决方案,即此应用示例要解决的有哪些信誉好的足球投注网站类型。

请分别采用以下有哪些信誉好的足球投注网站方法实现:

(1)深度优先有哪些信誉好的足球投注网站

(2)广度优先有哪些信誉好的足球投注网站

课程设计要求:

现在,考虑我们将使用不同的有哪些信誉好的足球投注网站方法来解决的问题。假定您是一位旅行代理人,一个相当挑剔的客户想让您预定A航空公司的从纽约到洛杉矶的航班。您告诉客户A航空公司没有直接从纽约到洛杉矶的航班,但客户坚持说,A航空公司是他唯一想要乘坐的飞机的航空公司。因此,您必须寻找连接纽约和洛杉矶之间的航线。您可参考A航空公司的定期航班,如表3-1所示。

从上表中不难看出从纽约到洛杉矶的连接。问题在于如何利用C++程序实现它。

为了使得问题易于理解,在图3-1中以树的形式绘制了这幅图。

现在我们准备开发不同的有哪些信誉好的足球投注网站技术(深度优先、广度优先)来查找从纽约到洛杉矶的航线。

(1)深度优先有哪些信誉好的足球投注网站:

①深度优先有哪些信誉好的足球投注网站在尝试另一种路径之前,会探索每条可能的路径,直到结束。

②算法:

如图3-2所示。深度优先有哪些信誉好的足球投注网站按ABDBEBACF顺序遍历。其中A是起点,F是终点。

深度优先有哪些信誉好的足球投注网站是树的中序遍历。即路径一直向左,直到遇到终端节点或者找到目标。如果达到终端节点,路径回退到上一层,转向右边,然后在向左边有哪些信誉好的足球投注网站,直到遇到目标或者终端节点。这个过程一直持续到发现目标或者检查到有哪些信誉好的足球投注网站空间中的最后一个节点。

③main()提示您输入出发城市和目标城市。这意味可使用此程序来寻找任何两个城市之间的航线。

下面是运行结果:

From?NewYork

To?LosAngeles

NewYorktoChicagotoDenverto

Distanceis2900

提示:

正如main()函数显示的那样,为了使用Search,首先创建一个Search对象。然后用这个连接加载航班数据库。随后,调用findroute()试图在出发与目标城市之间寻找一条航线。为了判断是否找到了这样的航线,调用了routefound()函数。若存在这样的航线,这个函数返回true。为了显示这条航线,调用了route()函数。

match()函数实现判断两个城市之间是否有航班,这两个城市分别由from和to指定.

Find()函数用来在数据库中有哪些信誉好的足球投注网站从指定的出发城市开始的连接;

Findroute()函数是寻找两个城市之间航线的关键例程,函数调用时需要出发城市和目标城市的名称;

route()函数显示路径和总的距离。

(2)广度优先有哪些信誉好的足球投注网站

与深度优先有哪些信誉好的足球投注网站相对的是广度优先有哪些信誉好的足球投注网站。在这种方法中,在有哪些信誉好的足球投注网站下一层的节点之前,会检查这个层的每个节点。这种遍历方法如下图所示(红色虚线),C为目标

当涉及到航班示例时,广度优先有哪些信誉好的足球投注网站是通过检查是否存在离开出发城市的航班与到达目标城市的航班之间的连接来实现的。换句话说,在前进到另一层之前,会检查连接航班的所有连接的目的地。

实验条件:

(1)主要设备:586或更高机型,256MB或更高的内存,40G或更大的硬盘。

(2)主要软件:

①操作系统可为Windows9X、WinMe、Win2000或更高版本等;

②开发环境为VC++6.0或者TC++3.0。

(3)参考书目:

①TheArtofC++C++编程艺术作者:(美)斯切尔特(Schildt,H.)著,曹蓉蓉译

清华大学出版社

②《数据结》严蔚敏等编著机械工业出版社2005年第1版

③《数据结构及应用算法教程》严蔚敏等编著清华大学出版社2001年2月第1版

实验方法与步骤:

#includeiostrea

文档评论(0)

clevercatty + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档