Difference between revisions of "Přestupní stanice metra/cs"

From Simulace.info
Jump to: navigation, search
(Model)
(Detailní popis modelu)
Line 87: Line 87:
 
* '''Monitor Number of ticks (at the end)'''
 
* '''Monitor Number of ticks (at the end)'''
 
Tento monitor ukazuje, po kolika ticích byla simulace ukončena. Tento počet je sice také znázorněn v okýnku světa modelu. Mne osobně se však zdálo přehlednější, když byl tento výsledný počet tiků znázorněn v monitoru.
 
Tento monitor ukazuje, po kolika ticích byla simulace ukončena. Tento počet je sice také znázorněn v okýnku světa modelu. Mne osobně se však zdálo přehlednější, když byl tento výsledný počet tiků znázorněn v monitoru.
 +
 +
==Agenti (prvky modelu)==
 +
===Cestující===
 +
 +
* '''Spěchající cestující''' (breed: ''hurries'')
 +
* '''Nespěchající cestující''' (breed: ''no-hurries'')
 +
* '''Běžní cestující''' (breed: ''normal-passengers'')
 +
* '''Ušlapaní/zabití cestující''' (breed: ''killed-people'')
 +
 +
Spěchající a nespěchající cestující se na počátku nacházejí náhodně v metru, tudíž nejsou při nastavení modelu vidět. Lze je zaznamenat až po spuštění modelu, jakmile naleznou východ z metra v podobě dveří a vylezou ven hledajíce nejvhodnější eskalátor pro přestup.
 +
Běžní uživatelé jsou také vygenerováni náhodně a vyskytují se v prostoru metra, který se nachází mezi vagony.
 +
Ušlapaní/zabití cestující jsou ti cestující, které ušlapali/zabili spěchající cestující.
 +
Počet běžných cestujících, počet spěchajících a nespěchajících cestujících a jejich poměr je nastavován v posuvnících. Další vlastností cestujících, kterou je možnost nastavit na začátku modelu je jejich rychlost. Ta je pro každý typ cestujícího nastavována zvlášť v posuvnících. V modelu je také zahrnuta možnost ušlapání a zabití nespěchajících cestujících spěchajícími cestujícími. To je vyjádřeno procentuální šancí ušlapání a zapínáním/vypínáním spěchajících cestujících zabijáků.
 +
 +
===Východy===
 +
= eskalátory a vestibul
 +
- breed: ''exits''
 +
 +
* '''Eskalátory jezdící nahoru i dolů''' (breed: ''exits'' a ''no-exits'')
 +
* '''Eskalátory jezdící jen nahoru''' (breed: ''no-exits'')
 +
* '''Eskalátory jezdící jen dolů''' (breed: ''exits'')
 +
* '''Vestibul''' (breed: ''exits/no-exits'')
 +
 +
Přestupních eskalátorů existuje dohromady 6, avšak nepředstavují 6 jednotlivých eskalátorů. Jedná se vlastně o 3 eskalátory, které buď plní funkci jednosměrných, nebo obousměrných eskalátorů. V posuvníku se nastavuje počet otevřených eskalátorů v rozmezí 1-3 a v přepínači, zda se bude jednat o jednosměrný či obousměrný eskalátor. Obousměrné eskalátory jedou jen dolů pro přestup a nahoru na trasu metra, kde se v simulaci nacházíme. Jednosměrné eskalátory jedou buď jen nahoru na trasu, kde se simulace odehrává nebo jen dolů na přestup. Celý princip eskalátorů tkví v tom, že eskalátory nacházející se pod sebou tvoří jakoby dvojici eskalátorů. Ta je buď tvořena 2 eskalátory jedoucími dolů na přestup, nebo 1 eskalátorem jedoucím dolů a nahoru, nebo dvěma eskalátory jedoucími nahoru na trasu, kde se nacházíme. Eskalátory, které jedou nahoru, neplní funkci východu pro přestup a v průběhu simulace se s nimi nepočítá. Jejich rod (breed) je změněn z východu na ne-východ a cestující tyto je pak zkrátka ignorují.
 +
Vestibul také slouží pro přestup na jinou barvu stanice metra. V přepínači je možnost nastavení, zda bude pro cestující otevřen či uzavřen.
 +
 +
===Dveře metra===
 +
- breed: ''subway-doors''
 +
 +
Oba vagony metra disponují 6 dveřmi (breed: subway-doors), které slouží pro spěchající a nespěchající cestující jako východ z metra a pro běžné uživatele jako vstup do metra.
  
 
=Výsledky=
 
=Výsledky=

Revision as of 12:04, 25 May 2012

Tato stránka je slouží jako výzkumná zpráva k simulaci představující semestrálním projekt pro předmět 4IT495 Simulace systémů (LS 2011/2012). PŘESTUPNÍ STANICE METRA; VÝZKUMNÁ ZPRÁVA; PŘEDMĚT: 4IT495 Simulace systémů; AUTOR: Martina Čižinská; TYP MODELU: Multiagentní; PROVEDENO V: NetLogo [1]

Definice problému

Model simuluje chování davu cestujících na přestupní stanici metra. Na takovéto stanici se vždy nachází obrovské množství lidí. Když se zde vyskytuje málo přestupních eskalátorů, začínají se tvořit se fronty až davy lidí, které velmi zdržují a cestující téměř po sobě šlapou.

V metru (např. stanice Muzeum na trase C v Praze) se sice často nachází i přestupní vestibuly, které také umožňují přestup na jinou barvu trasy metra, avšak tento přestup je často velmi zdlouhavý nebo o této možnosti řada cestujících ani neví a proto jej moc nevyužívají. V mnoha případech by dle mého názoru vyšel přestup přes vestibul možná i rychleji s porovnáním s frontami, které se tvoří u běžných přestupních eskalátorů. V tomto modelu není zahrnuta vlastnost pomalého přestupu, tudíž vestibul není označen jako pomalá varianta přestupu a slouží jen jako přestupní stanice pro ty cestující, pro které představuje nejbližší nebo nejméně frekventovaný východ pro přestup.

Podobná situace nastává, když se přestupní eskalátory vyskytují jen na jedné polovině celého metra. To cestující také velmi zdržuje, obzvlášť ty spěchající. Navíc se na přestupní stanici vždy nacházejí cestující, kteří chtějí přestoupit na jinou barvu trasy metra a cestující, kteří již na své barvě trasy jsou a čekají jen na přijíždějící metro. A toto je další důvod, proč se začíná tvořit zmatek, jelikož si všichni navzájem překážejí. V modelu jsou tedy zahrnuti cestující, kteří hodně spěchají, kteří nespěchají vůbec a běžní cestující, kteří jen čekají na příjezd metra.

Tuto stručně shrnutou situaci a problém bych právě chtěla prezentovat touto simulací. Vyhodnocoval by se čas (počet tiků), za který všichni cestující přestoupili a nastoupili do metra (tj. čas, za který všichni agenti splní svůj primární konečný cíl). Tímto by se zjistilo, která nastavená situace modelu byla nejrychlejší. Dalším sledovanými parametrem by bylo sledování frekvence využití východů pro přestup při určitých nastavených parametrech týkajících se cestujících. Vyhodnocování počtu mrtvých cestujících, kteří byli ušlapáni či zabiti.


Shrnutím: simulovaný model představuje, jak by vypadala situace, když by:

  • všechny přítomné eskalátory byly obousměrné/jednosměrné
  • se zvýšil/snížil počet přestupních eskalátorů
  • 1, 2 nebo 3 eskalátory (jednosměrné/obousměrné)
  • cestující využívali/nevyužívali pro přestup vestibul stanice metra - otevřený/zavřený vestibul
  • se zvýšil/snížil počet běžných cestujících či spěchajících/nespěchajících cestujících
  • se změnil poměr spěchajících/nespěchajících cestujících
  • se změnila rychlost spěchajících/nespěchajících/běžných cestujících
  • se zvýšila/snížila šance ušlapání nespěchajících cestujících spěchajícími cestujícími
  • se zapnula/vypnula možnost zabíjení nespěchajících cestujících spěchajícími cestujícími

Metoda

Simulační prostředí programu NetLogo 5 jsem si zvolila pro vytvoření simulace hned z několika důvodů. V modelu je definováno několik agentů, kteří reagují na prostředí a stavy ostatních agentů. Každý z nich má stanovený svůj cíl, který se snaží plnit. Pomocí několika mnou vytvořených algoritmů je ovlivňováno jejich chování, reagující na momentální stav prostředí a stavy agentů. Jedná se tedy o komplexní systém, který je vhodné řešit např. pomocí již zmiňovaného programu NetLogo.

Jelikož jsem se s NetLogem setkala již v minulém zimním semestru 2011/2012 v předmětu Komplexní systémy (4IZ636) vyučovaném zde na VŠE, byl pro mne tento simulační program hned jasnou volbou. NetLogo disponuje obrovským množstvím možností. Má intuitivní programovací jazyk a umožňuje uživateli pozorovat simulaci během jejího chodu. Díky sběru dat pomocí grafů, histogramů apod. je pak možné si vytvořit detailní statistiky, které pomohou zjistit, jak byla navržená simulace efektivní a co je potřeba dále změnit či ponechat neměnné. Možnost změny parametrů umožňují například různé posuvníky, přepínače apod., což znamená, že uživatel nemusí definovat hodnoty napevno, nýbrž v rozmezí určitého intervalu a pomocí těchto pomocných nástrojů hodnoty následně měnit, což lze i za běhu simulace, když to kód umožňuje.

Živou simulaci v metru jsem ani neuvažovala, jelikož by se jednalo o téměř nemožný úkol. Na přestupních stanicích se nachází takové množství lidí, jež pozorovatel (tedy já) nemůže kompletně zachytit a dosáhnout tak objektivních výsledků.

Detailní popis modelu

Popis prostředí

Svět simulace má tvar obdélníku a jeho rozměry činí 51x25 patches. V prostředí modelu se nachází 2 vagony metra vždy se 6 dveřmi. Vagony se nijak nemění, pro jednoduchost simulace se jedná jen o jeden příjezd metra v obou směrech. Dále se zde vyskytuje 7 přestupních východů (6 eskalátorů a 1 vestibul) a cestující (spěchající, nespěchající, běžní). Tyto zmíněné prvky světa představují agenty, tudíž se více informací nachází v odstavci Agenti.

Popis uživatelského prostředí

  • Posuvník number-of-normal-passengers

Nastavuje počet běžných cestujících, kteří nastupují do metra.

  • Posuvník number-of-passengers

Nastavuje počet spěchajících a nespěchajících cestujících, kteří přestupují na jinou barvu trasy metra.

  • Posuvník percentage-of-hurries

Nastavuje procentuální poměr spěchajících a nespěchajících cestujících.

  • Posuvník speed-of-hurries

Nastavuje rychlost spěchajících cestujících.

  • Posuvník speed-of-no-hurries

Nastavuje rychlost nespěchajících cestujících.

  • Posuvník speed-of-normal

Nastavuje rychlost běžných cestujících.

  • Posuvník number-of-escalators

Nastavuje počet otevřených eskalátorů.

  • Přepínač two-way-escalators

Zapíná/vypíná obousměrné eskalátory.

  • Přepínač use-vestibule

Zapíná/vypíná možnost přestupu přes vestibul metra.

  • Posuvník chance-of-trampling/killing

Nastavuje procentuální šanci ušlapání nespěchajících cestujících spěchajícími cestujícími.

  • Přepínač hurries-killers

Zapíná/vypíná možnost zabíjení nespěchajících cestujících spěchajícími cestujícími.

  • Přepínač stop-with-hurries

Zapíná/vypíná vypnutí simulace, jakmile bude počet spěchajících cestujících roven nule.

  • Monitory [frequency] of exit 0/1/2/3/4/5/vestibul

Tyto monitory ukazují frekvenci využití exitu cestujícími, kteří přestupují na jinou barvu trasy metra.

  • Monitor Left/Middle/Right side

Tyto monitory ukazují frekvenci levé, prostřední či pravé strany, kde se nacházejí eskalátory pro přestup. Sčítá se vlastně jen frekvence exitů pod sebou na určité straně.

  • Monitor Final average frequency of exits

Ukazuje konečnou výslednou průměrnou frekvenci využití všech otevřených exitů pro přestup.

  • Monitor Number of hurries/no-hurries/normal passengers/dead people

Tyto monitory mají využití zejména na počátku modelu. Znázorňují, kolik cestující od každého typu bylo nastaveno, kromě mrtvých cestujících. Ti se připočítávají během běhu simulace.

  • Monitor Number of ticks (at the end)

Tento monitor ukazuje, po kolika ticích byla simulace ukončena. Tento počet je sice také znázorněn v okýnku světa modelu. Mne osobně se však zdálo přehlednější, když byl tento výsledný počet tiků znázorněn v monitoru.

Agenti (prvky modelu)

Cestující

  • Spěchající cestující (breed: hurries)
  • Nespěchající cestující (breed: no-hurries)
  • Běžní cestující (breed: normal-passengers)
  • Ušlapaní/zabití cestující (breed: killed-people)

Spěchající a nespěchající cestující se na počátku nacházejí náhodně v metru, tudíž nejsou při nastavení modelu vidět. Lze je zaznamenat až po spuštění modelu, jakmile naleznou východ z metra v podobě dveří a vylezou ven hledajíce nejvhodnější eskalátor pro přestup. Běžní uživatelé jsou také vygenerováni náhodně a vyskytují se v prostoru metra, který se nachází mezi vagony. Ušlapaní/zabití cestující jsou ti cestující, které ušlapali/zabili spěchající cestující. Počet běžných cestujících, počet spěchajících a nespěchajících cestujících a jejich poměr je nastavován v posuvnících. Další vlastností cestujících, kterou je možnost nastavit na začátku modelu je jejich rychlost. Ta je pro každý typ cestujícího nastavována zvlášť v posuvnících. V modelu je také zahrnuta možnost ušlapání a zabití nespěchajících cestujících spěchajícími cestujícími. To je vyjádřeno procentuální šancí ušlapání a zapínáním/vypínáním spěchajících cestujících zabijáků.

Východy

= eskalátory a vestibul - breed: exits

  • Eskalátory jezdící nahoru i dolů (breed: exits a no-exits)
  • Eskalátory jezdící jen nahoru (breed: no-exits)
  • Eskalátory jezdící jen dolů (breed: exits)
  • Vestibul (breed: exits/no-exits)

Přestupních eskalátorů existuje dohromady 6, avšak nepředstavují 6 jednotlivých eskalátorů. Jedná se vlastně o 3 eskalátory, které buď plní funkci jednosměrných, nebo obousměrných eskalátorů. V posuvníku se nastavuje počet otevřených eskalátorů v rozmezí 1-3 a v přepínači, zda se bude jednat o jednosměrný či obousměrný eskalátor. Obousměrné eskalátory jedou jen dolů pro přestup a nahoru na trasu metra, kde se v simulaci nacházíme. Jednosměrné eskalátory jedou buď jen nahoru na trasu, kde se simulace odehrává nebo jen dolů na přestup. Celý princip eskalátorů tkví v tom, že eskalátory nacházející se pod sebou tvoří jakoby dvojici eskalátorů. Ta je buď tvořena 2 eskalátory jedoucími dolů na přestup, nebo 1 eskalátorem jedoucím dolů a nahoru, nebo dvěma eskalátory jedoucími nahoru na trasu, kde se nacházíme. Eskalátory, které jedou nahoru, neplní funkci východu pro přestup a v průběhu simulace se s nimi nepočítá. Jejich rod (breed) je změněn z východu na ne-východ a cestující tyto je pak zkrátka ignorují. Vestibul také slouží pro přestup na jinou barvu stanice metra. V přepínači je možnost nastavení, zda bude pro cestující otevřen či uzavřen.

Dveře metra

- breed: subway-doors

Oba vagony metra disponují 6 dveřmi (breed: subway-doors), které slouží pro spěchající a nespěchající cestující jako východ z metra a pro běžné uživatele jako vstup do metra.

Výsledky

Závěr

Kód