На предыдущей работе я был ведущим разработчиком симулятора вождения, в частности моделирования дорожной сети.Я построил то, что я назвал Логическая дорожная сеть , которая была абстрактным описанием дорожной сети, которая используется для отслеживания транспортных средств вдоль дороги.
A полоса была простопуть, который шел по дороге, но был смещен на положительное или отрицательное расстояние от центрального пути.Каждая дорога представляла собой прямой или изогнутый участок и представляла собой путь центральных вершин с одним или несколькими смещениями полос по обе стороны.Затем автономные автомобили могли бы следовать по дорожке полосы движения.
Короче говоря, многоугольники, составляющие дорогу, были построены вокруг центрального пути вдоль дороги, например,
*------*------*
|\ |\ |
| \ | \ |
| \ | \ |
| \ | \ |
| \ | \ |
| \| \|
*------*------*
, где * - этовершина, создавая 4 многоугольника для этого простого отрезка прямой дороги.
Интерполяция между двумя вершинами вдоль пути обеспечила простой способ перемещения транспортного средства в заданном направлении.Вдобавок к этому простому пути мы ввели некоторую нечеткость для автономных транспортных средств, так что возникли небольшие отклонения на пути (создавая более реалистичное движение).Логично, что транспортные средства были добавлены и удалены из сегмента дороги , и транспортные средства могли осматривать сегмент, чтобы увидеть другие транспортные средства впереди, позади или на другой полосе движения.Это позволило получить некоторую степень искусственного интеллекта в каждом транспортном средстве, чтобы они могли замедлить движение позади другого транспортного средства или дождаться проезда встречного движения, прежде чем сделать поворот.
Не уверен, что это именно то, что вам нужно, но янадеюсь, что это поможет тем не менее: -)