Особенности работы Каргодист*а

OpenTTD - современная игра, клон Transport Tycoon Deluxe с открытым исходным кодом, написанный на C и С++. Содержит ряд ключевых улучшений и возможность игры по сети. На данный момент это главное направление развития игры.

Модераторы: eraserkry, Mihamster, Smoky555, Группа модераторов

Особенности работы Каргодист*а

Сообщение swboy » Вс окт 07, 2012 21:41

Народ, скажите нет ли каких-то решений такой ситуации:

Из города "А" в город "Б" можно добраться через город "Х" и через город "Ю". Но при запуске двух маршрутов, один через "Х", а второй через "Ю", весь поток пассажиров направляется через город "Х", и никто не хочет ехать через город "Ю". расстояние через Х и через Ю отличаются на 10-15%
swboy
Машинист
Машинист
 
Сообщения: 32
Зарегистрирован: Сб апр 28, 2007 17:21

Re: Особенности работы Каргодист*а

Сообщение kraks » Вс окт 07, 2012 22:57

А время много прошло с момента запуска через Ю?

А вообще ответ, видимо, надо искать где-то тут.
Аватара пользователя
kraks
Президент
Президент
 
Сообщения: 889
Зарегистрирован: Вт окт 03, 2006 01:05
Откуда: Москва

Re: Особенности работы Каргодист*а

Сообщение swboy » Пн окт 08, 2012 00:15

Да уже больше полугода...

При первых расчетах каргодист еще как-то распределяет -+... а оптом сливает в одну сторону...

Функция "насыщение коротких путей до использования более вместительных выкручена на 15%
swboy
Машинист
Машинист
 
Сообщения: 32
Зарегистрирован: Сб апр 28, 2007 17:21

Re: Особенности работы Каргодист*а

Сообщение pi1985 » Пн окт 08, 2012 08:33

У меня примерно такая же штука.
Есть такая сеть:
123.png
123.png (2.36 Кб) Просмотров: 6023

Есть несколько поездов с заданием: A - X - Y - B - Y - Z и несколько пригородных с маршрутами A - Z, Z - Y, A - X, X - Y, Y - B.
Так вот весь трафик из А в Y и B идёт через Z, т. е. "против шерсти" этого маршрута. Кроме того, пассажиры вместо того, чтобы ехать из А сразу в В без пересадок, едут сначала в Z, потом в Y и только потом в В, хотя это в несколько раз дольше.
pi1985
Президент
Президент
 
Сообщения: 676
Зарегистрирован: Вт апр 03, 2012 23:10
Откуда: Донбассъ - Забайкалье

Re: Особенности работы Каргодист*а

Сообщение swboy » Пн окт 08, 2012 09:09

По ходу дела, как описано на оф. сайте, сначала весь поток направляется по самому короткому маршруту. После наполнения маршрута "до отказа" трафик направляется на более длинный участок и т.д. При чем степень "наполнение" указывается в настройках... Но на практике =( это не работает. Или работает но только для отдалённых станций.

Т.е. для станций А-Б-В-Г
Есть поезда:
А-Б-Г
Б-Г
Б-В-Г
трафик со станции Б едет до Г прямо.
а вот трафик со станции А едет на Г через В, в случае если слот Б-Г заполнен.

А вот куда и как следует поезд каргодисту все равно. Т.е. он не рассматривает "длину маршрута", он рассматривает отдельные отрезки и отправляет пассов отрезками любыми поездами, которые едут этим отрезком
swboy
Машинист
Машинист
 
Сообщения: 32
Зарегистрирован: Сб апр 28, 2007 17:21

Re: Особенности работы Каргодист*а

Сообщение pi1985 » Пн окт 08, 2012 09:44

Предположу, что каргодист строит упрощённый граф связей. т. е. для моей схемы примерно так (единица означает наличие маршрута):
123.png
Неполный граф
123.png (1.57 Кб) Просмотров: 6017

вместо того, чтобы строить полный:
1234.png
Полный граф
1234.png (1.56 Кб) Просмотров: 6017

Наверное это сделано для упрощения расчётов.
swboy писал(а):степень "наполнение"

Интересно, чему равно 100%-е наполнение и от чего оно зависит.
pi1985
Президент
Президент
 
Сообщения: 676
Зарегистрирован: Вт апр 03, 2012 23:10
Откуда: Донбассъ - Забайкалье

Особенности работы Каргодист*а

Сообщение Lewapard » Вт окт 30, 2012 19:02

pi1985 писал(а):Предположу, что каргодист строит упрощённый граф связей.

Поделюсь своим опытом работы с каргодестом последней версии ХардПака (пробовал его для всех грузов, из-за чего была возможность посмотреть, как он работает при разных настройках маршрутов поезда).
Во-первых, он строит самый полный граф связей. Кроме того, граф учитывает только фактическое наличие станции назначения в маршрутном листе транспорта, без учета поведения транспорта на самой станции.
Т.е. если есть 4 маршрута (А-В, А-Г; Б-В, Б-Г), то грузы генерируются для всех направлений движения: например, А-В-Б-Г, не учитывая, что на станции В у всех ТС будет стоять опция "не грузиться".
Во-вторых, при построении графа связей, если поезд не курсирует только между двумя станциями, то грузу обязательно ставится "промежуточная станция". При этом, это следующая станция в маршрутном листе поезда.
Т.е. если поезд везет груз по маршруту А-В, то при добавлении новой станции Б (маршрут А-Б-В), поезд не будет забирать груз, пока каргодест "не поймет", что у всего (тут не уверен?) транспорта, курсирующего по маршруту из маршрутного листа исчез прямой маршрут А-В. Побочным эффектом является то, что если есть 2 поезда, идущих к определенному пункту назначения, но разными маршрутами, каждый из них будет забирать только свою долю груза для тех станций, где их маршруты пересекаются.
В-третьих, при добавлении нового, более короткого маршрута, остальные маршруты не будут использоваться пока не будет загружен до определенного значения новый маршрут.
В-четвертых, для очень длинных маршрутов с большим временем "лежания" груза на станции (например, подвоз большого кол-ва товаров поездом, а потом перевозка машинами по пунктам назначения), для этого груза будет пересчитываться окончательный маршрут, что иногда бесит, хотя на самом деле правильно.
Lewapard
Шпалоукладчик
Шпалоукладчик
 
Сообщения: 21
Зарегистрирован: Ср дек 14, 2011 14:09

Re: Особенности работы Каргодист*а

Сообщение pi1985 » Сб дек 01, 2012 10:00

Свершилось! Пассажиры теперь едут, выходя не на каждой станции, а через одну. Но теперь они не хотят садиться в поезд, который курсирует между станциями и скорее всего потому, что он останавливается на промежуточных остановках. Чем им не нравится такой поезд?
Вложения
01.png
станции
01.png (21.92 Кб) Просмотров: 5715
02.png
задания поезда
02.png (16.89 Кб) Просмотров: 5715
pi1985
Президент
Президент
 
Сообщения: 676
Зарегистрирован: Вт апр 03, 2012 23:10
Откуда: Донбассъ - Забайкалье


Вернуться в Общие вопросы по OpenTTD

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 19