Тут недавно всплывала тема про зомби, так что я решил смоделировать зомби-апокалипсис.
Исходное положение:
В круглой комнате находится 1 зомби и много людей. Все они бегают с постоянной скоростью. Скорость зомби и человека разная. Если зомби оказывается достаточно близок к человеку, то тот превращается в зомби.
Зомби притягивает к людям, людей отталкивает от зомби. Когда два одинаковых существа оказываются слишком близко, их тоже начинает отталкивать.
Стены моделируются как отталкивающая поверхность.
Результаты таковы: если стены отталкивают не очень сильно, то оставшиеся люди углубляются в них, отталкиваясь от большого количества зомби. А зомби не могут до них дотянуться, т.к. притяжение мало ввиду малого количества оставшихся людей.
Текущий код: http://pastebin.com/xYZy5L53
--------
При некоторых параметрах отталкивания, люди быстро разбегаются к стенам и зомби оказывается в центре в положении буриданова осла.