Comments 25
А потом начинаем учитывать психологию водителей, которые ускоряются, надеясь проскочить, Вспоминаем, что есть еще и пешеходы со своими проблемами (включая перебегание дороги не на перекрестке), вводим в весовую функцию количество получившихся в результате аварий и трупов и понимаем, что ничего не понимаем.
Это я к тому - что регулирование движения -- оно не только про оптимальный машинопоток, что в статье упомянуто приблизительно никак.
один конкретный светофор не интересно. управлять надо системой светофоров, в городе, или хотя бы районе
Давным давно... В общем в каком то журнале в статье про QNX описывался проект по организации дорожного движения в канадском городке - там на всех дорогах и светофорах стояли датчики считающие авто, все эти данные через модемы стекались на сервера и они управляли светофорами во всём городе. На всех контроллерах и серверах стоял QNX. ИИ тогда не было
Нейро, нейро... Достало, честно говоря. В 1976 году в серии "Математическое обеспечение ЭВМ" была издана книга Э.Хамби "Программирование таблиц решений". Там сквозной пример - как раз со светофорами. Есть, конечно, и другие, но уже не так подробно. Чисто алгоритмический подход. Плюс к тому же вопросы минимизации таблиц таблиц решений, их непротиворечивость, полнота. Вполне систематично, но не сухо, а местами так и весело. Любим мы изобретать лисапеты
Как думаете, что лучше продаётся: «алгоритм управления светофором» или «нейроблокчейн платформа трафикменеджмента с ИИ»?
ИМХО, всё же смысл в нейросетях имеется, так как оно может опираться на прогнозируемый трафик, а также кучу других факторов, вроде погоды, выражения лиц водителей и прочего, причём, самостоятельно находить корреляции.
Я вот не уверен. Предсказуемость - достаточно хорошее свойство, т.к. люди приучаются наблюдаемое поведение учитывать и тоже участвуют в оптимизации. А если светофор ведет себя непонятно как, по понятным только ему наблюдениям и соображениям - то это может быть чревато лишней нервотрепкой и дестабилизацией ситуации. "Да, <набор междометий>, почему эта железка сейчас заставляет в два раза дольше ждать? Вчера же нормально работала?"
Замечательно! Пропустили табун машин. Теперь они мчатся к другим светофорам, а там стоит уже наш человек с нашим же эффективным алгоритмом..
В каком-то смысле, простое расписание работы эффективнее заумных алгоритмов, потому что смысл расписания в том, чтобы делить поток, нарезать его на мелкие фракции и делать в целом поток машин более равномерным.
А теперь вспоминаем про то, что мы это сделали только со светофорами на одном перекрёстке. А в городе таких со светофорами очень много. Плюс пешеходы, некоторые из которых имеют наглость перебегать дорогу в непригодном для этого месте и иногда даже пьяными, плюс ко всему прочему добавим некоторых неадекватных водителей, которые также могут быть пьяными, плюс вспоминаем про время суток, про которое в статье ни слова, и понимаем, что по итогу мы просто сделали себе ещё больше геморных проблем. Только теперь некоторые из них будет решать нейронка.
Вставлю свои пять копеек, как человек который 10 лет занимался этим, т.е. оптимизацией работы светофоров!
По моему сейчас все с ума по сходили с этим искусственным интеллектом, некоторым он даже мозги заменил :), про то что в нашем городе внедрят, внедряют или уже внедрили управление перекрестками при помощии ИИ я слышу и читаю уже года два, но на некоторых ключевых перекрестках как были пробки, так остаются и до сих пор :) А вся проблема в том, что пытаются лечить отдельные места, а не весь организм в целом!
Ну например, когда то составлял такие графики координации, т.е. проще говоря все светофоры работали независима друг от друга, но с привязкой ко времени (время бралось от системы GPS или Глонасс), это называется бесцентровая координация.
И да, в этот период времени когда это не было сломано и за этим следили все ехало, потом сменился подрядчик и система потихоньку перестала работать.
Была даже идея сделать мобильное приложение, которое на телефонах водителей выдавало бы информацию об оптимальной скорости движения что бы можно было ехать без остановок или с минимальным их кол-вом и даже был найден разработчик, но все остановилось даже не начавшись, по простой причине что мы не могли дать гарантию, что базы данных о координации светофорных объектов, будут актуальны при смене подрядной организации обслуживающей СО города.
Резюмируя, нужно лечить не отдельные объекты а все объекты на улице, где это необходимо, я бы лучше бы сделал бы так, что бы одни светофорные объекты умели "договариваться" с другими, скажем если на один объект прет избыточный поток, то он должен "сказать" предыдущему, что бы тот по придержал (вот тогда была бы истинная нейронка), тем самым поток нужно дробить и из "турбулентного" в одном месте делать "ламинарным" по всему протяжению улицы. Но если представить в какие цены это выльется, это же ведь каждый СО нужно оснащать датчиками транспорта, и что бы каждый объект умел это дело анализировать, ну не знаю, чет мне с трудом в это вериться и даже не по причине того денег на это не найдется, денег то может и найдется, но вот где взять специалистов, кто смог бы настроить эту систему и в последующем грамотно обслуживать? А то у нас же так, сначала одни делают и настраивают, потом меняют подрядчика приходят новые и новая метла по новому метет! В общем это проблема не только одно конкретного светофорного объекта, это ооооочень комплексная проблема... :)
О, г.Владимир :) :) :) Сейчас то Вы как - в процессе установки детекторов участвуете ?!
Программа, из которой вы взяли данный график, уже имеет мобильную реализацию)
Ничего не понял! Это вопрос или утверждение?
Что бы два раза не вставать, могу сказать что это я рисовал в 2013 году на древнем DELL Inspirion 2200 в Microsoft Visio 2003, чисто руками и ни какая программа мне это не считала, просто рисовал полоски и расставлял и двигал их относительно вектора скорости, не понимаю нахрена здесь нужна мобильная реализация, я чё с мобильника должен это делать на милипизерном экранчике, бред какой то... :)
Ещё бы добавить приложение, которое отображало бы рекомендуемую скорость для водителя, чтоб при приближении к светофору, проехать на зелёный. Без торможения и разгона.
Такие мысли были еще в далеком 2014 году, но все упирается в "административный" ресурс... Приложение написать не проблема и разработчики найдутся, проблема в другом, кто будет постоянно поддерживать базу данных в актуальном состоянии на протяжении жизни всей этой системы, одни сделают, потом на тендере поменяют подрядчика, ибо он будет более "дешевым", а в связи этой дешевизны у него ресурса или просто ума не хватит поддерживать эту систему в рабочем состоянии, поэтому если даже такое приложение и напишут, то жить оно будет не долго...
Очень часто было и бывает так, что поставили светофор -- появились пробки. Многие годы все ездили без пробок, потом гениальный управленец решил получить откат побеспокоиться о безопасности движения -- опа, теперь пробки торчат на километр во все стороны от светофора. Потому лично я считаю, что без светофоров лучше.
Ну бывали и обратные ситуации, стоят два светофора причем на федералке, а между ними нерегулируемый пешеходный переход, и там постоянные затыки, т.к. не регулируемый, пока ставим на этом переходе светофор, все начинают блажить, вот жопа здесь, а будет еще хуже, но когда все настраиваем и координируем, все поехало и затыки куда то ушли!
Проблема не в светофорах, а в том что их работа не настроена и не координирована, потому что это некому делать, дяди Васи, которые это дело обслуживают оценивают работу светофора по принципу красный, желтый, зеленый переключаются, значит работает, а все остальное их уже не волнует...
Могу сказать лишь одно, что чем больше будет светофоров, при условии что они будут грамотно настроены, тем будет лучше, движение будет более растянутым и равномерным, в любом случае поток будет ехать, а не дергаться, это уже доказано на практике...
Самая большая в мире страна, хотим друг другу по головам, живём друг у друга на головах С этим нужно что-то делать, а не следствия лечить, по большому счёту. Может, на круг, проще и дешевле получится. Но мы одним днём живём.
Зачем выдумывать велосипед? Есть навигаторы, которые давно показывают загруженность участка дороги. Возьмите за основу данные такой программы. Прикрутить анализатор траффика и алгоритм переключения светофоров. Как говорил участник выше, который с этой темой работал, анализировать надо не каждый светофор непосредственно, а все созависимые светофоры в районе и на основе выходных данных принимать решение. ИМХО, считывать конкретное количество транспорта бессмысленно и неэффективно с точки зрения ресурсозатрат. Вполне достаточно три состояния - зелёный, жёлтый, красный.
Сразу вспомнил университетские годы... по имитационному моделированию делали такое через AnyLogic - моделирование систем массового обслуживания. Конкретно я даже курсовой проект делал по моделированию очереди людей к банкоматам в отделении банка с разными параметрами... по-моему и перекрёстки со светофорами там тоже моделируются)
@Crazy-Explorer31 Низкоуровневый технический вопрос к вам:
В видео с 3D эмулятором на 10 секунде видно, что после того как загорелся зеленый, все машины одновременно стартонули и поехали вместе. Это отличается от реальности, в которой машины стартуют одна за другой с определенными интервалами, что приводит иногда к известным проблемам: видео
Получается, что это отличие приводит в реальности к ситуациям, которых в эмуляции нет.
Рассматривали этот момент? Проверяли на сколько это искажает эмуляцию? Позволяет ли эмулятор это учесть?
Очень интересное замечание, даже в голову не пришло!
В Carla (то, что на видео), такое, судя даже по видео, не предусмотрено. Ну сама логика движения машин там вшита глубоко в C++-вых скриптах, менять её, скорее всего, -- такое себе развлечение :)
В статье упоминался рукописный эмулятор, в нём логику движения прописывал я. Если заинтересованы в симуляции этого процесса (что в вашем видео), то склонируйте себе репозиторий проекта, измените в ветке main в файле emulator.py строки 295:299 на следующие:
if (
abs(new_current_car_coordinates[0] - next_car_coordinates[0])
+ abs(new_current_car_coordinates[1] - next_car_coordinates[1])
> 5 * self.car_radius # maybe bigger than 5
):
И запустите всё, согласно инструкции в ридмишке. Может, у вас получится более приближенный к реальности результат!
Ну да, когда поток не раздробленный, это очень большая проблема, теряется до половины, а то и весь цикл свечения зеленого и эту проблему не решить при помощи ИИ, да, ИИ может увеличить цикл свечения зеленого в одном направлении, но в это время скопится в других направлениях и что с ними делать, поэтому здесь и нужно, дробить поток на мелкие фракции, что бы перед светофорами не копилось по многу...
Из результатов тестов видно
Нет, не видно, т.к. нигде не указано, что это за числа в таблице.
Лет 10 назад я тоже хотел сделать умный алгоритм переключения системы светофоров для целого города, анализирующий поток машин и пешеходов в реальном времени по загруженности, с зависимостью от дней недели, праздников и др. дорожных ситуаций (ДТП, дорожные работы, перекрытия и т.д.). Вот только, поняв, что эту систему не получится продать/предложить городу без волосатых рук в администрациях, желание созидать затухло 😔
Создание оптимального алгоритма переключения светофора на перекрестке