У меня есть большая (нетайловая) прямоугольная карта, ограниченная внешними полигонами.
Внутри неё есть случайно сгенерированные выпуклые полигоны.
Условно это выглядит как-то так:
Некоторые полигоны могут пересекаться, т.е. образовать относительно длинный коридор с одним выходом.
Теоретически ситуация на картинке ниже возможна
Также у меня есть боты, которые умеют двигаться в определенную точку с обходом препятствий, оптимальным путём. Т.е. боты могут кого-нибудь преследовать, например игрока. (Назовём этих ботов красными)
Мне нужны другие боты (пусть зеленые), которые будут убегать от ботов, которые умеют преследовать (от красных). Желательно, чтобы зеленые боты умели обходить тупики, т.к. если они туда зайдут, они попадут в ловушку.
Подразумевается, что боты знают всю геометрию мира, т.е. местоположения всех препятствий.
Какой алгоритм должен быть у зеленых ботов?