Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Центр помощи > [Delphi] Моделирование дорожных колец.


Автор: chih 13.5.2006, 07:38
Помогите пожалуйста!

Никто не видел исходников или хотя бы алгоритмов решения этой задачи!
Цель:
Построить кольцо с 5 дорогами и по разному включать светофоры!
На основе этого смотреть сколько машины стоят,сколько едут!
Вобщем найти лучшую схему работы светофоров! 

Автор: Sunvas 13.5.2006, 18:19
Цитата(chih @  13.5.2006,  07:38 Найти цитируемый пост)
Построить кольцо с 5 дорогами и по разному включать светофоры!
На основе этого смотреть сколько машины стоят,сколько едут!
Вобщем найти лучшую схему работы светофоров! 

Бред какой-то.. Ты хоть рисунок нарисуй что-ли, а то понять тебя похоже не мудрено никому...
ЗЫ
Учись грамотно задавать вопросы, если хочешь, чтобы тебе кто-то ответил! 

Автор: chih 13.5.2006, 19:30
Вот ! 

Автор: Balu 13.5.2006, 19:42
Эх, давно это было!
На лицо у тебя задача имитационного моделирования.
Есть такой пакет (или был с 1995 года с ним не работал) JPSS.

Но, когда я писал курсовую, то реализовывал логику (аналогичную пакету JPSS) сам.
Общий принцип следующий:
1. Созадешь как бы пакет (это машина) и в него прописываешь, что ты хочешь (те атрибуты, которые тебе необходимо учитывать в модели. Например: От куда стартует машина, и куда она должна попасть)
2. Этот пакет "поехал" по модели, т.е. ты обрабатываешь точки проезда (с применением случайных чисел (по тому закону вероятности и с теми хар-ками которые тебе необходимы)
3. Пакет "доезжает" до конца модели, и отдает сборщику статистики с себя информацию.
4. Система запускается на N итераций, после чего выводится статистическая информация, которая тебя интересует.

Не знаю на сколько доходчиво объяснил smile 

Автор: FFire 13.5.2006, 22:18
А вот интересно, как здесь оценивается понятие "пробка". По идее на кольце пробки быть не должно, т.к. кольцо главная дорога. Значит пробки будут только на второстепенных дорогах. Если трафик по всем дорогам будет задаваться случайным образом, то, как мне кажется,  без светофоров пробок будет меньше, так как со светофорами в любом случае придется стоять на красном.

С другой стороны, если данные о трафике задаются не случайным образом, а например, на основании анализа реальной дорожной ситуации, то может получиться так, что оживленный маршрут будет блокировать другие второстепенные дороги. К примеру подовляющее большенство едет по одной из дорог и все они стремяться на ближайшую левую дорогу. Тогда они будут блокировать выезд на кольцо с других дорог. Тут конечно можно посчитать светофор...  Или кольцо в 2-3 полосы сделать. 

Если же нужно просто решить задачу, именно как задачу, то можно прбегнуть и к методам мат.моделирования  - система массового обслуживания вроде подойдет. 

Автор: chih 14.5.2006, 05:18
Мне надо использовать графы!

Balu а у тебя не осталось ее?
Мы в делфях работаем а писать пакеты я не умею!

Добавлено @ 05:20 
Цитата(FFire @ 13.5.2006,  22:18)
А вот интересно, как здесь оценивается понятие "пробка". По идее на кольце пробки быть не должно, т.к. кольцо главная дорога. Значит пробки будут только на второстепенных дорогах. Если трафик по всем дорогам будет задаваться случайным образом, то, как мне кажется,  без светофоров пробок будет меньше, так как со светофорами в любом случае придется стоять на красном.

С другой стороны, если данные о трафике задаются не случайным образом, а например, на основании анализа реальной дорожной ситуации, то может получиться так, что оживленный маршрут будет блокировать другие второстепенные дороги. К примеру подовляющее большенство едет по одной из дорог и все они стремяться на ближайшую левую дорогу. Тогда они будут блокировать выезд на кольцо с других дорог. Тут конечно можно посчитать светофор...  Или кольцо в 2-3 полосы сделать. 

Если же нужно просто решить задачу, именно как задачу, то можно прбегнуть и к методам мат.моделирования  - система массового обслуживания вроде подойдет.

НЕт ну к примеры с кажой дороги начинают двигатся 20 машин ,светофоров нет,вот и представь себе пока проедет первый поток пока поехал,потом второй начнет,а это значит последний простоит мимимум минут 10!

Добавлено @ 05:26 
НЕт ну к примеры с кажой дороги начинают двигатся 20 машин ,светофоров нет,вот и представь себе пока проедет первый поток пока поехал,потом второй начнет,а это значит последний простоит мимимум минут 10! 

Автор: ~FoX~ 15.5.2006, 08:34
Цитата(chih @  14.5.2006,  06:18 Найти цитируемый пост)
Мне надо использовать графы!

Если через графы, то задача легко решается полным перебором..... 

Автор: Balu 15.5.2006, 09:46
Цитата(~FoX~ @ 15.5.2006,  04:34)
Цитата(chih @  14.5.2006,  06:18 Найти цитируемый пост)
Мне надо использовать графы!

Если через графы, то задача легко решается полным перебором.....

Лет через сто, когда программа закончит перебирать все варианты, я думаю что задача перестанет быть актуальной.

Добавлено @ 09:53 
Цитата(chih @ 14.5.2006,  01:18)
Мне надо использовать графы!

Balu а у тебя не осталось ее?
Мы в делфях работаем а писать пакеты я не умею!

Графы, так графы, просто на основе графов, будет твоя имитационная модель, иначе как ты расчитаешь пропускную способность в час пик и в выходной день.
Или утро и вечер, когда поток машин прямо противоположен.

На счет пакетов: Это условное обозначение.
Попытаюсь расшифровать что я имел ввиду.
"Пакет" это как бы "машина" с характеристиками, которые необъодимо учитывать в модели (Например: от куда выехала и куда собирается ехать, а так же потом сохраняется путь и время по которому проехала машина)
Условия модели, это алгоритм (правила) работы светофоров, схема проезда и т.п.

Т.е. на основе графов ты строишь схему проезда "пакета" ("автомобиля")
Не знаю доходчиво или нет написал smile

В свое студенчество подобдную программу писал дня два ;)
Но там было производство с двумя паралельными линиями и синхронизацией на сборке, плюс система отказа (выбраковка), которая в свою очередь была либо безвозвратным браком либо исправляемым, а исправления могли происходить либо на этих же линиях, либо в ремонтной мастерской. Возвращаяс к предыдущему посту. Полный перебор подобной задачи (с вероятностными правилами) я себе просто не представляю. 

Автор: ~FoX~ 15.5.2006, 09:59
Цитата(Balu @  15.5.2006,  10:46 Найти цитируемый пост)
Лет через сто, когда программа закончит перебирать все варианты, я думаю что задача перестанет быть актуальной.  

В рамках поставленной задачи, пол тыщи вариантов горения светофоров перебрать не проблема.  

Автор: Snowy 15.5.2006, 10:02
Перенесено из Delphi 

Автор: Balu 15.5.2006, 10:20
Цитата(~FoX~ @ 15.5.2006,  05:59)
В рамках поставленной задачи, пол тыщи вариантов горения светофоров перебрать не проблема.

Угу, прими в расчет управление нагрузкой, пробки + заранее не известно на какую дорогу необходимо ехать каждому автомобилю, явно должно быть на случайном числе. 

Автор: ~FoX~ 16.5.2006, 09:37
Цитата(Balu @  15.5.2006,  11:20 Найти цитируемый пост)
Угу, прими в расчет управление нагрузкой, пробки + заранее не известно на какую дорогу необходимо ехать каждому автомобилю, явно должно быть на случайном числе.  

Да хоть с аварией...
Данные есть: количество светофоров (соответственно поворотов), ширина потока легко считается, в час пик количество машин тоже легко расчитывается.....Итого мы получаем около пол тысчи вариантов (если исключить заранне невозмажные, например когда все светофоры красные). Перебором это делается на счет раз и ты имеешь на руках всю статистику при всех случаях.

 

Автор: Balu 16.5.2006, 09:57
~FoX~, Все, мне надоело, извини!
К чертям вышку (нафиг её придумали?). 

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)