注册 | 登录读书好,好读书,读好书!
读书网-DuShu.com
当前位置: 首页出版图书科学技术计算机/网络游戏设计游戏编程中的人工智能技术

游戏编程中的人工智能技术

游戏编程中的人工智能技术

定 价:¥39.00

作 者: (美)布克兰德(BuckLand, M.)著
出版社: 清华大学出版社
丛编项: 游戏开发经典丛书
标 签: 人工智能 游戏 应用 软件设计

ISBN: 9787302125990 出版时间: 2006-05-01 包装: 胶版纸
开本: 小16开 页数: 296 字数:  

内容简介

  《游戏编程中的人工智能技术》是人工智能游戏编程的一本指南性读物,介绍在游戏开发中怎样应用遗传算法和人工神经网络来创建电脑游戏中所需要的人工智能。书中包含了许多实用例子,所有例子的完整源码和可执行程序都能在随书附带的光盘上找到。光盘中还有不少其他方面的游戏开发资料和一个赛车游戏演示软件。《游戏编程中的人工智能技术》适合遗传算法和人工神经网络等人工智能技术的各行业人员,特别是要实际动手做应用开发的人员阅读参考。《游戏编程中的人工智能技术》是人工智能游戏编程的一本指南性读物,介绍在游戏开发中怎样应用遗传算法和人工神经网络来创建电脑游戏中所需要的人工智能。书中包含了许多实用例子,所有例子的完整源码和可执行程序都能在随书附带的光盘上找到。光盘中还有不少其他方面的游戏开发资料和一个赛车游戏演示软件。《游戏编程中的人工智能技术》讲解的原理通俗易懂,介绍程序详细周到,很适用于游戏编程者自学之用,也可以作为游戏培训教材使用(《游戏编程中的人工智能技术》实际已被国内外许多游戏培训单位用作指定教材)。对于任何希望了解遗传算法和人工神经网络等人工智能技术的各行业人员,特别是要实际动手做应用开发的人员,都是一本值得一读的好书。

作者简介

  Mat Buckland在伦敦大学学完计算机科学后,做过多年的风险管理咨询顾问。终于他开始厌倦了所有的金钱游戏和公司制度,就一把火烧掉了他原有的公司礼服,跑到一家为Gremlin software开发游戏的公司工作。虽然薪水少得多,但是却很有趣,而且他可以每天穿牛仔裤去上班了!现在Mat同时是一个自由程序员和人工智能咨询顾问。自从20世纪80年代初第一次接触到这些技术,他就对进化计算和AI尤感兴趣。他是ai-iunkie.com网站(www.ai-junkie.com)的作者,该网站提供一些有关进化算法的教程和建议。

图书目录

第1篇  Windows编程
第1章  Windows概述    2
1.1  历史一瞥(A Little Bit of History)    2
1.1.1  Windows 1.0    2
1.1.2  Windows 2.0    3
1.1.3  Windows 3.0和3.1    3
1.1.4  Windows 95    4
1.1.5  Windows 98及其后续版本    4
1.2  Hello World!    4
1.3  第一个Windows程序    5
1.3.1  匈牙利表示法    8
1.3.2  第一个窗口    10
1.3.3  Windows消息循环    15
1.3.4  Windows过程    17
1.3.5  键盘输入    22
第2章  Windows编程进阶    25
2.1  Windows图形设备接口    25
2.1.1  设备描述表    26
2.1.2  各种绘图工具:画笔、画刷、颜色、线和形状    27
2.2  文本    38
2.2.1  TextOut    38
2.2.2  DrawText    39
2.2.3  加入颜色和透明度    39
2.2.4  实时消息抽取循环    40
2.3  如何创建后备缓冲    42
2.3.1  如何实现双缓冲    43
2.3.2  如何使用后备缓冲器    45
2.3.3  保持干净    47
2.4  使用资源    48
2.4.1  图标    49
2.4.2  光标    50
2.4.3  菜单    51
2.4.4  为菜单添加具体功能    52
2.5  对话框    53
2.5.1  一个简单的对话框    53
2.5.2  一些更有用的知识    56
2.6  正确定时    59
2.7  总结    60
第2篇  遗传算法
第3章  遗传算法入门    62
3.1  鸟和蜜蜂    62
3.2  二进制数速成    66
3.3  计算机内的进化    67
3.3.1  什么是赌轮选择法    68
3.3.2  杂交率    69
3.3.3  变异率    69
3.3.4  建议的学习方法    69
3.4  帮助Bob回家    70
3.4.1  为染色体编码    72
3.4.2  Epoch(时代)方法    75
3.4.3  参数值选择    77
3.4.4  算子函数    78
3.4.5  运行寻路人程序    80
3.4.6  二进制数转换3个问题的答案    80
3.5  练习    81
第4章  置换码与巡回销售员问题    82
4.1  巡回销售员问题    82
4.1.1  小心陷阱    83
4.1.2  CmapTSP,Sgenome,CgaTSP    85
4.2  置换杂交操作    90
4.3  交换变异操作    93
4.4  选择一个适应性函数    93
4.5  选择    95
4.6  把一切组合在一起    95
4.7  总结    97
4.8  练习    98
第5章  遗传算法优化    99
5.1  TSP用的各种算子    100
5.1.1  各种置换变异算子    100
5.1.2  各种置换杂交算子    104
5.2  各种处理工具    108
5.2.1  选择技术    110
5.2.2  变比技术    113
5.2.3  其他杂交算子    117
5.2.4  子群技术    119
5.3  总结    120
5.4  练习    120
第6章  登月也不难    121
6.1  创建和处理矢量图形    121
6.1.1  顶点和顶点缓冲    122
6.1.2  顶点变换    123
6.1.3  矩阵    128
6.2  矢量    132
6.2.1  矢量加、减法    133
6.2.2  计算矢量大小    134
6.2.3  矢量的数乘    135
6.2.4  矢量的规范化    135
6.2.5  矢量分解    136
6.2.6  矢量的点积    137
6.2.7  SVector2D实用工具类    137
6.3  相关的物理知识    138
6.3.1  时间    138
6.3.2  长度    138
6.3.3  质量    138
6.3.4  力    139
6.3.5  运动-速度    139
6.3.6  运动-加速度    140
6.3.7  力、质量、加速度三者的关系    142
6.3.8  引力    142
6.4  人工控制的登月工程    143
6.4.1  Ccontroller类的定义    143
6.4.2  CLander类的定义    144
6.4.3  UpdateShip函数    146
6.5  遗传算法控制的登月飞船    149
6.5.1  为基因组编码    150
6.5.2  杂交和变异操作    151
6.5.3  适应性函数    152
6.5.4  更新函数    153
6.5.5  运行程序    155
6.6  总结    156
6.7  习题    156
第3篇  神经网络
第7章  神经网络概述    158
7.1  神经网络介绍    158
7.2  一个生物学的神经网络——大脑    159
7.3  数字版的神经网络    161
7.3.1  相关的数学知识    162
7.3.2  神经细胞的用途    163
7.4  扫雷机游戏    165
7.4.1  选择输出    166
7.4.2  选择输入    168
7.4.3  确定隐藏的神经细胞数目    169
7.4.4  CNeuralNet.h(神经网络类的头文件)    169
7.4.5  神经网络的编码    174
7.4.6  遗传算法    175
7.4.7  扫雷机类    176
7.4.8  CController Class(控制器类)    179
7.4.9  运行此程序    184
7.4.10  功能的两个改进    184
7.5  总结    188
7.6  练习    188
第8章  为机器人提供知觉    190
8.1  回避障碍物    190
8.1.1  探测环境    191
8.1.2  适应性函数    193
8.2  为机器人提供记忆器    195
8.3  总结    201
8.4  练习    202
第9章  有监督的训练方法    203
9.1  异或函数    203
反向传播的工作原理    204
9.2  RecognizeIt——鼠标手势的识别    213
9.2.1  用向量表示一个手势    214
9.2.2  训练网络    215
9.2.3  记录并变换鼠标数据    216
9.2.4  增加新手势    218
9.2.5  控制器类    218
9.3  一些有用的技术和技巧    221
9.3.1  增加动量    221
9.3.2  过拟合    222
9.3.3  柔性最大激励函数    223
9.4  监督学习的应用    224
9.5  一个现代寓言    225
9.6  练习    226

第10章  实时演化    227
10.1  外星人游戏    227
10.1.1  程序实现    228
10.1.2  运行BrainyAliens程序    238
10.2  练习    239
第11章  演化神经网络的拓扑    240
11.1  竞争约定问题    240
11.2  直接编码    242
11.2.1  基因子    242
11.2.2  二进制矩阵编码    242
11.2.3  基于节点的编码    244
11.2.4  基于路径的编码    246
11.3  间接编码    247
11.3.1  基于语法的编码    247
11.3.2  二维生长编码    248
11.4  拓扑扩张的神经演化    249
11.4.1  NEAT基因组    250
11.4.2  算子和创新    255
11.4.3  物种形成    271
11.4.4  Cga换时代方法    275
11.4.5  将基因组转变为表现型    280
11.4.6  运行Demo程序    286
11.5  总结    288
11.6  练习    288
附录A  WEB资源    289
附录B  参考书目及推荐读物    291
附录C  光盘中的内容    295
后记    297

本目录推荐