游戏开发中的人工智能(完):遗传算法
继续上述
本文的内容:遗传算法提供了游戏软件AI发展的可能性。尽管遗传算法不经常用于游戏中,但它们在某些特定应用中的潜力值得期望,尤其是与其他方法结合使用时。
遗传算法
在现实世界中,物种将继续发展以更好地适应环境,并且这些物种也是最合适的生物,可以继续生存。
遗传算法是一种计算模型,可以模拟达尔文生物进化论的自然选择和遗传机制。这是一种通过模拟自然进化过程来搜索最佳解决方案的方法。
通过使用遗传算法,例如现实世界,游戏世界中的元素也可以发展并适应不同的环境,从而使它们变得更聪明。
进化过程
游戏中遗传算法的实现分为四个步骤,如图15-3所示。
创建第一代:整个比赛将加载一组起始功能
适用性分类:小组开始与环境互动后,必须以某种方式对个人进行分类,这将告诉我们小组中哪些人是最好的。
选择:选择种族中的一些人来复制并使用上一代的最佳特征来复制下一代
进化:结合这些特征以更强的适应性再现下一代的过程
遗传算法实际上是一个优化过程,我们尝试找到最有弹性的一组功能,也就是说,我们正在寻找解决特定问题的最佳解决方案。
第一代
第一代种族中的每个人都代表了当前问题的可能解决方案之一。建立第一代的方法之一是随机配置染色体。
编码是将染色体存储在计算机中的数据结构中的过程。遗传算法通常使用字符串kaiyun全站网页版登录,阵列,列表和树结构。
图15-4是花的第一代示例。这些虚幻的花朵含有一些随机的染色体,会影响它们在环境中的生长。
适合性等级
此步骤是评估种族中的每个人。我们试图找到族裔中最好的个人,并且通常通过健身功能来做到这一点。健身功能的目的是对种族中的个人进行分类,然后知道哪些人是当前问题的最佳答案。
图15-5是花健身分类的结果。在这里,假设最高的花是最适应性的花。
选择
在选择过程中,我们选择哪些适合性最高的人将重现下一代。在生物学世界中,通常是父母为后代造成染色体。在游戏开发中,可以将父母合并。例如kaiyun官方网站登录入口kaiyun全站app登录入口,可以合并前两个,五个或十个人的特征。
图15-6显示了使用健身函数计算出的平衡,以选择最佳个体以产生下一代。在这种情况下,选择最高的两朵花。
进化
进化是使用选择步骤建立新个体的过程。我们从人口中最合适的个体中取出单独的染色体,并开始结合其染色体。目前,您还应该注意引入随机突变(现实世界中还会有染色体突变)。演化过程完成后,返回健身分类的步骤。
在此示例中,我们将两朵最高花的染色体组合在一起,形成了新花,在此过程中引入了两个随机突变,如图15-7所示。
植物生命的演变
第一个例子是如何应用遗传算法以使花在环境中连续繁殖和生长。
我们定义了一系列花朵生长的假设环境条件。每朵花都包含遗传信息,表明其理想的生长环境。理想的生长环境和花的实际条件将增长最高。
最高的花将被视为最合适的,其遗传信息将传递给下一代。这将使花生出生时繁殖