PythonAI游戏编程入门:基于Pygame和PyTorch

PythonAI游戏编程入门:基于Pygame和PyTorch

查阅电子书
手机扫码
  • 微信扫一扫

    关注微信公众号

因版权原因待上架

编辑推荐

一本书讲透用Python编程入门游戏开发。

内容简介

本书以Python为开发环境,以小游戏开发为载体,对编程及人工智能技术进行讲解,让读者同时学习编程及人工智能知识。

本书共16章,可分为4个部分。

第1部分为第1~3章,分别是编程、游戏和AI,Python环境准备及Pygame基础知识。

第2部分为第4~7章,分别讲解了贪吃蛇游戏编程、打砖块游戏编程、笨鸟先飞游戏编程和五子棋游戏编程。

第3部分为第8~12章,分别介绍了神经网络和PyTorch基础、蒙特卡罗模拟、强化学习入门、深度强化学习DQN及遗传算法。

第4部分为第13~16章,分布介绍了贪吃蛇AI编程、打砖块AI编程、笨鸟先飞AI编程和五子棋AI编程。

作者简介

作者肖凯,蚂蚁集团大安全事业群算法专家,经济学硕士,长年工作于互联网行业,专注于互联网大数据挖掘和机器学习相关领域的研究。B站“肖老师的退休生活”,不定期更新的UP主,眼下致力于讲解人工智能/游戏设计/批判性思维。目前从事风控算法开发,精通机器学习算法理论和编程应用。

章节目录

版权信息

内容提要

前言

第1章 编程、游戏和AI

1.1 代码的世界

1.2 什么是编程

1.3 什么是AI

1.4 游戏编程和游戏AI

1.4.1 游戏主循环

1.4.2 二维图形显示

1.4.3 输入处理

1.4.4 游戏AI

1.5 本章小结

第2章 Python环境准备和预备知识

2.1 Python编程环境安装

2.2 编写第一个小游戏

2.3 面向对象编程

2.4 使用Python模块

2.4.1 random模块

2.4.2 NumPy模块

2.4.3 matplotlib模块

2.4.4 copy模块

2.4.5 collections模块

2.5 本章小结

第3章 Pygame基础知识

3.1 Pygame的Hello World

3.2 显示图形

3.3 键盘和鼠标交互

3.4 加载图片和文字资源

3.5 增加音效和运动

3.6 连续键盘控制

3.7 碰撞检测

3.8 一个完整的游戏

3.9 本章小结

第4章 贪吃蛇游戏编程

4.1 贪吃蛇游戏介绍

4.1.1 游戏规则

4.1.2 游戏资源

4.2 游戏功能和程序设计

4.2.1 游戏功能

4.2.2 程序设计

4.3 代码实现

4.3.1 模块加载、位置和方向

4.3.2 Snake类

4.3.3 Berry类

4.3.4 Wall类

4.3.5 Game类定义

4.3.6 碰撞检测

4.3.7 绘图输出

4.3.8 游戏主循环

4.4 本章小结

第5章 打砖块游戏编程

5.1 打砖块游戏介绍

5.1.1 游戏规则

5.1.2 游戏资源

5.2 游戏功能和程序设计

5.2.1 游戏功能

5.2.2 程序设计

5.3 打砖块游戏代码实现

5.3.1 Bat类

5.3.2 Ball类

5.3.3 Bricks类

5.3.4 Game类

5.3.5 碰撞检测

5.3.6 绘图输出

5.3.7 游戏主循环

5.4 双人对战游戏

5.5 本章小结

第6章 笨鸟先飞游戏编程

6.1 笨鸟先飞游戏介绍

6.1.1 游戏规则

6.1.2 游戏资源

6.2 游戏功能和程序设计

6.2.1 游戏功能

6.2.2 程序设计

6.3 代码实现

6.3.1 Bird类

6.3.2 Pipe类

6.3.3 Button类

6.3.4 Game类

6.3.5 玩家输入处理

6.3.6 碰撞检测

6.3.7 游戏数据更新

6.3.8 绘图输出

6.3.9 游戏主循环

6.4 本章小结

第7章 五子棋游戏编程

7.1 五子棋游戏介绍

7.1.1 游戏规则

7.1.2 游戏资源

7.2 游戏功能和程序设计

7.2.1 游戏功能

7.2.2 程序设计

7.3 代码实现

7.3.1 Board类

7.3.2 Button类

7.3.3 Board_Area类

7.3.4 Message_Area类

7.3.5 Game类

7.4 本章小结

第8章 神经网络和PyTorch基础

8.1 最优化方法

8.1.1 什么是最优化

8.1.2 梯度下降算法

8.2 PyTorch基础知识

8.2.1 什么是PyTorch

8.2.2 PyTorch的张量操作

8.2.3 自动计算梯度

8.2.4 用PyTorch进行最优化

8.3 神经网络

8.3.1 神经网络是什么

8.3.2 矩形周长问题

8.3.3 用PyTorch解决矩形周长问题

8.3.4 用PyTorch解决矩形面积问题

8.4 使用神经网络玩井字棋游戏

8.5 本章小结

第9章 蒙特卡罗模拟

9.1 什么是随机模拟

9.2 骰子的模拟实验

9.3 硬币的模拟实验

9.4 扑克牌的模拟实验

9.5 使用蒙特卡罗方法玩井字棋游戏

9.6 本章小结

第10章 强化学习入门

10.1 什么是强化学习

10.2 冰湖迷宫问题

10.3 用蒙特卡罗方法解决冰湖问题

10.4 SARSA算法

10.5 Q-Learning算法

10.6 本章小结

第11章 深度强化学习算法DQN

11.1 什么是深度强化学习

11.2 用DQN解决冰湖迷宫问题

11.3 DQN的完整结构和优化

11.4 本章小结

第12章 遗传算法

12.1 什么是遗传算法

12.2 用遗传算法解决最优化问题

12.3 用遗传算法解决背包问题

12.4 用遗传算法训练神经网络

12.5 本章小结

第13章 贪吃蛇游戏AI编程

13.1 整体设计思路

13.2 贪吃蛇游戏环境改造

13.2.1 环境改造思路

13.2.2 改造代码

13.3 AI引擎的设计和编写

13.3.1 DQN回顾

13.3.2 编写AI引擎

13.4 AI环境与AI引擎的组装运行

13.5 本章小结

第14章 打砖块游戏AI编程

14.1 打砖块游戏环境改造

14.1.1 环境改造思路

14.1.2 代码实现

14.2 AI引擎的设计和编写

14.3 AI环境和AI引擎的组装运行

14.4 本章小结

第15章 笨鸟先飞游戏AI编程

15.1 基于DQN的AI引擎

15.1.1 笨鸟先飞游戏代码改造

15.1.2 笨鸟先飞游戏的AI引擎的组装

15.2 基于遗传算法的AI引擎

15.2.1 整体设计思路

15.2.2 Linear_Net类的改造

15.2.3 Bird类的改造

15.2.4 Game类的改造

15.2.5 遗传算法函数编写

15.2.6 算法效果

15.3 本章小结

第16章 五子棋游戏AI编程

16.1 MCTS的整体思路

16.2 MCTS代码实现

16.3 五子棋游戏程序改造

16.4 本章小结

PythonAI游戏编程入门:基于Pygame和PyTorch是2024年由人民邮电出版社出版,作者肖凯。

得书感谢您对《PythonAI游戏编程入门:基于Pygame和PyTorch》关注和支持,如本书内容有不良信息或侵权等情形的,请联系本网站。

购买这本书

你可能喜欢
Python快速编程入门 电子书
Python是一种面向对象、解释性的高*程序语言,它已经被应用在众多领域,包括Web开发、操作系统管理、服务器运维的自动化脚本、科学计算、桌面软件、服务器软件(网络软件)、游戏等方面。本书以Windows为平台,系统全面地讲解了Python3的基础知识,其中,第1章主要是带领读者认识Python;第2章主要针对Python的基础语法进行讲解;第3章主要介绍Python中的常用语句;第4~5章主要介
Scratch3.0少儿游戏趣味编程 电子书
趣味游戏开发,掌握Scratch编程技能。
Scratch 3.0少儿游戏趣味编程2 电子书
本书共8章。第1章带领读者认识Scratch3.0,第2章介绍4款入门级的游戏及其编写过程;第3章介绍了4款初级游戏的编写,第4章和第5章分别介绍了两款中级游戏的编写,第6章介绍了高级游戏“保卫城池”的编写,第7章介绍了高级游戏“扫雷”的编写,第8章介绍了高级游戏“超级马里奥”的编写。
青少年Python编程入门 电子书
快速入门 图文并茂,理论与实践相结合,引导读者快速入门 轻松上手 有趣的文字描述,细致的流程讲解,帮助读者学习程序轻松上手 熟练应用 精炼的章节回顾,经典的自我评价,帮助读者提高学习成效
汇编语言编程基础:基于LoongArch 电子书
本书是龙芯自主指令集的汇编语言教程,系统讲解龙芯处理器全新的自主指令系统架构LoongArch。