Примером радикально структурированных транспортных потоков являются потоки поездов на линиях многих метрополитенов. Поезда следуют друг за другом по одному и тому же маршруту с равными промежутками времени от одной конечной станции до другой, после чего реверсируется направление их движения, осуществляется переход на другой путь и цикл повт оряется вновь.. Несмотря на такую простейшую организацию движения (но очень надёжную, что крайне важно) и в подобных процессах возникают возмущения: технические неисправности, недисциплинированность или невнимательность пассажиров, и многое другое, что приводит к сбоям, отставанию и необходимости восстановления нормативного графика движения поездов.. Последнее может осуществляться либо централизованно с использованием диспетчерского централизованного управления, либо автономно при наличии соответствующего оборудования и логики в автономной системе управления.. Эта логика может быть легко описана с помощью того математического инструментария, который приведен в предыдущих главах. Кроме того, на его основе может быть проведен анализ устойчивости системы управления движением, определён режим рациональной организации движения и так далее.. Продемонстрируем эти возможности на следующем простом примере. Пусть на линии, имеющей в своём составе два пути: 1-й и 2-й; две конечные станции: SL и SR, где реверсируется движение поездов; одну промежуточную станцию с двумя платформами: SM1 и SM2; восемь светофоров: HL1, HL2, HR1, HR2, HM11, HM12, HM21, HM22, стоящих на входах и выходах станционных платформ. На линии имеется четыре перегона, по которым движется четыре поезда: по поезду на каждом перегоне. Длины всех перегонов одинаковы и равны 1-му километру. Схема линии приведена на ри с. 4.2.1.
Рис.4.2.1
Нормативная скорость движения поездов определяется следующей величиной
Vнорм= 36 км/час.
Нормативное время стоянки поезда на платформе для выгрузки и загрузки пассажиров
Tstнорм = 25 сек.
Время, затрачиваемое на реверсирование направления движения поезда (смена кабины), равно
Трев = 30 сек.
Будем предполагать также, что организация движения такова, что на перегоне в каждый момент времени может находиться один и только один поезд. В случае отставания поезда по каким-либо причинам от нормативного графика движения его восстановление может происходить за счёт увеличения скорости движения на перегоне до
Vнаг = 40 км/ час
и сокращения времени стоянки на 5 сек.
Тнагst = 20 сек.
В случае движения поезда с более высокой скоростью восстановление графика движения осуществляется за счёт снижения скорости до Vтор = 30 км/ час
и увеличения времени стоянки на платформе на 5 сек.
Тторst = 30 сек.
Слежение за исполнением нормативного графика движения может осуществляться либо на основе сравнения тех скоростей, которые должны быть у поезда в зоне Bi в соответствии с графиком Vгр(Bi) и фактической скорости Vфакт(Bi). Их отношение
r = Vфакт(Bi)/ Vгр(Bi) (4.2.1)
даёт возможность принять решение о поддержании режима движения, если r = 1, торможение, если r > 1, или ускорение, если r < 1. Понятно, что управление режимом движения может быть построено и на основе сравнения тех времён, которые должны быть у поезда в зоне Bi, если он движется в соответствии с графиком Tgr(Bi) и фактическим временем Tfact(Bi).В таком случае, если
R = Tgr(Bi) – Tfact(Bi) = 0, (4.2.2)
то режим движения поддерживается прежним, если
R = Tgr(Bi) – Tfact(Bi) < 0, (4.2.3) то должен быть включён режим ускорения, и если
R = Tgr(Bi) – Tfact(Bi) > 0, (4.2.4)
то включается режим торможения.
Для реализации этого способа управления должен быть выстроен график движения поезда при нормальных условиях его реализации. Приведём таблицу времён пребывания поезда в различных точках маршрута по пути его следования (табл. 4.2.1), считая для простоты, что фактором инерционности можно пренебречь.
№ | Время (сек) | Зона (м) | |
0 | 0 | HL1 (0) | |
1 | 5 | B11 (50) | |
2 | 10 | B21 (100) |
Таблица 4.2.1
B31 (150) | |||
B41 (200) | |||
B51 (250) | |||
B61 (300) | |||
B71 (350) | |||
B81 (400) | |||
B91 (450) | |||
B101 (500) | |||
B111 (550) | |||
B121 (600) | |||
B131 (650) | |||
B141 (700) | |||
B151 (750) | |||
B161 (800) | |||
B171 (850) | |||
B181 (900) | |||
B191 (950) | |||
HM11 (1000) | |||
SM1 (1000) | |||
SM1 (1000) | |||
SM1 (1000) |
SM1 (1000) | ||
HM12 (1000) | ||
B201 (1050) | ||
B211 (1100) | ||
B221 (1150) | ||
B231 (1200) | ||
B241 (1250) | ||
B251 (1300) | ||
B261 (1350) | ||
B271 (1400) | ||
B281 (1450) | ||
B291 (1500) | ||
B301 (1550) | ||
B311 (1600) | ||
B321 (1650) | ||
B331 (1700) | ||
B341 (1750) | ||
B351 (1800) | ||
B361 (1850) | ||
B371 (1900) | ||
B381 (1950) | ||
HR1 (2000) |
SR1 (2000) | |||
SR1 (2000) | |||
SRR (2000) | |||
SRR (2000) | |||
SRR (2000) | |||
SRR (2000) | |||
SRR (2000) | |||
SRR (2000) | |||
SR2 (2000) | |||
SR2 (2000) | |||
HR2 (2000) | |||
B12 (2050) | |||
B22 (2100) | |||
B32 (2150) | |||
B42 (2200) | |||
B52 (2250) | |||
B62 (2300) | |||
B72 (2350) | |||
B82 (2400) | |||
B92 (2450) | |||
B102 (2500) |
B112 (2550) | |||||||||||||||||||||
B122 (2600) | |||||||||||||||||||||
B132 (2650) | |||||||||||||||||||||
B142 (2700) | |||||||||||||||||||||
B152 (2750) | |||||||||||||||||||||
B162 (2800) | |||||||||||||||||||||
B172 (2850) | |||||||||||||||||||||
B182 (2900) | |||||||||||||||||||||
B192 (2950) | |||||||||||||||||||||
HM21 (3000) | |||||||||||||||||||||
SM2 (3000) | |||||||||||||||||||||
SM2 (3000) | |||||||||||||||||||||
SM2 (3000) | |||||||||||||||||||||
SM2 (3000) | |||||||||||||||||||||
HM22 (3000) | |||||||||||||||||||||
B202 (3050) | |||||||||||||||||||||
B212 (3100) | |||||||||||||||||||||
B222 (3150) | |||||||||||||||||||||
B232 (3200) | |||||||||||||||||||||
B242 (3250) | |||||||||||||||||||||
B252 (3300) | |||||||||||||||||||||
B262 (3350) | |||||||||||||||||||||
B272 (3400) | |||||||||||||||||||||
B282 (3450) | |||||||||||||||||||||
B292 (3500) | |||||||||||||||||||||
B302 (3550) | |||||||||||||||||||||
B312 (3600) | |||||||||||||||||||||
B322 (3650) | |||||||||||||||||||||
B332 (3700) | |||||||||||||||||||||
B342 (3750) | |||||||||||||||||||||
B352 (3800) | |||||||||||||||||||||
B362 (3850) | |||||||||||||||||||||
B372 (3900) | |||||||||||||||||||||
B382 (3950) | |||||||||||||||||||||
HL2 (4000) | |||||||||||||||||||||
SL2 (4000) | |||||||||||||||||||||
SL2 (4000) | |||||||||||||||||||||
SLR (4000) | |||||||||||||||||||||
SLR (4000) | |||||||||||||||||||||
SLR (4000) | |||||||||||||||||||||
SLR (4000) | |||||||||||||||||||||
SLR (4000) | |||||||||||||||||||||
SLR (4000) | |||||||||||||||||||||
SL1 (4000) | |||||||||||||||||||||
SL1 (4000) | |||||||||||||||||||||
560=0 | HL1 (0) | ||||||||||||||||||||
При формировании значений таблицы 4.2.1 предполагалось, что: во-первых, размер динамической зоны – 50 м достаточен для обеспечения безопасности при движении поезда со скоростью 10 м/сек; во-вторых, на конечных станциях время выгрузки на платформе одного пути – 10 сек и время погрузки на платформе другого пути – также 10 сек; в-третьих, реверсирование осуществляется на станционных путях конечных станций SLR и SRR. Каждый из четырёх поездов в t = 0 сек трогается от своей платформы: V11 от SM1, если открыт светофор HM12; V21 от SL1, если открыт светофор HL1; V12 от SM2, если открыт светофор HM22; V22 от SR2, если открыт светофор HR2. Это соответствует дислокации (4.2.5): [V21(SL1)/q012]HL1 B11B21B31…..B191HM11[V11(SM1)/q011]HM12B201…..B381HR1SR1SRR SLRSL2HL2B382B372…..B202HM22[V12(SM2)/q021]HM21B192…..B12HR2[V22(SR2)/q022]
(4.2.5)
Оператор, обеспечивающий управление движением каждого из поездов Vji, описывается следующей совокупностью команд (4.2.6):
[(Vji(R=0)/q0ij]BlST(Vnorm)[Vji/q0ij]; Vji(R>0)/q0ij]BlST(Vmin)[Vji/q1ij]; [ [(Vji(R>0)/q1ij]BlST(Vmin)[Vji/q1ij]; [Vji(R=0)/q1ij]BlST(Vnorm)[Vji/q0ij]; [Vji(R<0)/q0ij]BlST(Vmax)[Vji/q2ij]; [Vji(R<0)/q2ij]BlST(Vmax)[Vji/q2ij]; [Vji(R=0)/q2ij]BlST(Vnorm)[Vji/q0ij];
[Vji/q0ij]HDPST(Vnorm)[Vji/q0ij];[Vji/q1ij]HDPST(Vmin)[Vji/q1ij]; [Vji/q2ij]HDPST(Vmax)[Vji/q2ij]; [Vji/q0ij]~HDPEX[Vji/q0ij]; [Vji/q1ij]~HDPEX[Vji/q1ij]; [Vji/q2ij]~HDPEX[Vji/q2ij]; [Vji(R=0)/q0ij]SDPEX[Vji/q3ij]; [Vji/q3ij]SDPEX[Vji/q4ij]; [Vji/q4ij]SDPEX[Vji/q5ij]; [Vji/q5ij]SDPEX[Vji/q6ij]; [Vji/q6ij]SDPEX[Vji/q7ij]; [Vji/q7ij]SDPST(Vnorm)[Vji/q0ij]; [Vji(R<0)/q2ij]SDPEX[Vji/q8ij]; [Vji/q8ij]SDPEX[Vji/q9ij]; [Vji/q9ij]SDPEX[Vji/q10ij]; [Vji/q10ij]SDPEX[Vji/q11ij]; [Vji/q11ij]SDPST(Vmin)[Vji/q1ij]; [Vji(R>0)/q1ij]SDPEX[Vji/q12ij]; [Vji/q12ij]SDPEX[Vji/q13ij]; [Vji/q13ij]SDPEX[Vji/q14ij]; [Vji/q14ij]SDPEX[Vji/q15ij]; [Vji/q15ij]SDPEX[Vji/q16ij]; [Vji/q16ij]SDPEX[Vji/q17ij]; [Vji/q17ij]SDPST(Vmax)[Vji/q2ij]; [Vji(R=0)/q0ij]SQPEX[Vji/q18ij]; [Vji/q18ij]SQPEX[Vji/q19ij]; (4.2.6) [Vji/q19ij]SQPST(Vnorm)[Vji/q20ij]; [Vji/q20ij]SQRRE[Vji/q21ij]; [Vji/q21ij]SQREX[Vji/q22ij]; [Vji/q22ij]SQREX[Vji/q23ij]; [Vji/q23ij]SQREX[Vji/q24ij]; [Vji/q24ij]SQRST(Vnorm)[Vji/q25ij]; [Vji/q25ij]SQPEX[Vji/q26ij]; [Vji/q26ij]SQPEX[Vji/q27ij]; [Vji/q27ij]SQPST(Vnorm)[Vji/q0ij]; [Vji(R>0)/q1ij]SQPEX[Vji/q28ij]; [Vji/q28ij]SQPEX[Vji/q29ij]; [Vji/q29ij]SQPST(Vnorm)[Vji/q30ij]; [Vji/q30ij]SQRRE[Vji/q31ij]; [Vji/q31ij]SQREX[Vji/q32ij]; [Vji/q32ij]SQREX[Vji/q33ij]; [Vji/q33ij]SQREX[Vji/q34ij]; [Vji/q34ij]SQRST(Vnorm)[Vji/q35ij]; [Vji/q35ij]SQPEX[Vji/q36ij]; [Vji/q36ij]SQPEX[Vji/q37ij]; [Vji/q37ij]SQPST(Vmin)[Vji/q1ij]; [Vji(R<0)/q2j]SQPEX[Vji/q38ij]; [Vji/q38ij]SQPEX[Vji/q39ij]; [Vji/q39ij]SQPST(Vnorm)[Vji/q40ij]; [Vji/q40ij]SQPRE[Vji/q41ij]; [Vji/q41ij]SQPEX[Vji/q42ij]; [Vji/q42ij]SQPEX[Vji/q43ij]; [Vji/q43ij]SQPEX[Vji/q44ij]; [Vji/q44ij]SQPST(Vnorm)[Vji/q45ij]; [Vji/q45ij]SQPEX[Vji/q46ij]; [Vji/q46ij]SQPEX[Vji/q47ij]; [Vji/q47ij]SQPST(Vmax)[Vji/q2ij].
В приведенном описании операторов (4.2.6) использовано выражение: ~H, обозначающее запрет на движение в противовес H, символизирующему «зелёный свет». Кроме того, в описании использованы проиндексированные символы: HDP, SDP, SQP, SQR, которые не были введены ранее. В первом случае под верхним индексом Р имеются ввиду раличные варианты индексов, введённых ранее: 1, 11, 12, 21, 22 и 2, а под символом D – L, M, R. Индексированные символы SQP имеют отношение к конечным станциям, при этом символ Q может принимать значения L и R. Наконец, верхний индекс символа SQR обозначает станционные пути, используемые на конечных станциях SL и SR для реверсирования движения. Сама же операция реверсирования выполняется за несколько тактов, из-за чего многократно повторяется операция ЕХ после использования в описании символа операции реверсирования RE. В самом процессе движения периодически осуществляется контроль исполнения графика движения. Если при этом для некоторого поезда Vji в момент проверки R=0, что в описании (4.2.6) представляется выражением Vji(R=0), то движение осуществляется по нормативам, если Vji(R>0), то надо снижать скорость. С этой целью выполняется операция
... [Vji(R>0)/q0ij]BlST(Vmin)[Vji/q1ij],(4.2.7)
после чего движение осуществляется со скоростью Vmin=30 км/час, которая поддерживается до тех пор, пока поезд не войдёт в график. Если же Vji(R<0), то необходимо повышать скорость, и с этой целью выполняется операция:
[Vji(R<0)/q0ij]BlST(Vmax)[Vji/q2ij] (4.2.8)
Эта скорость Vmax=40 км/час поддерживается до тех пор, пока поезд не войдёт в график. Кроме того, в этих случаях при (R>0) увеличивается стоянка на станциях, а при (R<0), наоборот, уменьшается время пребывания на станции.. Пусть теперь далее складывается следующая ситуация. Поезд V12 идёт с нормативной скоростью и, проехав по своему перегону 50 сек., оказывается в зоне, соответствующей пройденному расстоянию, то есть пятистам метрам. Поезд V11 на тот же момент времени в силу технических причин прощёл только 300 м. Поезд V21 обогнал график и в обозначенный момент времени прошёл 600 м, а V22 так же, как и V11 отстаёт от графика и прошёл 400 м. Рассмотрим, как в соответствии с логикой оператора (4.2.6.) будет складываться транспортный процесс. Базовая модель для описания процесса соответствует (4.2.9)
[Vji(Sk,Rk)/qmij(k)]║Sk+1║ Act(k+1) [Vji(Sk+1,Rk+1)/qlij(k+1)],
│Sk+1│=│Sk│ + µk+1βWk ▬>αk+1,║Sk+1║, │(Sk+1+1)│=│Sk│+2µk+1βWk ▬> ║(Sk+1+1)║, k =: k + 1, T = β(k + 1). (4.2.9)
где Wk – скорость на k-м такте движения, а β – размер такта. равный 5 сек. Для упрощения записи будем считать, что k=0 соответствует описанной выше ситуации. В таком случае при k=0:
[V11(300,R0<0)/q011(0)]B; [V12(500,R0=0)/q021(0)] B;
[V21(600,R0>0)/q012(0)]B; [V22(400,R0<0)/q022(0)]B.
Далее транспортный процесс будет развиваться следующим образом. Проследим за его развитием по шагам.
k=1 (t=5 сек)
[V11(300,R0<0)/q011(0)]BST(Wmax)[V11(S1)/q211(1)]─>µ1=+1; │S1│=│S0│+µ1βWmax=300+1∙5∙11,11≈356→║S1║=B; │(S1+1)│=│S0│+2µ1βWmax≈412→║(S1+1)║=B.
k=:2, t = 10 сек.
[V21(600,R0>0)/q012(0)]B ST(Wmin)[V21(S1)/q112(1)]→µ1=+1; │S1│=│S0│+µ1βWmin=600+1∙5∙8,33≈641,7→║S1║=B; │(S1+1)│=│S0│+2µ1βWmin≈683,4→║(S1+1)║=B; [V12(500,R0=0)/q021(0)]BST(Wnorm)[V12(S1)/q021(1)]→µ1=+1; │S1│=│S0│+µ1βWmin=500+1∙5∙10=550→║S1║=B; │(S1+1)│=│S0│+2µ1βWnorm=600→║(S1+1)║=B; [V22(400,R0)/q022(0)]BST(Wmax)[V22(S1)/q222(1)]→µ1=+1; │S1│=│S0│+µ1βWmax=400+1∙5∙11,11≈456→║S1║=B │(S1+1)│=│S0│+2βWmax≈512→║(S1+1)║=B.
Пропустим некоторое количество тактов и вычислим, что будет происходить на 55-й секунде и вслед за нею.
K=11 (t=55 сек)
[V11(859,R10<0)/q211(10)]BST(Wmax)[V11(S11)/q211(11)]→ µ11=+1;│S11│=│S10│+µ11βWmax≈859+56≈915→║S11║=B; │(S11+1)=│S10│+2µ11βWmax≈971→║(S11+1)║=B; [V21(1000,R10=0)/q012(10)]SR1EX[V21(S11)/q012(11)]→µ11=0;
│S11│=│S10│+µ11βWnorm=1000→║S11║=SR1;
│(S11+1)│=│S10│+2µ11βWnorm=1000→║(S11+1)║=SR1;
[V12(1000,R10=0)/q021(10)]SL1EX[V12(S11)/q021(11)]→µ11=0;
│S11│=│S10│+µ11βWnorm=1000→║S11║=SL1; │(S11+1)│=│S10│+2µ11βWnorm=1000→║(S11+1)║=SL1; 11µ11=+1;│S11│=│S10│+µ11βWmax≈959+56≈1015→║S11║=SM2;│(S11+1)│=│S10│+2µ11βWmax≈959+112≈1071→ ║(S11+1)║=HM22. Рассматривая этот фрагмент,следует иметь ввиду, что V21, обгонявший график, за несколько секунд до шага k=11 вошёл в график, перейдя в состояние q012. Далее он может осуществлять свои действия в соответствии с нормативным графиком движения так же, как это делает и V12. Учитывая это, для упрощения рассмотрения далее не будем вести расчёт графика, а сосредоточимся только на описании движения V11 и V22. k=12(t=60сек) [V11(915,R11<0)/q211(11)]BST(Wmax)[V11(S12)/q211(12)]→ µ12=+1;│S12│=│S11│+µ12βWmax≈915+56≈971→║S12║=B;
│(S12+1)│=│S12│+2µ12βWmax≈1027→║(S12+1)║=HM11;
[V22(1015,R11<0)/q222(11)]SM2 EX[V22(S12)/q822(12)]→µ12=0;
│S12│=│S11│+µ12βWmax≈1015→║S12║=SM2;
│(S12+1)│=│S11│+2µ12βWmax≈1015→║(S12+1)║=SM2. k=13(t=65сек) [V11(971,R12<0)/q211(12)]BST(Wmax)[V11(S13)/q211(13)]→µ13=+1; │S13│=│S12│+µ13βWmax≈971+56≈1027→║S13║=HM11; │(S13+1)│=│S12│+2µ13βWmax≈1083→║(S13+1)║=SM1; [V22(1015,R12<0)/q822(12)]SM2EX[V22(S13)/q922]→µ13=0 │S13│=│S12│+µ13βW=1015→║S13║=SM2; │(S13+1)│=│S12│+2µ13βW=1015→║(S13+1)║=SM2.
Учитывая, что V22 в соответствии с оператором (4.2.6) будет иметь сокращенную на 5 сек. стоянку, по сравнению с V12 и V21, то он к 15-му такту входит в нормативный график движения. Далее V21, V12 и V22 будут двигаться в соответствии с задаваемым графиком нормативного движения. Поезд V11 к этому времени ещё не может войти в график, что видно из следующего описания состояния процесса. k=14(t=70сек) [V11(1027,R13<0)/q211(13)]HM11EX[V11(S14)/q811(14)]→µ14=0; │S14│=│S13│+µ14βW=1027→║S14║=SM1; │(S14+1)│=│S13│+2µ14βW=1027→║(S14+1)║=SM1. k=15(t=75сек) [V11(1027,R14<0)/q811(14)]SM1EX[V11(S15)/q911(15)]→µ15=0; │S15│=1027→║S15║=SM1; │(S15+1)│=1027→║(S15+1)║=SM1. k=16(t=80сек) [V11(1027,R15<0)/q911(15)]SM1EX[V11(S16)/q1011] → µ16=0; │S16│=1027→║S16║=SM1; │(S16+1)│=1027→║(S16+1)║=SM1. k=17(t=85сек) [V11(1027,R16<0)/q1011(16)]SM1EX[V11(S17)/q1111(17)]→µ17=0; │S17│=1027→║S17║=SM1; │(S17+1)│=1027→║(S17+1)║=SM1. k=18(t=90сек) [V11(1027,R17<0)/q1111(17)]SM1ST(Wmax)[V11(S18)/q211(18)]→µ18=+1; │S18│=│S17│+µ18βWmax≈1027+56≈1083→║S18║=B; │(S18+1)│=│S17│+2µ18βWmax≈1027+112≈1139→║(S18+1)║=B. Далее процесс развивается так, что V11 последовательно нагоняет график нормативного движения и к 46-му такту войдёт в график, по которому также движутся и остальные поезда. Как видно из этого рассмотрения, логика оператора позволяет потоку парировать возникшие возмущения и адаптировать транспортный процесс к этим условиям.