Skip to content

Conversation

@Aeolin
Copy link
Collaborator

@Aeolin Aeolin commented Dec 17, 2024

In accordance with @Sangeeths11 and @AdiJoost we decided to overhaul our architecture

  • core simulation logic is implemented like stated in the task description
  • visualisation runs in realtime
  • readme documents the most important parts of the project
  • fast marching is implemented
  • experimental waypoint system is implemented to deal with stuck pedestrians when not updating the navigation heatmaps each tick
  • tests for all important core components are implemented

Sangeeths11 and others added 30 commits December 1, 2024 19:54
- implemented interfaces sangeeths is programming
- code not working
- implemented moore neighbourhood
- added immutable list wrapper
- added clipped normal distribution
- somehow deviates from value shown on slides
- seems to be somewhat working tho
- added function to simulation to get the max distance inside the simulation grid (used for visualisation)
…g threshold

- added target direction into visualisation by rendering pedestrian as triangle
- added keybopard shortcuts
- added path visualisation
- implemented ToggleButton
- implemented Theme
- fixed bugs in shortcut
- improved event handling code (single responsiblility)
- render buttons
- added multiline text rendering to VisualisationHelper
Copy link
Collaborator

@DrGeli DrGeli left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Hi Group B,

wow, a lot has happened since last time! I've scanned the code and it looks very well structured and clean.
I do have trouble getting the code running - the Readme states that I have to pass a simulation configuration file but it does not work for me. Could you please add more hints on how to get the program running?

- added getting started to readme
@Aeolin
Copy link
Collaborator Author

Aeolin commented Dec 18, 2024

Hello @DrGeli i now updated the readme to include a getting started section, if you encouter issues leading to exceptions please open an issue for me with the stacktrace.

@DrGeli
Copy link
Collaborator

DrGeli commented Dec 19, 2024

Hello @DrGeli i now updated the readme to include a getting started section, if you encouter issues leading to exceptions please open an issue for me with the stacktrace.

Hi, here is the stacktrace I get:

C:\Users\Geli\PycharmProjects\Gruppe-B-Original.venv\Scripts\python.exe C:\Users\Geli\PycharmProjects\Gruppe-B-Original\run.py ./simulation_config/rimea_test_4.json
Traceback (most recent call last):
File "C:\Users\Geli\PycharmProjects\Gruppe-B-Original\run.py", line 5, in
from simulation.core.simulation import Simulation
File "C:\Users\Geli\PycharmProjects\Gruppe-B-Original\simulation\core\simulation.py", line 6, in
from simulation.heatmaps.djisktra_heatmap_generator import DijkstraHeatmapGenerator
File "C:\Users\Geli\PycharmProjects\Gruppe-B-Original\simulation\heatmaps\djisktra_heatmap_generator.py", line 7, in
from simulation.core.simulation_grid import SimulationGrid
File "C:\Users\Geli\PycharmProjects\Gruppe-B-Original\simulation\core\simulation_grid.py", line 12, in
from simulation.neighbourhood.base_neighbourhood import NeighbourhoodBase
File "C:\Users\Geli\PycharmProjects\Gruppe-B-Original\simulation\neighbourhood\base_neighbourhood.py", line 4, in
class NeighbourhoodBase(ABC):
File "C:\Users\Geli\PycharmProjects\Gruppe-B-Original\simulation\neighbourhood\base_neighbourhood.py", line 19, in NeighbourhoodBase
def get_neighbours(self, x: int, y: int, width: int, height: int) -> Generator[tuple[int, int]]:
~~~~~~~~~^^^^^^^^^^^^^^^^^
File "C:\Program Files\WindowsApps\PythonSoftwareFoundation.Python.3.12_3.12.2288.0_x64__qbz5n2kfra8p0\Lib\typing.py", line 398, in inner
return func(*args, **kwds)
^^^^^^^^^^^^^^^^^^^
File "C:\Program Files\WindowsApps\PythonSoftwareFoundation.Python.3.12_3.12.2288.0_x64__qbz5n2kfra8p0\Lib\typing.py", line 1482, in getitem
_check_generic(self, params, self._nparams)
File "C:\Program Files\WindowsApps\PythonSoftwareFoundation.Python.3.12_3.12.2288.0_x64__qbz5n2kfra8p0\Lib\typing.py", line 304, in _check_generic
raise TypeError(f"Too {'many' if alen > elen else 'few'} arguments for {cls};"
TypeError: Too few arguments for typing.Generator; actual 1, expected 3

Process finished with exit code 1

@Aeolin
Copy link
Collaborator Author

Aeolin commented Dec 19, 2024

Hello @DrGeli according to your stack trace it seems like you have python 3.12. Our code will only run in python 3.13 since we used new type hinting features 3.12 sees as an error. Let me know if it's not possible for you to install python 3.13 then i'll try to backport our code to support older python versions as well.

@DrGeli
Copy link
Collaborator

DrGeli commented Dec 20, 2024

Hello @DrGeli according to your stack trace it seems like you have python 3.12. Our code will only run in python 3.13 since we used new type hinting features 3.12 sees as an error. Let me know if it's not possible for you to install python 3.13 then i'll try to backport our code to support older python versions as well.

Thanks @Aeolin, I managed to get it started!

@Aeolin Aeolin changed the title Develop new finale_abgabe Dec 31, 2024
@Aeolin
Copy link
Collaborator Author

Aeolin commented Dec 31, 2024

@DrGeli renamed this PR to finale_abgabe

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants