免责声明:我在《波斯王子》和《刺客信条》这两个游戏上工作了 2 年多,法律上不允许我告诉你这些游戏是如何制作的,但我会尽力为你提供有关游戏 AI 的一般知识。大多数游戏不像你描述的那样使用学习。
artificial intelligence首先,您所针对的语言或平台(或设备)与您将使用的工具无关。
第二,你的第一个例子,井字棋和国际象棋是turn-based游戏,这与游戏完全不同real-time。此外,这两款游戏都在有限的棋盘上运行,而search space. 使用其他算法比学习(例如极小极大)更容易解决这些游戏。
对于real-time像您描述的那些 3D 空间中的冒险游戏,即使找到context或者input您将提供给您的学习系统的内容也很困难......哪些元素与决策相关:最近的音频刺激,视觉刺激,这些刺激在空间和时间上的相对性、周围的敌人或盟友等……那么,考虑到这些世界的复杂性以及NPC允许做什么,你如何定义output你的学习算法?此输出如何在后续查询中保持凝聚力?
请记住,您对游戏设计所做的任何更改都需要重新运行学习过程,并且可能需要重新运行input和output.
你最好走标准路线,使用众所周知的方法,如finite state machines, fuzzy state machines, behavior trees,planning等……你将对决策有更多的控制权,并且实际上能够设计你无法做到的NPC行为做学习。