0

我正在创建一个电脑游戏,其中有一辆电脑控制的汽车需要沿直线行驶(从而使这个问题有效地成为一维问题)并以 0 速度到达目的地并停下来。这辆车每秒钟都在“思考”,并决定是否(以及多少)加速或减速。

总而言之,我希望汽车尽可能地加速,然后尽可能快地停下来。

以下是汽车必须遵守的变量:
- RemainingDistance= 我们当前到目的地的剩余距离(以米为单位)。
- Velocity= 我们当前朝向目的地的速度,以米/秒为单位。
- MaxVelocity= 汽车可以达到的最大速度。
- Acceleration= 每秒速度的变化。汽车可以每秒将其加速度更改为 [0, Acceleration] 范围内的任何数字。
- Deceleration= 每秒速度的变化。汽车可以每秒将其减速度更改为 [0, Deceleration] 范围内的任何数字。

所以为了尽可能清楚,这是每秒运行一次以更新汽车模拟的数学:

Acceleration= 计算机选择的 [ Deceleration, Acceleration] 之间的某个数量

Velocity= Velocity+Acceleration

RemainingDistance= RemainingDistance-Velocity

所以我的问题是:每次汽车“思考”时,它应该使用什么公式来确定理想值,Acceleration以便在尽可能短的时间内到达目的地(最终速度为 0)?

(如果汽车的初始速度太高,并且在到达目的地时不能足够快地减速以达到 0 速度,那么它应该尽可能靠近目的地停下来。)

请让我知道,如果你有任何问题。

4

0 回答 0