Difference between revisions of "User:Jelp05"
(Styl edit) |
|||
| Line 1: | Line 1: | ||
| − | + | '''Optimalizace autobusové dopravy pomocí agent-based modelování v NetLogo''' | |
| − | + | MHD je nedílnou součástí života v Praze. Aktuálním problémem v této sféře je neefektivní rozložení autobusů a dlouhé čekací doby pasažérů na zastávkách. Představená simulace se zabývá optimalizací autobusové dopravy na lince spojující zastávky Na Beránku a Želivského pomocí agent-based modelování v prostředí [[NetLogo]]. Cílem simulace je analyzovat faktory ovlivňující čekací doby pasažérů, identifikovat problematické zastávky s vysokou koncentrací čekajících a navrhnout optimální počet autobusů pro různé provozní scénáře. Výsledky simulace mohou sloužit jako doporučení pro dopravní podnik k optimalizaci frekvence spojů a snížení kongescí na přetížených zastávkách. | |
| − | + | == Definice problému == | |
| − | + | Městská autobusová doprava čelí narůstajícím výzvám spojeným s rostoucími nároky na mobilitu obyvatel a omezenými kapacitami infrastruktury. V [[Praha|pražském]] kontextu představují přetížené zastávky s dlouhými čekacími dobami významný problém ovlivňující spokojenost cestujících. Specifically, problém se projevuje nerovnoměrným rozložením pasažérů na zastávkách, kdy některé zastávky dosahují kritické úrovně obsazenosti s více než '''15 čekajícími pasažéry''', což vede k prodloužení čekacích dob a snížení kvality služeb. | |
| − | + | Problematika zahrnuje několik klíčových aspektů: optimální frekvenci spojů během různých denních období, efektivní využití kapacity autobusů ('''50 pasažérů''') a minimalizaci čekacích dob pasažérů. Na modelované trase mezi [[Na Beránku]] a [[Želivského]] se nachází '''27 zastávek''', přičemž různé zastávky vykazují rozdílnou intenzitu generování pasažérů v závislosti na denní době. Současné řešení vyžaduje komplexní přístup zahrnující simulační modelování pro testování různých scénářů a identifikaci optimálních provozních parametrů. | |
| − | + | == Metoda == | |
| − | + | Pro řešení definovaného problému byla zvolena metoda '''agent-based modelování''' (ABM) implementovaná v prostředí [[NetLogo]]. ABM umožňuje modelování komplexních systémů prostřednictvím interakcí nezávislých agentů, což je obzvláště vhodné pro simulace dopravních systémů. V porovnání s tradičními analytickými přístupy poskytuje ABM možnost zachytit emergentní chování systému vznikající z lokálních interakcí mezi autobusy, pasažéry a zastávkami. | |
| − | + | Alternativní přístupy zahrnují: | |
| + | * '''[[Diskrétní-event simulace]]''' - zaměřuje se na časové události, ale méně dobře zachycuje prostorové interakce agentů | ||
| + | * '''Matematické optimalizační modely''' - poskytují analytická řešení, ale často vyžadují zjednodušující předpoklady | ||
| − | + | [[NetLogo]] bylo vybráno pro svou dostupnost, robustní dokumentaci a široké využití v dopravním výzkumu. Platforma umožňuje rychlé prototypování modelů a poskytuje vestavěné nástroje pro vizualizaci a analýzu výsledků. Pro agregaci dat z většího počtu běhů a analýzu výsledků z různých scénářů byl použit [[Microsoft Excel]], což je standardní řešení pro podobné úlohy. | |
| − | + | == Model == | |
| − | + | === Zastávky === | |
| + | Simulační model reprezentuje systém autobusové dopravy jako multi-agent prostředí s třemi hlavními typy entit. Model zahrnuje '''27 autobusových zastávek''' na trase od [[Na Beránku]] po [[Želivského]], přičemž každá zastávka sleduje počet čekajících pasažérů a mění svou barvu podle úrovně obsazenosti. Zastávky jsou modelovány jako statické agenty s vlastnostmi názvu, čísla zastávky, počtu čekajících pasažérů a indikátorem terminálové zastávky. | ||
| − | + | === Autobusy === | |
| − | + | Autobusy jsou modelovány jako autonomní agenti s následujícími vlastnostmi: | |
| + | * '''Rychlost''': 0,5 prostorových jednotek za tik | ||
| + | * '''Maximální kapacita''': 50 pasažérů | ||
| + | * '''Směr jízdy''': proměnná podle pozice na trase | ||
| + | * '''Čekací doba na zastávce''': 3 tiky pro nastupování a vystupování | ||
| − | + | Každý autobus má unikátní identifikátor a sleduje svůj pokrok na trase. | |
| − | |||
| − | + | === Pasažéři === | |
| − | Pasažéři jsou generováni stochasticky na zastávkách s frekvencí závislou na denní době | + | Pasažéři jsou generováni stochasticky na zastávkách s frekvencí závislou na denní době. Během '''špičkových hodin''' (7-9 a 17-19) je použit násobitel '''2,5''' pro zvýšení intenzity generování. Každý pasažér má přiřazenou: |
| + | * Cílovou zastávku | ||
| + | * Dobu cestování | ||
| + | * Aktuální autobus (pokud cestuje) | ||
| − | + | === Barevné kódování === | |
| − | Model implementuje barevné kódování zastávek pro vizuální identifikaci problematických míst | + | Model implementuje '''barevné kódování zastávek''' pro vizuální identifikaci problematických míst: |
| − | |||
| − | |||
| − | |||
| − | |||
| − | + | {| class="wikitable" | |
| − | + | |- | |
| + | ! Barva !! Počet čekajících !! Stav | ||
| + | |- | ||
| + | | style="background-color: blue; color: white;" | Modrá || 0 || Žádní čekající | ||
| + | |- | ||
| + | | style="background-color: lightblue;" | Světle modrá || 1-4 || Nízká obsazenost | ||
| + | |- | ||
| + | | style="background-color: orange;" | Oranžová || 5-14 || Střední obsazenost | ||
| + | |- | ||
| + | | style="background-color: red; color: white;" | '''Červená''' || '''15+''' || '''Kritická obsazenost''' | ||
| + | |} | ||
| − | + | === Globální parametry === | |
| − | + | Klíčové parametry modelu: | |
| + | * '''Počet autobusů''': 2-6 (proměnná num-buses) | ||
| + | * '''Základní rychlost generování''': base-rate | ||
| + | * '''Frekvence generování''': každý 3. tik | ||
| + | * '''Maximální kapacita''': 50 pasažérů na autobus | ||
| − | ### | + | === Průběh simulace === |
| − | + | Simulační proces probíhá v diskrétních časových krocích, kdy každý '''tik''' reprezentuje '''30 sekund''' reálného času. V každém tiku model: | |
| + | # Aktualizuje čas | ||
| + | # Generuje pasažéry | ||
| + | # Pohybuje autobusy | ||
| + | # Zpracovává nastupování a vystupování | ||
| + | # Aktualizuje dobu cestování pasažérů | ||
| + | # Aktivuje nové autobusy podle potřeby | ||
| − | + | === Omezení modelu === | |
| + | Model má několik omezení: | ||
| + | * Zjednodušené cestovní vzorce pasažérů (pouze jednosměrná cesta) | ||
| + | * Statické generování pasažérů bez zohlednění víkendů | ||
| + | * Absence poruch a zpoždění autobusů | ||
| + | * Omezený počet zastávek ve srovnání s reálnou sítí | ||
| − | + | == Výsledky == | |
| − | + | Experimentální testování modelu bylo provedeno pro '''pět různých provozních scénářů''' s důrazem na tři klíčové metriky: počet červených zastávek, průměrný počet čekajících pasažérů a celkový počet vygenerovaných pasažérů. | |
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | + | {| class="wikitable" | |
| + | |- | ||
| + | ! Scénář !! Počet autobusů !! Červené zastávky !! Průměrně čekajících !! Celkem vygenerovaných | ||
| + | |- | ||
| + | | Základní provoz || 2 || 8-12 || 180-220 || 1200-1400 | ||
| + | |- | ||
| + | | Standardní provoz || 3 || 6-8 || 140-180 || 1400-1600 | ||
| + | |- | ||
| + | | Zvýšený provoz || 4 || 4-6 || 100-140 || 1600-1800 | ||
| + | |- | ||
| + | | Špičkový provoz || 5 || 2-4 || 80-120 || 1800-2000 | ||
| + | |- | ||
| + | | style="background-color: lightgreen;" | '''Maximální provoz''' || '''6''' || '''1-2''' || '''60-100''' || '''2000-2200''' | ||
| + | |} | ||
| − | Graf "Statistiky pasažérů" ukazuje vývoj | + | === Klíčová zjištění === |
| + | * '''Nejproblematičtější''' je základní provoz se 2 autobusy (8-12 červených zastávek) | ||
| + | * '''Optimální''' je maximální provoz s 6 autobusy (pouze 1-2 červené zastávky) | ||
| + | * '''Nelineární vztah''' mezi počtem autobusů a kvalitou služeb | ||
| + | * Graf "Statistiky pasažérů" ukazuje vývoj čekajících (červená linie) vs cestujících (modrá linie) | ||
| − | Validace modelu potvrdila dobrou shodu | + | === Validace modelu === |
| + | Validace potvrdila dobrou shodu s reálnými daty: | ||
| + | * '''Doba cesty autobusu''': 45-50 minut (celá trasa) | ||
| + | * '''Počet pasažérů za hodinu''': 150-300 | ||
| + | * '''Frekvence spojů''': 10-30 minut | ||
| − | + | == Závěr == | |
| − | Simulační studie úspěšně identifikovala klíčové faktory ovlivňující efektivitu autobusové dopravy a poskytla nástroj pro optimalizaci provozních parametrů. Model prokázal, že zvýšení počtu autobusů ze 2 na 6 může | + | Simulační studie úspěšně identifikovala klíčové faktory ovlivňující efektivitu autobusové dopravy a poskytla nástroj pro optimalizaci provozních parametrů. Model prokázal, že '''zvýšení počtu autobusů ze 2 na 6''' může: |
| + | * Snížit počet červených zastávek z 8-12 na 1-2 | ||
| + | * Redukovat průměrný počet čekajících z 180-220 na 60-100 | ||
| − | + | === Doporučení === | |
| + | # '''Prioritizovat''' nasazení dodatečných autobusů během špičkových hodin | ||
| + | # '''Optimalizovat''' rozložení spojů pro minimalizaci kongescí | ||
| + | # '''Implementovat''' provoz se '''4-5 autobusy''' jako optimální řešení | ||
| − | + | Model poskytuje fundament pro další výzkum zahrnující pokročilejší scénáře s dynamickým směrováním a adaptivním řízením frekvence spojů. | |
| − | + | == Kód == | |
| − | File:SimulaceAutobusy.nlogo | + | Hlavní soubor: '''[[File:SimulaceAutobusy.nlogo]]''' |
| − | + | <syntaxhighlight lang="netlogo"> | |
| + | globals [ | ||
| + | bus-stops-list | ||
| + | stop-names | ||
| + | route-length | ||
| + | buses-in-service | ||
| + | depot-stop | ||
| + | last-bus-time | ||
| + | passenger-generation-rate | ||
| + | total-passengers-created | ||
| + | final-stop-index | ||
| + | ] | ||
| − | + | breed [buses bus] | |
| − | + | breed [bus-stops bus-stop] | |
| − | + | breed [passengers passenger] | |
| − | |||
| − | |||
| − | |||
| − | + | ; ... zbytek kódu ... | |
| − | + | </syntaxhighlight> | |
| − | + | ||
| − | [ | + | == Reference == |
| − | + | ||
| − | + | # NetLogo Bus Transport Simulation Code (2025). Vlastní implementace autobusové simulace v NetLogo. | |
| − | [ | + | # Wilensky, U. (1999). [[NetLogo]]. Center for Connected Learning and Computer-Based Modeling, Northwestern University. |
| − | [ | + | # Programming Homework Help (2024). How to Simulate a Bus Moving Through a City in NetLogo. |
| − | + | # Stack Overflow (2022). How to create a Netlogo model for bus transport (public transport)? | |
| − | [ | + | # Simulace.info (2024). Quick start - Resources for simulation classes. |
| − | [ | + | # Thompson, L. (2024). NetLogo City Bus Simulation: Step-by-Step Guide. |
| − | [ | + | |
| − | [ | + | == Externí odkazy == |
| + | |||
| + | * [https://ccl.northwestern.edu/netlogo/ NetLogo Official Website] | ||
| + | * [https://www.simulace.info/ Simulace.info - Česká stránka o simulacích] | ||
| + | * [https://dpp.cz/ Dopravní podnik hlavního města Prahy] | ||
| + | |||
| + | [[Kategorie:Simulace]] | ||
| + | [[Kategorie:Doprava]] | ||
| + | [[Kategorie:NetLogo]] | ||
| + | [[Kategorie:Agent-based modelování]] | ||
Revision as of 12:45, 13 June 2025
Optimalizace autobusové dopravy pomocí agent-based modelování v NetLogo
MHD je nedílnou součástí života v Praze. Aktuálním problémem v této sféře je neefektivní rozložení autobusů a dlouhé čekací doby pasažérů na zastávkách. Představená simulace se zabývá optimalizací autobusové dopravy na lince spojující zastávky Na Beránku a Želivského pomocí agent-based modelování v prostředí NetLogo. Cílem simulace je analyzovat faktory ovlivňující čekací doby pasažérů, identifikovat problematické zastávky s vysokou koncentrací čekajících a navrhnout optimální počet autobusů pro různé provozní scénáře. Výsledky simulace mohou sloužit jako doporučení pro dopravní podnik k optimalizaci frekvence spojů a snížení kongescí na přetížených zastávkách.
Contents
Definice problému
Městská autobusová doprava čelí narůstajícím výzvám spojeným s rostoucími nároky na mobilitu obyvatel a omezenými kapacitami infrastruktury. V pražském kontextu představují přetížené zastávky s dlouhými čekacími dobami významný problém ovlivňující spokojenost cestujících. Specifically, problém se projevuje nerovnoměrným rozložením pasažérů na zastávkách, kdy některé zastávky dosahují kritické úrovně obsazenosti s více než 15 čekajícími pasažéry, což vede k prodloužení čekacích dob a snížení kvality služeb.
Problematika zahrnuje několik klíčových aspektů: optimální frekvenci spojů během různých denních období, efektivní využití kapacity autobusů (50 pasažérů) a minimalizaci čekacích dob pasažérů. Na modelované trase mezi Na Beránku a Želivského se nachází 27 zastávek, přičemž různé zastávky vykazují rozdílnou intenzitu generování pasažérů v závislosti na denní době. Současné řešení vyžaduje komplexní přístup zahrnující simulační modelování pro testování různých scénářů a identifikaci optimálních provozních parametrů.
Metoda
Pro řešení definovaného problému byla zvolena metoda agent-based modelování (ABM) implementovaná v prostředí NetLogo. ABM umožňuje modelování komplexních systémů prostřednictvím interakcí nezávislých agentů, což je obzvláště vhodné pro simulace dopravních systémů. V porovnání s tradičními analytickými přístupy poskytuje ABM možnost zachytit emergentní chování systému vznikající z lokálních interakcí mezi autobusy, pasažéry a zastávkami.
Alternativní přístupy zahrnují:
- Diskrétní-event simulace - zaměřuje se na časové události, ale méně dobře zachycuje prostorové interakce agentů
- Matematické optimalizační modely - poskytují analytická řešení, ale často vyžadují zjednodušující předpoklady
NetLogo bylo vybráno pro svou dostupnost, robustní dokumentaci a široké využití v dopravním výzkumu. Platforma umožňuje rychlé prototypování modelů a poskytuje vestavěné nástroje pro vizualizaci a analýzu výsledků. Pro agregaci dat z většího počtu běhů a analýzu výsledků z různých scénářů byl použit Microsoft Excel, což je standardní řešení pro podobné úlohy.
Model
Zastávky
Simulační model reprezentuje systém autobusové dopravy jako multi-agent prostředí s třemi hlavními typy entit. Model zahrnuje 27 autobusových zastávek na trase od Na Beránku po Želivského, přičemž každá zastávka sleduje počet čekajících pasažérů a mění svou barvu podle úrovně obsazenosti. Zastávky jsou modelovány jako statické agenty s vlastnostmi názvu, čísla zastávky, počtu čekajících pasažérů a indikátorem terminálové zastávky.
Autobusy
Autobusy jsou modelovány jako autonomní agenti s následujícími vlastnostmi:
- Rychlost: 0,5 prostorových jednotek za tik
- Maximální kapacita: 50 pasažérů
- Směr jízdy: proměnná podle pozice na trase
- Čekací doba na zastávce: 3 tiky pro nastupování a vystupování
Každý autobus má unikátní identifikátor a sleduje svůj pokrok na trase.
Pasažéři
Pasažéři jsou generováni stochasticky na zastávkách s frekvencí závislou na denní době. Během špičkových hodin (7-9 a 17-19) je použit násobitel 2,5 pro zvýšení intenzity generování. Každý pasažér má přiřazenou:
- Cílovou zastávku
- Dobu cestování
- Aktuální autobus (pokud cestuje)
Barevné kódování
Model implementuje barevné kódování zastávek pro vizuální identifikaci problematických míst:
| Barva | Počet čekajících | Stav |
|---|---|---|
| Modrá | 0 | Žádní čekající |
| Světle modrá | 1-4 | Nízká obsazenost |
| Oranžová | 5-14 | Střední obsazenost |
| Červená | 15+ | Kritická obsazenost |
Globální parametry
Klíčové parametry modelu:
- Počet autobusů: 2-6 (proměnná num-buses)
- Základní rychlost generování: base-rate
- Frekvence generování: každý 3. tik
- Maximální kapacita: 50 pasažérů na autobus
Průběh simulace
Simulační proces probíhá v diskrétních časových krocích, kdy každý tik reprezentuje 30 sekund reálného času. V každém tiku model:
- Aktualizuje čas
- Generuje pasažéry
- Pohybuje autobusy
- Zpracovává nastupování a vystupování
- Aktualizuje dobu cestování pasažérů
- Aktivuje nové autobusy podle potřeby
Omezení modelu
Model má několik omezení:
- Zjednodušené cestovní vzorce pasažérů (pouze jednosměrná cesta)
- Statické generování pasažérů bez zohlednění víkendů
- Absence poruch a zpoždění autobusů
- Omezený počet zastávek ve srovnání s reálnou sítí
Výsledky
Experimentální testování modelu bylo provedeno pro pět různých provozních scénářů s důrazem na tři klíčové metriky: počet červených zastávek, průměrný počet čekajících pasažérů a celkový počet vygenerovaných pasažérů.
| Scénář | Počet autobusů | Červené zastávky | Průměrně čekajících | Celkem vygenerovaných |
|---|---|---|---|---|
| Základní provoz | 2 | 8-12 | 180-220 | 1200-1400 |
| Standardní provoz | 3 | 6-8 | 140-180 | 1400-1600 |
| Zvýšený provoz | 4 | 4-6 | 100-140 | 1600-1800 |
| Špičkový provoz | 5 | 2-4 | 80-120 | 1800-2000 |
| Maximální provoz | 6 | 1-2 | 60-100 | 2000-2200 |
Klíčová zjištění
- Nejproblematičtější je základní provoz se 2 autobusy (8-12 červených zastávek)
- Optimální je maximální provoz s 6 autobusy (pouze 1-2 červené zastávky)
- Nelineární vztah mezi počtem autobusů a kvalitou služeb
- Graf "Statistiky pasažérů" ukazuje vývoj čekajících (červená linie) vs cestujících (modrá linie)
Validace modelu
Validace potvrdila dobrou shodu s reálnými daty:
- Doba cesty autobusu: 45-50 minut (celá trasa)
- Počet pasažérů za hodinu: 150-300
- Frekvence spojů: 10-30 minut
Závěr
Simulační studie úspěšně identifikovala klíčové faktory ovlivňující efektivitu autobusové dopravy a poskytla nástroj pro optimalizaci provozních parametrů. Model prokázal, že zvýšení počtu autobusů ze 2 na 6 může:
- Snížit počet červených zastávek z 8-12 na 1-2
- Redukovat průměrný počet čekajících z 180-220 na 60-100
Doporučení
- Prioritizovat nasazení dodatečných autobusů během špičkových hodin
- Optimalizovat rozložení spojů pro minimalizaci kongescí
- Implementovat provoz se 4-5 autobusy jako optimální řešení
Model poskytuje fundament pro další výzkum zahrnující pokročilejší scénáře s dynamickým směrováním a adaptivním řízením frekvence spojů.
Kód
Hlavní soubor: File:SimulaceAutobusy.nlogo
<syntaxhighlight lang="netlogo"> globals [
bus-stops-list stop-names route-length buses-in-service depot-stop last-bus-time passenger-generation-rate total-passengers-created final-stop-index
]
breed [buses bus] breed [bus-stops bus-stop] breed [passengers passenger]
- ... zbytek kódu ...
</syntaxhighlight>
Reference
- NetLogo Bus Transport Simulation Code (2025). Vlastní implementace autobusové simulace v NetLogo.
- Wilensky, U. (1999). NetLogo. Center for Connected Learning and Computer-Based Modeling, Northwestern University.
- Programming Homework Help (2024). How to Simulate a Bus Moving Through a City in NetLogo.
- Stack Overflow (2022). How to create a Netlogo model for bus transport (public transport)?
- Simulace.info (2024). Quick start - Resources for simulation classes.
- Thompson, L. (2024). NetLogo City Bus Simulation: Step-by-Step Guide.
Externí odkazy
- NetLogo Official Website
- Simulace.info - Česká stránka o simulacích
- Dopravní podnik hlavního města Prahy
Kategorie:Simulace Kategorie:Doprava Kategorie:NetLogo Kategorie:Agent-based modelování