Форум Trainsim

Форум Trainsim (http://www.trainsim.ru/forum/index.php)
-   TrainZ - Маршруты и сценарии (http://www.trainsim.ru/forum/forumdisplay.php?f=24)
-   -   Система маршрутизации z7-xPath (Система расчёта поездных маршрутов стрелочная будка) (http://www.trainsim.ru/forum/showthread.php?t=11836)

TRam_ 30.09.2010 14:46

[QUOTE]Varz в z7 ушёл от внутренних команд к командам[/QUOTE]потому что их нельзя было менять в процессе сессии. Это был главный недостаток z-cmd.

Kompozitor 30.09.2010 15:33

[QUOTE=Combine;205565]весьма неплоха, но только если будет оформлена в виде правила и команд (как jsTRF PathControl, с правилом PathTrigger для сценария и командой setpath для ботов).[/QUOTE]

Ага. И чтоб что-то наподобие "Wait" было - занят маршрут, сиди и не рыпайся, не мешай другим ботам, дергая стрелки

И неплохо было бы, чтоб собирать маршрут можно было бы не только себе, но и в любом месте карты или хотя бы станции (Yard-а), независимо от наличия лока перед светофором. Это удобно, когда сам рулишь, а тебе через триггеры "другие дяди" командами собирают маршрут.

genesis 30.09.2010 15:39

[QUOTE=TRam_;205601]просто я вижу одну большую проблему. При организации движения по однопутному перегону у нас в перегон будет вкладываться поездов больше, чем путей на станции приёма. И получается "пробка", даже если у нас 1 станция между порталами. И получается что смысла WaitUntilNotRed не будет, однопутный перегон сможет (и то если сможет) работать только когда на нём нет проходных. И всё, команда не нужна, т.к. на двухпутке вполне нормально работает и та jsTRF PathControl .[/QUOTE]
Я тебе говорил как это решается методом резервирования.
[QUOTE=TRam_;205601]Правило я обещал, и команду тоже (с единственным "но" - я не знаю, сможет ли ТРС загружать в меню абсолютно все маршруты всех светофоров такой карты как БМО - ведь у PathControl такой проблемы небыло :)[/QUOTE]
А зачем все маршруты загружать, когда предполагается их автоматическая выборка? Начальный светофор, конечный светофор.
[QUOTE=TRam_;205601]1) поехать по неправильному пути[/QUOTE]
Зачем? Это бессмысленно, если только не обгон.
[QUOTE=TRam_;205601]2) поехать по дебрям[/QUOTE]
Теория графов
[QUOTE=TRam_;205601]3) перерасчёт путей с проверкой их занятости затянется на секунду полного заглючивания трс (и ты хочешь, чтоб у тебя каждую 1-2 минуты трс подвисал?)[/QUOTE]
Событийно-ориентированный мониторинг. Стрелка отсылает кучу разных сообщений :)
[QUOTE=TRam_;205614]потому что их нельзя было менять в процессе сессии. Это был главный недостаток z-cmd.[/QUOTE]
Команда условного перехода наподобие CopyCommands?

TRam_ 30.09.2010 15:42

[QUOTE]Ага. И чтоб что-то наподобие "Wait" было - занят маршрут, сиди и не рыпайся, не мешай другим ботам, дергая стрелки[/QUOTE]собственно расчёт стрелок и есть то самое средство от дёрганья - можно просто по базе данных смотреть, что бы было, если стрелки были-бы туда-то переведены. В общем понял: всем нужна команда "иди и едь куда сможешь" :).

[QUOTE]И неплохо было бы, чтоб собирать маршрут можно было бы не только себе, но и в любом месте карты или хотя бы станции (Yard-а), независимо от наличия лока перед светофором. Это удобно, когда сам рулишь, а тебе через триггеры "другие дяди" командами собирают маршрут.[/QUOTE]блин, я зачем вчера инструкцию по пользованию браузером делал? "не, я просто так из кабины машки нащёлкал себе маршрут от Внуково до Москвы-Киевской, но это сосвем не то что вам нужно". (правда при этом дважды нащёлкал на занятый путь, приходилось разбирать :) )


[QUOTE]А зачем все маршруты загружать, когда предполагается их автоматическая выборка? Начальный светофор, конечный светофор.[/QUOTE]начальный светофор чего? конечный светофор чего? Моя система позволяет вычислить светофор по имени станции и его собственному имени, но без знания к какой станции светофор принадлежит мы никуда не уедем. Автоматическая выборка только для маневровых маршрутов, так как мы уже договорились, что приоритет маршрутов выбирается пользователем. А примеров того, что правила "чем меньше стрелок тем лучше" и "чем короче путь, тем лучше" не работают, предостаточно.

[QUOTE]Событийно-ориентированный мониторинг. Стрелка отсылает кучу разных сообщений[/QUOTE]в моём браузере НЕТ ВРЕМЕННОГО МОНИТОРИНГА ! Всё вешается исключительно на Object,Leave от стрелки (за исключением добавления новых команд)

[QUOTE]Команда условного перехода наподобие CopyCommands?[/QUOTE]она копирует вообще всё расписание (shedule), а не делает изменения расписания.

[QUOTE]Я тебе говорил как это решается методом резервирования.[/QUOTE]метод даёт нереально низкую пропускную способность.

Combine 30.09.2010 16:14

[QUOTE]Правило я обещал, и команду тоже (с единственным "но" - я не знаю, сможет ли ТРС загружать в меню абсолютно все маршруты всех светофоров такой карты как БМО - ведь у PathControl такой проблемы небыло[/QUOTE] Для этого нужно правило. Всю эту работу с маршрутизацией лучше выносить в правила, а боты-машинисты должны заниматься своим делом — ехать.

[QUOTE]проблемы:

1) поехать по неправильному пути
2) поехать по дебрям
3) перерасчёт путей с проверкой их занятости затянется на секунду полного заглючивания трс (и ты хочешь, чтоб у тебя каждую 1-2 минуты трс подвисал?)

поэтому я и сделал расчёт только до ближайшего светофора, сделанный заранее.[/QUOTE] Поэтому в текущем виде система неприменима. Как будущий задел под МРЦ она годится :)

Надо как-то хорошо продумать вопрос избегания вариантных маршрутов...

[QUOTE]Ага. И чтоб что-то наподобие "Wait" было - занят маршрут, сиди и не рыпайся, не мешай другим ботам, дергая стрелки[/QUOTE] Ну МРЦ наши (всех систем) так и работают: если любая стрелка находится в замкнутом маршруте, то новый маршрут не собирается.

[QUOTE]Зачем? Это бессмысленно, если только не обгон.[/QUOTE] Возможность выхода на неправильный путь перегона должна быть. Ситуация не настолько редкая, как кажется.

TRam_ 30.09.2010 16:24

[QUOTE]Для этого нужно правило. Всю эту работу с маршрутизацией лучше выносить в правила, а боты-машинисты должны заниматься своим делом — ехать.[/QUOTE]занят написанием правила...

[QUOTE]Надо как-то хорошо продумать вопрос избегания вариантных маршрутов...[/QUOTE]да я ж уже говорил - пользователь в настройках указывает приоритет выбора вариантных маршрутов, система перебирает список этих маршрутов в порядке приоритетов и устанавливает тот, который свободен (если таковой имеется, в противном случае ставит в стек тот, у которого нулевой приоритет). Но это пока в планах.

[QUOTE]Поэтому в текущем виде система неприменима.[/QUOTE]я не о своей системе, а о предлагаемой тобой и Мишей идее расчёта маршрутов в процессе игры. Моя пока что вовсе не понимает, чем отличается правильный от неправильного (не видит маркер неправильного пути)

[QUOTE]Ну МРЦ наши (всех систем) так и работают: если любая стрелка находится в замкнутом маршруте, то новый маршрут не собирается.[/QUOTE]значит я автоматически становлюсь автором второй виртуальной МРЦ в trainz :) (с дословной иерархией "станция - парк (светофор) - маршрут")

genesis 30.09.2010 16:57

[QUOTE=TRam_;205634]начальный светофор чего? конечный светофор чего? Моя система позволяет вычислить светофор по имени станции и его собственному имени, но без знания к какой станции светофор принадлежит мы никуда не уедем. Автоматическая выборка только для маневровых маршрутов, так как мы уже договорились, что приоритет маршрутов выбирается пользователем. А примеров того, что правила "чем меньше стрелок тем лучше" и "чем короче путь, тем лучше" не работают, предостаточно.[/QUOTE]
Начальный светофор маршрута, лол. Конечный светофор, ВНЕЗАПНО, тоже маршрута! Два последовательных светофора достаточны для идентификации группы маршрутов, из которых выборка происходит согласно [I]заданному пользователем[/I] приоритету. У НикЛона, наверно, уже язык отвалился тебе это втирать.

[QUOTE=TRam_;205634]в моём браузере НЕТ ВРЕМЕННОГО МОНИТОРИНГА ! Всё вешается исключительно на Object,Leave от стрелки (за исключением добавления новых команд)[/QUOTE]
Ну и чудесно, от чего же тогда ты пугаешь зависаниями ТРС на секунды?

[QUOTE=TRam_;205634]она копирует вообще всё расписание (shedule), а не делает изменения расписания.[/QUOTE]
Копирование подразумевает возможность изменения, не правда ли?

[QUOTE=TRam_;205634]метод даёт нереально низкую пропускную способность.[/QUOTE]
Метод НЕ влияет на пропускную способность вообще.

TRam_ 30.09.2010 17:06

[QUOTE]Два последовательных светофора достаточны для идентификации группы маршрутов, из которых выборка происходит согласно заданному пользователем приоритету.[/QUOTE]да, не сразу понял. Ответ:
[QUOTE]пользователь в настройках указывает приоритет выбора вариантных маршрутов, система перебирает список этих маршрутов в порядке приоритетов и устанавливает тот, который свободен (если таковой имеется, в противном случае ставит в стек тот, у которого нулевой приоритет). Но это пока в планах. [/QUOTE]

[QUOTE]Ну и чудесно, от чего же тогда ты пугаешь зависаниями ТРС на секунды?[/QUOTE]от выделения памяти на Соупы с новыми последовательностями стрелок.

NickLon 30.09.2010 17:41

[QUOTE=TRam_;205634]В общем понял: всем нужна команда "иди и едь куда сможешь" :).
[/QUOTE]
Здесь только следует иметь ввиду, что принцип "едь куда сможешь" годится только для транзитных поездов по станции! Как правило, транзитные идут по главному пути. Для двухпутных участков это почти не актуально, главный бывает редко занят, когда уже прибывает следующий поезд. А вот на однопутных - это сплошь и рядом при разъезде даже двух поездов.
[quote]пользователь в настройках указывает приоритет выбора вариантных маршрутов, система перебирает список этих маршрутов в порядке приоритетов и устанавливает тот, который свободен (если таковой имеется, в противном случае ставит в стек тот, у которого нулевой приоритет). Но это пока в планах.
[/QUOTE]
Это не годится! На БМО нет таких станций, как, например, Ртищево-I, Джанкой Придн.ж.д., Тула, Орел, где грузовой и пассажирский парк - это одна и та же станция. Еду я грузовым - у меня один набор приоритетов, еду пассажирским - другой. Грузовым мне нечего делать на первом пути у вокзала, а вот для пассажирского (скорого фирменного) этот путь как раз №1 в приоритетах. Вот поэтому я и говорю, что группы нужны - для грузового я буду искать свободный путь, пусть даже и в соответствии с приоритетом поставленным заранее, в грузовом парке, а для пассажирского - в пассажирском. А если я буду руководствоваться только приоритетами, то у меня даже дрезина будет переться на первый путь!:D
Теперь ещё такой момент. Но это уже из области мечтаний-наблюдений. Просто может быть из прений получится решение. На однопутных участках, на станции, например, из 3-х путей, на боковой заходит именно тот поезд, который прибывает первым на станцию и который будет ждать встречного. Это я говорю о грузовых транзитных. 1-му то всё равно стоять и заходить на станцию с уменьшенной скоростью (под красный), а вот второй уже проносится по главному в соответствии с таблицей скоростей по горловинам станции. Вот бы такое реализовать бы ещё. А при этом главный путь имеет 1-й приоритет всегда: если нет встречного, то как неслись, так и несемся мимо станции по главному.
Да, в жизни это разруливает ДСП... Но всё же...:o

TRam_ 30.09.2010 17:55

[QUOTE]Просто может быть из прений получится решение. На однопутных участках, на станции, например, из 3-х путей, на боковой заходит именно тот поезд, который прибывает первым на станцию и который будет ждать встречного. Это я говорю о грузовых транзитных. 1-му то всё равно стоять и заходить на станцию с уменьшенной скоростью (под красный), а вот второй уже проносится по главному в соответствии с таблицей скоростей по горловинам станции. Вот бы такое реализовать бы ещё. А при этом главный путь имеет 1-й приоритет всегда: если нет встречного, то как неслись, так и несемся мимо станции по главному.[/QUOTE]наигрался я уже в Zork'овский сим диспетчера, знаю это. Другое дело, что знаю также, что намного выгоднее в перегон вдавливать с одной стороны штук 5-6 поездов, с другой - 2. Тогда эти 2 в основном стоят на станциях, пока их объедут по главному та кучка из поездов. В результате получаем довольно значительный перевес над "сеточкой" в ГИД, когда на перегоне есть только один поезд.


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

Да и вообще... Это нужно только для маршрутов прибытия. Для отправления всё равноправно, т.к. перегон-то один.

[QUOTE]Да, в жизни это разруливает ДСП... Но всё же...[/QUOTE]то, что выложено, и есть сим ДСП. Только без мнемосхемы и рисования графиков.

Combine 30.09.2010 20:48

[QUOTE]да я ж уже говорил - пользователь в настройках указывает приоритет выбора вариантных маршрутов, система перебирает список этих маршрутов в порядке приоритетов и устанавливает тот, который свободен (если таковой имеется, в противном случае ставит в стек тот, у которого нулевой приоритет). Но это пока в планах.[/QUOTE] Все хорошо, только вот в Бекасово каком-нибудь их, маршрутов, может быть несколько тысяч. Нужно автоматизировать процесс.

[QUOTE]от выделения памяти на Соупы с новыми последовательностями стрелок.[/QUOTE] Ой, да хватит втирать. Или у тебя на каждый маршрут по супу?

[QUOTE]Здесь только следует иметь ввиду, что принцип "едь куда сможешь" годится только для транзитных поездов по станции![/QUOTE] Ну почему же. Для всех поездов годится, и команда называется Autodrive. Катит по прямой, не трогая стрелки, пока не упрется в заданный маркер.

[QUOTE]Еду я грузовым - у меня один набор приоритетов, еду пассажирским - другой.[/QUOTE] Есть приоритеты у поездов, есть маркеры приоритета путей. 2+2=?. Тем более, что никто, в принципе, не запрещает не ограничиваться исходными тремя.

[QUOTE]Для двухпутных участков это почти не актуально, главный бывает редко занят, когда уже прибывает следующий поезд. А вот на однопутных - это сплошь и рядом при разъезде даже двух поездов.[/QUOTE] В жизни машинист не занимается вопросом скрещения с поездами. Стало быть, и нам не нужно изобретать велосипед: пусть контролем направления перегона занимается сигнализация и маршрутизация. И вообще, обсуждаемая система вопроса направления перегона не должна касаться — её задачей является обеспечение невозможности сборки маршрута, если перегон открыт "не туда" и занят. А вот уж какие поезда выпускать на перегон и в каком направлении, должен решать некий вышестоящий орган.

[QUOTE]На однопутных участках, на станции, например, из 3-х путей, на боковой заходит именно тот поезд, который прибывает первым на станцию и который будет ждать встречного. Это я говорю о грузовых транзитных. 1-му то всё равно стоять и заходить на станцию с уменьшенной скоростью (под красный), а вот второй уже проносится по главному в соответствии с таблицей скоростей по горловинам станции. Вот бы такое реализовать бы ещё. А при этом главный путь имеет 1-й приоритет всегда: если нет встречного, то как неслись, так и несемся мимо станции по главному.
Да, в жизни это разруливает ДСП... Но всё же...[/QUOTE] При приходим к порочному смешиванию системы, управляющей движением в целом, и системы, реализующей сборку конкретного маршрута. Так что надо определиться, что мы здесь делаем: автоДСП/ДНЦ, или более удобную полуавтоматическую альтернативу PathControl? Я считаю, нужно стремиться ко второму, к системе, которая позволит отдавать команды типа "собрать маршрут от Ч до Ч6", но уж умеющую делать это хорошо и обладающую развитыми внешними интерфейсами, чтобы можно было удобно использовать это в сценариях и в будущем легко дополнять всякими выкрутасами типа мнемосхемы, автоДСП и пр.

[QUOTE]Другое дело, что знаю также, что намного выгоднее в перегон вдавливать с одной стороны штук 5-6 поездов, с другой - 2.[/QUOTE] Одноминутка энциклопедичности: это движение пакетом.

TRam_ 30.09.2010 21:01

[QUOTE]Ой, да хватит втирать. Или у тебя на каждый маршрут по супу?[/QUOTE]да, по одному. Другое дело их не много - у самого замаршрутированного светофора Г3 того самого Бекасово всего 40 элементарных маршрутов, есть ещё 2 по 39. А так по входным 5-10 на крупной и 3-4 на мелокой станциях, на выходных - по 2-3 (в зависимости от числа путей на перегоне).


[QUOTE]Все хорошо, только вот в Бекасово каком-нибудь их, маршрутов, может быть несколько тысяч. Нужно автоматизировать процесс.[/QUOTE]как раз в Бекасово альтернативных маршрутов немного. Вот где их много, так это в Москве-Киевской. Но там проблемы с Х-стрелками.

[QUOTE]Я считаю, нужно стремиться ко второму, к системе, которая позволит отдавать команды типа "собрать маршрут от Ч до Ч6", но уж умеющую делать это хорошо и обладающую развитыми внешними интерфейсами, чтобы можно было удобно использовать это в сценариях и в будущем легко дополнять всякими выкрутасами типа мнемосхемы, автоДСП и пр.[/QUOTE]ну моя умеет, да интерфейс только один (пока). Но вот построить от Ч ст. Внуково до Ч ст. Солнечная она сама научиться не сможет. Это я хочу поручить автодиспетчеру, но самой строить не позволю.

Да, сейчас выделил проверку путей и стрелок на занятость, альтернативный маршрут она находит. Но вот приоритетов альтернативных маршрутов пока не хочет понимать.

NickLon 30.09.2010 21:09

[QUOTE=TRam_;205683] Другое дело, что знаю также, что намного выгоднее в перегон вдавливать с одной стороны штук 5-6 поездов, с другой - 2. Тогда эти 2 в основном стоят на станциях, пока их объедут по главному та кучка из поездов. В результате получаем довольно значительный перевес над "сеточкой" в ГИД, когда на перегоне есть только один поезд.
[/QUOTE]
А тут - БАЦ, один из двух - скорый. Как в той электричке "Стоим, курим бамбук. Выходной закрыт!":rofl:
Давай не будем рассматривать случаи из серии "А что если солнце упадет на землю?" Это касается и варианта о том, что на перегон натолкали больше ПС, чем может принять ближайшая станция.
[QUOTE]
По поводу твоих мыслей ... У меня была такая: "что пассажирскому хорошо, то грузовому плохо", т.е. единая система, когда чем выше приоритет пути, тем меньше хотят на него грузовые, и тем больше - пассажирские. За исключением "нейтральных" - главных. Но пока до этого далеко.
[/QUOTE]
Неа-а! Опять не взлетит. Станции разные бывают. На одной может быть 2 пути под платформами, то есть "пассажирский парк", а 4 - грузовой, а на другой аж с 5-го начинается грузовой. Так с какого пути грузовому "должно быть плохо", и по какой "пассажирскому хорошо"? Группировки тебе не миновать!:p
[QUOTE]
то, что выложено, и есть сим ДСП. Только без мнемосхемы и рисования графиков.[/QUOTE]
Я думаю, что к моей "мысли вслух" можно будет вернуться после того, как почитаем прения других. Сейчас, я думаю, пока ещё рано над этим ломать копья...

TRam_ 30.09.2010 21:14

[QUOTE]Это касается и варианта о том, что на перегон натолкали больше ПС, чем может принять ближайшая станция.[/QUOTE]согласно сигнализации это вполне нормальная ситуация. И сигналка с АБ её запрещать не должна.

[QUOTE]Так с какого пути грузовому "должно быть плохо", и по какой "пассажирскому хорошо"?[/QUOTE]маркер приоритета ставь возле пассажирских платформ и возле входа на парк. Тогда у тебя ни один грузовой не остановится у платформы (хотя на станции родного города один раз такое видел), т.к. недоедет до неё.

[QUOTE]А тут - БАЦ, один из двух - скорый.[/QUOTE]вот поэтому УСВАП уже есть, а автоДСП ещё нет.

NickLon 30.09.2010 21:59

[QUOTE=Combine;205736]
Ну почему же. Для всех поездов годится, и команда называется Autodrive. Катит по прямой, не трогая стрелки, пока не упрется в заданный маркер.
[/QUOTE]
Так, ну у команды Autodrive есть ещё и маркер, который задан, как ты правильно заметил. Только вот либо to, либо through. Если through, а маркер аж за выходной станцией - смело задаём группу "едь, где сможешь проехать". А вот если to, то что-то мне нужно на станции. То ли отцеп оставить, то ли забрать. И прибыть мне нужно на конкретный путь. А это значит, что "едь, куда сможешь" не прокатит.
P.S. Увы, SheduleAtTrackMark в Т10 не работает, не только я пытался на разных билдах это сделать.


Текущее время: 15:18. Часовой пояс GMT +4.

Powered by vBulletin® Version 3.8.12 by vBS
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd. Перевод: zCarot
© 2001-2019, Администраторы и разработчики Клуба Trainsim