Articles of 艾

如何将转向行为应用于受转弯和加速控制的汽车?

我觉得我的头部有转向行为 ,但是我很难将它们应用到汽车上。 转向行为能够将适用于可以向任何方向移动的物体返回的力量返回,但是汽车基本上只能前进并转向。 我很难确定汽车应该转多less,或者根据转向力多less应该加速前进。 如何将转向力转化为汽车的input?

国际象棋与Python和pygame人工智能

我用python和pygame创建了国际象棋游戏。 现在我正在尝试做人工智能,但是实际上最好的方法是什么? 一些提示,技巧,链接? 谢谢

AI随机path生成

我想让一个敌人随机在我制作的地图上散步,如果玩家在他的视线范围内敌人改变状态攻击/跟随。 那么,我将如何完成这样的事情呢? 目前我不知道如何产生随避免碰撞的随机path。 编辑:我正在做一个3D游戏。

在遗传algorithm中使用染色体从input到输出

最近我对AI和遗传algorithm产生了兴趣。 具体来说,AI学会了自己完成一些事情。 例如,玩一个电子游戏。 我已经看到AI们开始玩游戏,不知道button的作用,他们唯一给出的信息是他们的位置,速度,以及靠近他们的实体砖块和实体。 最终AI学会跑步和跳跃。 之后,它学会避免敌人。 我主要了解遗传algorithm是如何工作的,但有一件事我真的不明白。 染色体基本上是AI的指示,对吗? 我的问题是,如何使用AI的染色体从input(AI的位置,速度,附近的瓷砖/敌人)到输出(按下button)? 我认为这叫做neural network,但经过一个小时左右的研究,我并没有真正理解这个概念。 我的问题的答案只是一堆“如果”的陈述? if(enemyNear) { if(chromosomeContents[0]==1) jump(); else keepRunning(); } 这似乎是多余的,因为你将不得不手动编程的所有最好的解决scheme,对不对? 我不确定; 我觉得我在这里错失了一些非常明显的东西。 如果有人能向我解释这个,那太棒了。 :D(对不起,如果我的解释混乱,我试图解释我能做的最好的)

将对象围绕圆移动到圆周的特定位置

那么我已经用尽了想法如何处理这个特定的问题。参见下图: 所以我们的想法是,对象(点黑色)必须达到一个点X(红色的X标记)。然而,限制是它必须到达那里,而不是越过圆(即在直线上的X标记)。我正在阅读一些转向algorithm,但是对于这个问题似乎太复杂了。另外,我应该提到的是,物体具有控制其移动的速度和速度以及位置属性。 现在我正在读一些关于如何在周围移动物体的想法: 这里 然而,这并不能完全回答我的问题。事情是,我首先需要走到圈子,以便能够绕过它。我在想什么,是让对象直线移动到位置直到它碰到圆,然后开始沿着圆的圆周移动。“X”标记可以在圆的任何地方,甚至在它的正前方(不是在这个例子中所示的另一边的后面)图片) 我不是一个游戏开发者,因此从来没有遇到类似这样的问题。这个想法是,将会有不止一个黑色对象试图在随机位置的圆上得到自己的“X”标记(他们的想法是,他们将围绕中间的一些物体)。 这里是一个图像来展示我的意思,每个黑色物体都有一个X位置,他们需要注意而不直接通过圆圈(对不起,我的坏图纸,使用笔记本电脑的触摸板做这些图像) 无论如何,我有点失落,并会看到不同的解决这个特定的问题。

寻找障碍,可以被破坏

地图上有几个大小为n * n的建筑物,还有许多可以销毁的障碍物。 假设我在地图上的(x,y)上放置了一名士兵,士兵可以通过移动和摧毁障碍物到达建筑物。 我需要一个方法来找出士兵的最佳select,因为可能有很多士兵,我希望这个过程可以尽可能less的计算资源。 我想出了path寻找和KD树find最近的邻居,但都不合适,因为KD树没有障碍,path寻找需要穿越很多建筑物。 此外,摧毁障碍会影响到一条路线的规划。

随着玩家的移动,人工智能的移动也是分散的

我正在制作一个2D游戏,两个飞船飞来飞去,互相射击。 一个由玩家控制,另一个由AI控制。 目前,我有AI总是试图从玩家进入一定范围内。 当它在这个半径内时,它停止移动。 这工作,但我有这个问题。 我将在描述实现之后提出这个问题: 每一帧,AI都会检查它与玩家的距离。 如果距离大于某个数字(半径), 则AI向玩家方向移动。 如果距离小于或等于该数字(即AI的飞船在玩家船的给定半径内),则AI停止移动。 这工作正常,除了一个问题: 当我留在原处,让AI的船到达半径时,它就会起作用。 AI在我的方向移动,并停止在半径内的时刻。 运动顺利。 问题发生在AI达到半径后停下来时 ,我开始移动我的船。 人工智能感觉到它已经不在半径范围之内了,而是以一种非常分散的方式跟随着我。 它在我的方向移动几个像素,停止,然后移动几个像素,而不是停止。 (这些“像素”是两艘船在移动过程中每一帧移动的“移动步长”,每一步的像素数量是不变的)。 我找出了这个问题的原因: 当两艘战舰相互靠近时 (即人工智能在半径范围内,所以不需要移动),然后玩家的船开始移动 ,AI立即感应到它现在在半径之外 。 它立即向玩家的方向移动一步 。 下一帧,人工智能感觉到它又一次在半径范围内。 所以它停止。 但玩家正在运动。 所以之后的框架,AI再次感知它在半径之外,并且移动。 这造成非常分散的议案。 AI移动一步,停止,移动另一步,停止。 我知道是什么原因导致这个问题,但不知道如何解决这个问题。 有关如何解决这个问题的任何建议? 在我描述的devise中可能会造成这种情况? 谢谢

以战斗机目标方向寻找转向行为

我正在为飞船(战斗机)实施组管理的转向algorithm。 我select一个领导者,并根据领导者的目标位置和偏移量为其他宇宙飞船分配目标位置。 这很好。 但是当我的飞船到达时,他们都有不同的方向。 我希望他们继续看相同的方向(目标 – 开始)。 我也想把这个行为与基于速度的最小转弯半径结合起来。 我唯一的想法是计算每个飞船的目标位置之前的一个点,所以船只有一段时间才能转入正确的位置。 但是我不知道这是不是一个好主意。 我想在这可能会导致一个问题,会有很多罕见的情况。 所以问题是,如果有人知道如何解决这个问题,并有一些(简单的代码)或伪代码给我或至less一些很好的解释。

path表或实时searchAI?

商业游戏中更常见的做法是什么? path查找表或实时search? 我已经读过许多游戏path查找表是预先计算和烘烤到每个地图,可以这么说,然后转向行为是用来处理dynamic障碍。 或者更好的做法是使用优化的分层A *search? 我明白每个人的赞成和反对,我只是好奇这个行业最常用的东西。

通过未知领域发现path

假设所有的人工智能知道周围是一个像素图,它清晰地显示了可行的地形和障碍物。 我希望AI能够遍历这个地形,直到find一个出口点。 有一些限制: AI在整个地图中总是有一条出路,但可能会有死胡同。 通往出口的道路总是非常随意的,这意味着如果你站在十字路口,没有任何东西表明哪个方向是正确的。 人工智能是否到达死路并不重要,但是它必须能够退回到以前没有检查过的位置,并继续在那里search。 最初,AI开始只知道整个地图的起始区域。 当它四处走动时,新的点将被添加到像素图中,作为对应于AI视距的AI(认为它像AI正在清除战争的雾) 问题是在二维空间。 我所有的是像素图。 像素图中没有“太窄”的path。 AI适合一切。 AI不知道端点在哪里(它隐藏在地图中) AI实时穿越地形 这不应该是一个powershell解决scheme。 例如,可以简单地find像素图中每个像素的path(例如,用A *),这将导致AI发现新的像素。 这可以重复,直到到达结束。 path不一定是最短path(事先不知道整个地图是不可能的),但是当可见区域内的运动被计算出来时,最短的和从人的角度来看,最合理的path应该被采用(例如,如果你可以看到走出你的房间到走廊,你显然会去那里而不是探索你现在的房间的角落)。 有什么样的方法来解决这个问题呢?