Title: | Porovnání paralelní implementace B algoritmu v Javě a C/C++ |
Other Titles: | Comparison of Parallel Implementation of B Algorithm in Java and C/C++ |
Authors: | Pernička, Petr |
Advisor: | Potužák Tomáš, Ing. Ph.D. |
Referee: | Lipka Richard, Ing. Ph.D. |
Issue Date: | 2024 |
Publisher: | Západočeská univerzita v Plzni |
Document type: | bakalářská práce |
URI: | http://hdl.handle.net/11025/57098 |
Keywords: | b algoritmus;java;c++;porovnání;paralelizace;problém přiřazení dopravy;uživatelská rovnováha |
Keywords in different language: | b algorithm;java;c++;comparison;parallelization;traffic assignment problem;user equilibrium |
Abstract: | Jedna z používaných technik pro předpověď dopravy je čtyřkrokový model, jehož součástí je i přiřazení dopravy. Přiřazení dopravy přichází poté, co je již určen dopravní tok z každého počátku do každého cíle v dopravní síti ve formě OD matice a obnáší přiřazení tohoto toku jednotlivým silnicím v síti tak, aby jízdy používaly nejlevnější trasy. Algoritmus B řeší statickou variantu přiřazení dopravy, kdy prvky OD matice jsou konstanty a řešení pak reprezentuje průměr přes modelovaný časový úsek. V této práci je Algoritmus B paralelizován a implementován v Javě a C++ a následně jsou porovnány přiřazené toky, čas a paměť. Výsledkem práce je, že C++ je o ~8% rychlejší a potřebuje o ~4% méně paměti. Samotná paralelizace pak dokáže na použitých počítačích urychlit algoritmus až o ~80%. |
Abstract in different language: | One of the techniques used for traffic forecasting is the four-step model, part of which is traffic assignment. Traffic assignment comes after determining the traffic flow from each origin to each destination in the traffic network taking the form of OD matrix and it entails assignment of this flow to each link in the network so that trips would use cheapest paths. Algorithm B solves static variant of traffic assignment in which elements of the OD matrix are constants and the result represents an average over considered time frame. In this thesis, Algorithm B is parallelized and implemented in Java and C++. Then, the assigned flows, the computation time and memory consumption of both versions are compared. The result is that C++ is ~8% faster and needs ~4% less memory. The parallelization alone is able to speed up the algoritm by ~80% on used computers. |
Rights: | Plný text práce je přístupný bez omezení |
Appears in Collections: | Bakalářské práce / Bachelor´s works (KIV) |
Files in This Item:
File | Description | Size | Format | |
---|---|---|---|---|
A20B0203P_Text.pdf | Plný text práce | 586,66 kB | Adobe PDF | View/Open |
A20B0203P_Hodnoceni.pdf | Posudek vedoucího práce | 46,27 kB | Adobe PDF | View/Open |
A20B0203P_Posudek.pdf | Posudek oponenta práce | 100,66 kB | Adobe PDF | View/Open |
A20B0203P_Obhajoba.pdf | Průběh obhajoby práce | 62,79 kB | Adobe PDF | View/Open |
Please use this identifier to cite or link to this item:
http://hdl.handle.net/11025/57098
Items in DSpace are protected by copyright, with all rights reserved, unless otherwise indicated.