Mala metoda dovoljno velika da ne bude mala

2021-10-19

"Oni su mali, ali su veliki, odnosno, hoću reći, nisu više mali, ali su dosta veliki da ne budu mali" ...

... je rečenica iz serije Smogovci, koja je sadržajem, duhom i lokacijom obilježila moju mladost. TV nismo gledali, ali se zgode obitelji Vragec nisu propuštale. Operacijska istraživanja su obvezni kurikul inženjerskog obrazovanja. Najčešće se tako naziva i sam kolegij u kojem istaknuto mjesto zauzima linearno programiranje i simpleks metoda. Simpleks metoda je jednostavna (intuitivna), a time i shvatljiva nematematičarima, iterativna je, a time i konačna. To je nešto što inženjeri ne bi smjeli propustiti. Rijetko susrećem korištenje simpleks metode kod drugih kolega i na drugim projektima, općenito postupaka matematičkog programiranja, jer su prometni problemi "složeni, višeslojni, višekriterijski, kompleksni, ...", a za takve "komplicirane" probleme imamo već gotove programske pakete koji nam daju "brze i točne" odgovore. Koliko su neki odgovori više ili manje točni, stvar ukusa i konkretnog doživljaja svakodnevnog prometovanja. Možda bi neki odgovori (rješenja) bili bolji da ne robujemo predrasudama o složenosti (nelinearnosti) problema, a ponekad i zbog straha da nam principal (investitor, naručitelj, političar) neće vjerovati ako neki "veliki i komplicirani" prometni problem predstavimo jednostavnom matematičkom metodom (modelom). Prometni inženjeri se u svojem obrazovanju susreću s praktičnom primjenom linearnog programiranja na manje-više školskim primjerima transportnih problema: distribucija roba i/ili vozila ili izbora vozila. U ovoj temi predstavljam primjere koji ilustriraju primjenu i učinkovitost linearnog programiranja u prometnoj tehnici.

Inženjeri problemu pristupaju, barem bi trebali, s tri premise: (1) jedinstvenost problema, (2) ne postoji beznačajan element i (3) pronaći najslabiju kariku. "Copy-paste" je lagan i siguran put u uništenje inženjerskog kredibiliteta; danas je to svojevrstan paradoks jer dostupnost znanja i informacija otvaraju svakom inženjeru mogućnost aplikacije i prilagodbe određene znanstvene metode za pristup svakom problemu na ispravan (jedinstven) način. Druga i treća premisa su povezane, jer ako nešto propustimo (zanemarimo) onda je vrlo vjerojatan loš ishod, jer najčešće nešto što smo propustili sadržava ili je dio "najslabije karike" (Murphyjev zakon smo svi barem jednom osjetili na svojoj koži). Bez obzira da li problemu pristupamo deduktivno (od općeg prema pojedinačnom/posebnom; odozgo prema dolje) ili induktivno (od pojedinačnih činjenica prema općem zaključku; odozdo prema gore) uvijek dođemo ili krenemo od točke pojedinačnog - jednostavnog - temeljnog.

Sve nabrojano nam omogućuje matematičko programiranje. Možda već imamo definiran problem i sustav. Onda nam treba deduktivna metoda. Biramo funkciju cilja koja opisuje njegov postojeći ili željeni rad, a oko nje gradimo veličine (svaka je važna), njihove međusobne odnose, vrednujemo ih i postavljamo im logične (tehnologijom ili zakonom) uvjetovane granice. Ako stvaramo neki sustav, onda krećemo induktivno: gledamo njegove sastavne dijelove (veličine), stvaramo relacije i granice, a na kraju, kad vidimo s čime raspolažemo, određujemo (definiramo) mjeru uspješnosti rada sustava (funkciju cilja). Inženjeru koji dobro poznaje problem će rješenje matematičkog programa odmah pokazati i ukazati: je li dobro razmišljao (jedinstveno sagledao problem), da li nešto nedostaje (ispušten neki element) i koja veličina je kritična ("najslabija karika").

Kroz konkretan primjer pokazat ću primjenu simpleks metode na jednom klasičnom prometnom nelinearnom problemu. Ako je išta nelinearno u našim životima onda je to odvijanje prometa (svih vidova). Pa kako onda primijeniti nešto jednostavno i linearno? Predstavljam semaforizaciju trokrakog raskrižja u gradu blizu Zagreba. Projekt je aktualan pa ga ne identificiram.

Raskrižje je planirano za rad u tri faze: (1) sjever i jug, (2) štićeno kretanje za lijevo skretanje na jugu i (3) zapad. Sukladno tome su pridodane i signalne grupe koje pokrivaju i grupe prometnih traka: V1 - zapad, V2 - jug, V2L - zelena lijeva strelica na jugu i V4 - sjever. Pješaci preko zapada imaju oznaku P1 i preko juga P2. Još su dodane i zelene desne strelice na zapadu (V1D) i sjeveru (V4D). Prometno opterećenje raskrižja u mjerodavnom vršnom satu 1.145. voz/h, a kada se na prometne tokove djeluje faktorom vršnog sata 1.341 voz/h. Taman da ga (ne) treba semaforizirati. Kada se tome pridoda javni gradski promet i prisutnost školske djece, uz činjenicu da nema prostora izvođenja kružnog toka prometa, rješenje semaforizacije očito predstavlja omogućavanje sigurnog prelaska pješaka uz osiguranje dostatne propusne moći javnog i motornog prometa.

Time smo postavili funkciju cilja: (1) siguran prelazak pješaka i (2) dostatna popusna moć motornog prometa. Siguran prelazak pješaka znači dovoljno zelenog vremena, ali i kratak ciklus kako bi se kratko čekalo na prelazak i izbjegavale opasne radnje nestrpljivih pješaka. Javni i motorni promet dijele iste prometne površine pa osiguranje dostatne propusne moći jamči i kvalitetu prometovanja javnog prijevoza.

Siguran prelazak pješaka ćemo jednostavno osigurati ograničenjima matematičkog programa. Kraću duljinu ciklusa na isti način. Ostaje zadovoljiti kratko vrijeme čekanja i dostatnu propusnu moć. Postoje različiti modeli vremena čekanja i oni predstavljaju kompozicije racionalnih, kvadratnih i eksponencijalnih funkcija. Stupanj zasićenja predstavlja racionalnu funkciju. Kako ove nelinearne izraze prilagoditi linearnom matematičkom programu? Možemo i moramo iskoristiti mogućnost aplikacije i prilagodbe određene znanstvene metode (u ovom slučaju matematičke) konkretnom problemu.

Svaki (ili gotovo) svaki prometni model ima dvije komponente: uniformnu i povećanu. Uniformna komponenta opisuje postojanje (egzistenciju) sustava. Na semaforiziranom raskrižju ne mogu svi proći bez čekanja, bez obzira nalazili se na glavnom ili sporednom pravcu. Osnovni iznos vremena čekanja pokazuje uniformna komponenta. Povećana komponenta pokazuje da li će zbog uvjeta prometa i semaforizacije to čekanje biti veće i koliko, ponekad i manje kod sinkroniziranih raskrižja. Većina jednostavnih prometnih modela su realne funkcije više varijabli i relativno dobro opisuju prometnu situaciju u granicama propusne moći. Pridjev "relativno" se može zamijeniti pridjevom "jako" ako se inženjer potrudi uskladiti opće koeficijente s konkretnim (lokalnim) prometnim uvjetima. U uvjetima zagušenja model je potrebno proširiti elementima slučajnosti i kontinuiranosti jer treba čekati više od jednog ciklusa. Slika pokazuje HCM model vremena čekanja koji je preporučen (obvezan) u Hrvatskoj:

  • uniformna komponenta (d1) mijenja se linearno prema stupnju zasićenja,
  • povećana komponenta (d2) prati prometni proces i kako se približavamo granici propusne moći tako počinje i njezin eksponencijalni rast.

Slika pokazuje da povećana komponenta dostiže uniformnu kada stupanj zasićenje dostigne 0,90; područje nastanka nestabilnog prometnog toga i pojave povremenih zagušenja (povećanih repova čekanja).

Modela prosječnog vremena čekanja ima puno, ali svi (relevantni) su izvedeni iz Websterove jednadžbe koja kaže da uniformna komponenta prosječnog vremena čekanja (d1) ovisi o sve četiri glavne veličine semaforizacije: duljine ciklusa (C) i efektivnog zelenog vremena (g) te prometnog (q) i zasićenog toka (S).

Obično koeficijent k(d1) poprima vrijednosti 0,38 - 0,50 (u posljednje vrijeme sve više 0,50), a odnosi vremena semaforizacije i prometnih tokova se označavaju grčkim slovom lambda i malim slovom y pa jednadžba ima sljedeći oblik, najčešće prezentiran u literaturi za slučaj kada nema zagušenja:

Modeli repova čekanja ponašaju se na sličan način što je i logično: manje čekanja znači i manju vjerojatnost stvaranja dužeg repa čekanja. Osnovni rep čekanja računa se temeljem općih znanja o teoriji repova čekanja i sadrži prometni tok (tok klijenata) koji se poslužuju na raskrižju (kanal posluživanja), a vrijeme posluživanja je vrijeme čekanja do početka zelenog. Nas interesira najlošiji slučaj, a to je vrijeme čekanja kada prođe cijelo crveno vrijeme, na početku zelenog:

Radi se o linearnoj funkciji dvije varijable ako se promatra jedan prometni tok. Kako se ponaša povećana komponenta repa čekanja prikazano je na slici za sva četiri opća slučaja: (I) malo zelenog i mali zasićeni tok, (II) malo zelenog i veći zasićeni tok, (III) više zelenog i mali zasićeni tok i (IV) više zelenog i veći zasićeni tok.

Do granice stupnja zasićenja 0,85 svi slučajevi imaju jednaku vrijednost. U tim uvjetima povećani rep čekanja nije veći od 2 vozila. Nakon toga dolazi do različitih povećanja, makar se i tu može izvući neka zakonitost u smislu da kod stupnja zasićenja od 0,95 povećani rep čekanja nije veći od 6 vozila.

Budući je model maksimalnog uniformnog repa čekanja linearna funkcija više varijabli (za promatrani prometni tok dvije: ciklus i pripadajuće efektivno zeleno vrijeme) da li se ona može primijeniti umjesto d1, a da rezultat bude sličan? Da li se primjenom modela repa čekanja može pronaći duljina ciklusa i razdiobe zelenih vremena koje će osigurati minimalno čekanje, a time i dobre uvjete prometovanja pješaka (bez potrebe za ilegalnim prijelazima)? Odgovor je pozitivan jer živimo u vrijeme senzorike i cilj svake semaforizacije je sljedeći: svakom prometnom toku dati dovoljno zelenog vremena za siguran prolaz i dostatnu propusnu moć. Sve manje od toga je opasno i stvara zagušenja, a sve više od toga je bespotrebno rasipanje najvažnijeg resursa - vremena. Glede sigurnosti odgovor ćemo dati kasnije, a sada nas zanima koliko je to dovoljno vremena s motrišta propusne moći? Odgovor na to nam daje stupanj zasićenja koji promatra odnos prometnog toka (prometne potražnje) i propusne moći (prometne ponude) sa željom da taj odnos bude manji od 1:

Ako postignemo da je odnos efektivnog zelenog i duljine ciklusa veći ili jednak od odnosa promatranog prometnog i zasićenog toka onda ćemo postići dobre uvjete prometovanja bez rasipanja zelenog vremena. Moramo vidjeti što to znači u dijelu modela uniformnog prosječnog vremena čekanja koji pokazuje odnos lambda i y:

ili obrnuto ako upravljamo prometnim tokovima u zadanim uvjetima semaforizacije:

U uvjetima prometno ovisnog upravljanja, model uniformnog prosječnog vremena čekanja može se napisati:

U opisanim uvjetima razlika između ovako interpretiranog uniformnog prosječnog vremena čekanja i uniformnog maksimalnog repa čekanja je samo u koeficijentu; kod repa čekanja je [q/(1-y)], a kod ovog modela vremena čekanja je 0,50. Zato možemo zaključiti sljedeće:

  • ako primijenimo prometno ovisno upravljanje,
  • i ako promet na raskrižju predmnijeva dobre uvjete prometovanja - ispod propusne moći,
  • možemo za funkciju cilja primijeniti model maksimalnog uniformnog repa čekanja koji će isto težiti rješenju kraćeg prosječnog vremena čekanja.

Analizirali smo opće modele pa općenito vrijedi da model uniformnog repa čekanja u očekivano dobrim uvjetima prometovanja (bez zagušenja) može uvijek zamijeniti model uniformnog prosječnog vremena čekanja, ako trebamo linearni izraz i ne težimo preciznim vrijednostima vremena čekanja.

Znamo postići uvjete prometovanja ispod propusne moći, ali je pitanje radi li se o linearnom izrazu:

Dobili smo linearnu nejednadžbu što znači da stupnjem zasićenja možemo kontrolirati željenu propusnu moć, a time i pokazatelje funkcije cilja. Naime, ako odredimo maksimalan stupanj zasićenja ne veći od 0,85 onda smo osigurali mali povećani rep čekanja, a time posredno i malo prosječno vrijeme čekanja.

Ostalo je pitanje sigurnog prolaska raskrižjem za što opet možemo iskoristiti ograničenja matematičkog programiranja. Siguran prolazak raskrižjem znači, prema hrvatskim Smjernicama za prometna svjetla:

  • za motorni promet zeleno barem u duljini zaštitnog međuvremena,
  • za zelene strelice zeleno ne kraće od 5 s,
  • za pješake zeleno u duljini 70 - 100 % zaštitnog međuvremena.

Zbog mnogih razloga (o tome bi se moglo napisati nekoliko zasebnih tema) treći uvjet se pretvorio u 100 %, odnosno da pješacima zeleno mora trajati toliko da oni na početku zelenog cijeli pješački prijelaz prijeđu pod zelenim svjetlom.

Da bi se odredilo minimalno trajanje svake faze potrebno je odrediti njihov sadržaj i slijed. Prije toga moramo znati o kolikim i kakvim prometnim tokovima se radi. Budući da ima puno lijevih skretanja potrebno je osigurati štićeni dio faze, Zato je uvedena druga faza.

U prvoj i trećoj fazi kreću se pješaci pa njima treba osigurati siguran prelazak, a druga faza ima zelenu lijevu strelicu. Zato je minimalna duljina ciklusa određena na sljedeći način. U prvoj fazi pješaci za prelazak trebaju 10 s, a zaštitno međuvrijeme prema V2L je 8 s. Druga faza mora minimalno trajati 5 s, a zaštitno međuvrijeme V2L prema lijevo skretanju u V1 je 6 s. Treću fazu određuju pješaci preko južnog privoza kojima treba 10 s zelenog i 10 s zaštitnog međuvremena. Da svi sudionici u prometnu sigurno prođu raskrižjem minimalna duljina ciklusa je C(min) = 49 s.

Kada su osigurana kretanja pješaka, minimalno trajanje svake faze će se odrediti preko tokova motornog prometa kako bi se osigurala njihova dostatna propusna moć. Prevodeći minimalno trajanje prve faze od 18 s u odnos prema signalnoj grupi V4, druge faze prema V2L i treće faze prema V1, dobivaju se uvjeti trajanja minimalnih zelenih vremena: prve faze efektivno zeleno barem 15 s, druge 6s, a treće 15 s. Ukupno izgubljeno vrijeme u ciklusu je L = 13 s (= 3 + 5 + 5).

Ovakva analiza zadovoljila je sve postulate inženjerskog promišljanja:

  • jedinstveno smo sagledali problem; opća znanja prilagodili konkretnom raskrižju,
  • svi elementi semaforizacije su uključeni (nema beznačajnog): trajanja prometnih svjetala i prometni tokovi,
  • identificirana je najslabija, u ovom slučaju najopasnija, karika - potrebna minimalna zelena vremena u svakoj fazi.

Sada poznajemo sve elemente za tvorbu matematičkog program za optimizaciju plana izmjene signala semaforiziranog raskrižja koji se odvija u "i" faza koje upravljaju sa "j" grupa prometnih traka. U ovom slučaju i = 3, a j = 4.

Prvi uvjet održava duljinu ciklusa u realnim i sigurnim granicama. Za svaku grupu traka određujemo maksimalan stupanja zasićenja, kao i minimalnu duljinu efektivnog zelenog za svaku fazu. Predzadnji uvjet je dobro staviti da se rješenje zadrži unutar poliedra definiranog ograničenjima jer koristimo računalo (numeričke metode) i ovim uvjetom eliminiramo tu opasnost koja uvijek postoji kod približnog računanja. Zadnji uvjet je uobičajeni uvjet nenegativnosti varijabli u simpleks metodi.

Imamo sve elemente napisati matematički program. Treba biti pažljiv i prilagoditi sve na iste fizikalne jedinice; prometne tokove transformirati iz sati u sekunde.

Ovakav model nećemo rješavati ručno i nije ga potrebno urediti, dovoljno je pregledan i jasan za instalaciju u Excel koji sadrži modul za rješavanje ovakvih problema (Solver, Alat za rješavanje).

Zbog malog prometnog opterećenja i rješenje je vrlo blizu minimalnog ciklusa. Kritično kretanje je V2L koje ima stupanj zasićenja 0,85; dok sva ostala kretanja imaju znakovito niži stupanj zasićenja.

Zanimljivo da prvu i treću fazu ne određuje prometna potražnja već uvjeti minimalnog zelenog vremena za siguran prelazak pješaka. Kada ne bi bilo tih uvjeta, odnosno pješaka na raskrižju, onda bi optimalan ciklus bio C = 35 s i duljinama faza 9, 7 i 6 s. Još jedan dokaz da se raskrižje ne semaforizira zbog zahtjeva motornog prometa. Kao i u prethodnom primjeru, svi stupnjevi zasićenja, osim za V2L, puno su manji od 0,85.

Excel omogućuje izračunavanje i nelinearnih modela, aplikacija uniformnog prosječnog vremena čekanja u funkciji cilja ne mijenja rješenje što je i očekivano obzirom na jednaka rješenja limesa.

Primjena "vječne" Websterove metode izračuna optimalnog ciklusa i duljina efektivnih zelenih vremena pokazuje prednost linearnog programiranja. Prema Websteru optimalan ciklus je C = 46,3 s, a duljine zelenih vremena po fazama: 13,1; 11,7 i 8,5 s. Duljine prve i treće faze ne omogućuju siguran prelazak pješaka pa bi iterativnim postupkom (umjetnim povećanjem prometnih tokova za prvu i treću fazu) trebalo provoditi izračun dok se ne dobije potrebna minimalna duljina obje faze.

Osnovni model je postavljen, funkcionira i što više reći? Gotovi smo. Upravo suprotno, ovakav model omogućuje zaista brojne analize. Napravit ćemo jednu koja se često sreće na semaforiziranim raskrižjima. Južni privoz raskrižja ima traku za lijevo skretanje korisne duljine 96 m pa omogućuje formiranje repa čekanja od 16 vozila. Ako se za lijevo skretanje stvori rep dulji od 16 vozila blokirat će traku za ravno i obrnuto. Moramo povećati mjerodavnu prometnu potražnju kako bi analiza imala smisla: lijeve skretače na jugu u vozila na sjeveru.

U model moramo dodati i dva ograničenja.

Imamo dva "osigurača". Prvi je da stupanj zasićenja ne smije biti veći od 0,85 što nam osigurava povećani rep čekanja od maksimalno tri vozila, a drugi je ograničenje na maksimalno 12 vozila u uniformnom repu čekanja; sveukupno 15 vozila, a možemo ih imati 16. Rješenje je:

Rješenje pokazuje repove čekanja na južnom privozu ne veće od sedam vozila. Veći promet zahtijeva i veći ciklus. Nelinearni model s uniformnim prosječnim vremenom čekanja daje isto rješenje. Websterov model daje rješenje: C = 57,s 2; g1 = 19,3 s; g2 = 15,6 s i g3 = 9,3 s. U Websterovom modelu nedostatna je duljina treće faze.

Ovo je životan i jednostavan (banalan) primjer. U većim gradovima i na većim raskrižjima često ne postoji rješenje jer nije moguće ispuniti zadane uvjete, najčešće je to pitanje propusne moći - stupnja zasićenja, jer je broj vozila (prometna potražnja) veći od prometne ponude, bez obzira na duljinu ciklusa. Obično se tada u dogovoru s investitorom (naručiteljem) pribjegava dvama scenarijima: (1) sva kretanja se podjednako zagušuju ili (2) daje se prednost (manje zagušenje) pravcu s javnim prijevozom ili nekim drugim razlogom za prioritet. Vrlo često, čak i češće, od pitanja propusne moći problematičnije je postići dobar odnos zelenih vremena zbog zahtjeva pješačkog prometa - dugačkih pješačkih prijelaza. O tome sam već pisao u ranijoj temi.

Raskrižje opremljeno senzorima uz ovakav model, osnovni ili prošireni nekim dodatnim uvjetima (ograničenjima), predstavlja inteligentni programski agent. Senzori prate prometnu potražnju - percipiraju okolinu, a prometna svjetla (njihov način rada) djeluju na okolinu. Agent je:

  • reaktivan: prilagođuje se aktualnoj prometnoj situaciji u stvarnom vremenu; zadovoljiti sigurnost školske djece, repova čekanja, javnog prijevoza, ...,
  • proaktivan; ostvaruje svoj cilj - zadovoljava funkciju cilja koja se mijenja ovisno o dobu dana, dana u tjednu, sezoni (ljetni i/ili zimski periodi bez škole),
  • kooperativan; može se povezati sa susjednim raskrižjima i razmjenjivati podatke; primati podatke o parametrima planova izmjene signala i prometnoj potražnji susjednih raskrižja, kao i slati svoje.

Više bliskih raskrižja, koja stoga moraju biti sinkronizirana, tvore višeagentni sustav, tj. veći broj raskrižja (agenata) u međusobnoj interakciji (sinkroniziranom radu). Na složenijim raskrižjima se ugrađuje i modul strojnog učenja kako bi takva raskrižja tijekom vremena postala samostalna u svom radu.

Linearno programiranje je evoluiralo u brojne nove vrste, a u prometu se vrlo često koristi cjelobrojno mješovito linearno programiranje (Mixed-integer linear programming). Funkcija cilja i uvjeti su linearni, a neke veličine pripadaju skupu realnih, a druge skupu cijelih brojeva. Koga interesira upravljanje prometom pozivam neka pretraži Internet u potrazi za Maxband algoritmom. Star je preko 50 godina, ali toliko jednostavan, logičan i, što je najvažnije, kompletan pa do danas nema boljeg modela (niti će ga biti) za optimizaciju sinkroniziranog koridora (otvorene petlje), a vrlo lako se prilagodi za sinkronizaciju prometne mreže (zatvorene petlje).

Drugi primjer je iz 2003. godine i radi se o raskrižju Ulica grada Vukovara - Hrvatske bratske zajednice u Zagrebu. Tada, a i danas, to je složeno raskrižje s jakim prometnim tokovima, brojnim uplitanjima i isplitanjima te kolizijama u prostoru raskrižja. Prikazano je jutarnje vršno opterećenje početkom 2003. godine.

Ovdje je problem postavljen drugačije, a glasi: unutar zadanog ciklusa naći što više zelenog vremena koje će omogućiti dostatnu propusnu moć. Što je ovdje jednostavno ili komplicirano pokazat ćemo primjerom:

  • broj lijevih skretanja iz juga je velik pa treba osigurati kontinuitet kretanja signalnih grupa V8 i V2,
  • broj vozila na istoku je velik pa treba osigurati kontinuitet kretanja signalnih grupa V1 i V2 te V1 i V3 (ako je moguće),
  • signalne grupe V8 i V1 su u koliziji,
  • treba osigurati dovoljno zelenog za V2 da prođu V1 i V8, a opet osigurati i adekvatno zeleno za V4, barem toliko da pješaci mogu sigurno preći sjeverni kolnik na sjeverozapadnom dijelu raskrižja.

Zato unutar ciklusa treba osigurati sljedeće procese:

  • dostatne duljine zelenih vremena za zadovoljenje propusne moći: d(i),
  • zelena vremena ne smiju biti prekratka l(i) jer neće udovoljavati sigurnosti prometa ili preduga u(i) jer neće omogućiti kretanje drugim signalnim grupama,
  • dostatna zaštitna međuvremena: c(ij),
  • sinkronizaciju pojedinih signalnih grupa što se osigurava offsetom: g(j) = g(i) + h(ij).

Gornja slika jasno pokazuje zašto nam treba cjelobrojni uvjet. Iz slike se lako "pročita" da treba biti zadovoljeno za svake dvije konfliktne signalne grupe:

gdje jedna od ove četiri veličine poprima vrijednost 1, a ostale tri 0. Ovdje ne govorimo o cjelobrojnim veličinama, već o binarnim jer poprimaju vrijednosti: 0, 1. Slična se analiza provodi i za uvjete sinkronizacije signalnih grupa: offseti početaka i krajevi zelenih vremena koji onemogućuju stvaranje repova čekanja unutar raskrižja.

Osnovni matematički model je:

Ako osnovni model obogatimo prometnim znanjima, onda se proširuje za dodatne uvjete koji osiguravaju male repove čekanja i dobivamo osnovni prometni model.

Excel (Alat za rješavanje, Solver, ako je problem dimenzija do 200 veličina i 100 uvjeta), neki specijalizirani paket ili programski jezik omogućuju jednostavnu realizaciju modela. Raskrižje je složeno pa je model dugačak i naizgled kompliciran. Smiren i pedantan pristup omogućuje brzu izgradnju (upis) modela i rješavanje. Funkcija cilja je vezana na repove čekanja u grupama trakova. Postoji 48 ograničenja, 16 cjelobrojnih veličina (osam signalnih grupa: početak i kraj), 32 binarne veličine (svaka signalna grupa zahtijeva četiri) i na kraju za svaku cjelobrojnu veličinu treba postaviti granice. Prvo sam napravio model u WinQSB freeware paketu jer je jednostavan i intuitivan - poglavito je jednostavno definirati i koristit veličine za raspis modela. Freeware licence su uvijek nejasne glede profesionalne uporabe pa sam cijelu priču ponovio i u Excelu. WinQSB mi je predstavljao supervizorski alat da li dobro radim u Excel-u. Prikazan je ispis prometnog modela u WinQSB kao ilustracija da to nije nekakvo "čudovište" već priča koja slijedi postavljeni model; nekad dulja (kao ovdje), nekad kraća, ali nije komplicirana.

Rješenja su ponudila sljedeće odgovore.

Matematički model nudi uvjerljivo najviše zelenog vremena (čak 23 % više od postojećeg stanja), ali i lošu razdiobu jer je kretanje V8 zagušeno i V5 ima povećani rep čekanja. Sa 9 % manje zelenog vremena od matematičkog prometni model producira veći uniformni rep čekanja na cijelom raskrižju za tri vozila, ali nema zagušenja već samo povećani rep čekanja na južnom privozu. Prometni model je 12 % bolji od postojećeg stanja. Te 2003. godine ovo rješenje je aplicirano i vrlo brzo ukinuto jer je povećana propusna moć raskrižja zagušila susjedne dijelove mreže, poglavito dijelove zapadno od raskrižja. Prošlo je 18 godina, ali nije bilo promjena u prometnoj mreži niti u korištenju modova prijevoza pa ovo raskrižje još i danas predstavlja mjesto svjesnog ustrojavanja povećanih repova čekanja kako se ne bi zagušilo područje oko raskrižja. Ne treba zaboraviti ni činjenicu da je danas 20 % više registriranih motornih vozila u Zagrebu u odnosu na 2003. godinu.

Često koristim linearno programiranje. Nedavno smo imali zadaću optimizirati itinerere specijalnih vozila u mreži s više ishodišta i jednim odredištem, u mreži bitno različitih uvjeta: od autocesta do kolnika širine 5 m, od vangradskih do gradskih uvjeta vožnje (semafori). Linearno cjelobrojno programiranje ponudilo je brzo rješenje; linearni program s Kroneckerovim simbolom (delta): 1 - koristi se link (cesta), 0 - ne koristi se. Program je trivijalan, a najveći trud je uloženo u određivanje troška na linkovima c(i,j): kategorija i kvaliteta ceste, prosječna brzina i vrijeme putovanja, protočnost (pojava zagušenja), parametri sigurnosti prometa. Rješenje smo dobili puno brže nego da smo krenuli kreirati, puniti i optimizirati (analizirati) mrežu u nekom SW paketu za prometno modeliranje. 

Ovaj tekst ima (ozbiljan) nedostatak jer nije spomenuta i primijenjena analiza osjetljivosti. Opravdanje za to je što konkretni primjeri nisu dovoljno "elastični" da bi se uvidjela korisnost postoptimalne analize. Svakako preporučujem koristiti jer svaki SW alat odmah producira cjelovito i iscrpno izvješće o granicama mogućih promjena koeficijenata funkcije cilja, intervala optimiziranih veličina ili desne strane ograničenja, a da ne dođe do promjene optimalnog rješenja.

Iznio sam razloge zašto kad god čujem ili se sjetim linearnog programiranja odmah pomislim na "smogovsku" izreku o metodi koja je mala, ali je dovoljno velika da ne bude mala. Ili na "inženjerskom smogovskom": to je mala (jednostavna, profana) metoda, ali dovoljno sadržajna (velika) da bi bila važan dio (ili barem djelić) svakog inteligentnog prometnog rješenja.

Zdenko Lanović
2021.
Izradio Webnode
Izradite web-stranice besplatno! Ova web stranica napravljena je uz pomoć Webnode. Kreirajte svoju vlastitu web stranicu besplatno još danas! Započeti