Go to file
2023-05-26 03:02:16 +02:00
src code refactoring, preparation to decision tree integration 2023-05-26 03:02:16 +02:00
.gitignore added basic agent logic 2023-03-31 00:48:17 +02:00
agent.py code refactoring, preparation to decision tree integration 2023-05-26 03:02:16 +02:00
README.MD code refactoring, preparation to decision tree integration 2023-05-26 03:02:16 +02:00
requirements.txt add agent roles 2023-03-30 15:03:19 +02:00

AUTOMATYCZNY KELNER

Authors: Kamil Ryżek, Aliaksandr Piatrou, Arseni Zavadski, Vadzim Valchkovich

INSTALATION GUIDE

Install pipenv

pip install --user pipenv

Install dependencies

pipenv install -r requirements.txt

RUN INSTRUCTIONS

pipenv run python agent.py

TODO


  • Planowanie ruchu: Wymagania dot. pierwszego przyrostu

    • Agent powinien dysponować co najmniej następującymi akcjami: ruch do przodu, obrót w lewo, obrót w prawo
    • Należy wykorzystać „Schemat procedury przeszukiwania grafu stanów“.
    • Należy zaimplementować strategię Breadth-First Search.

  • Planowanie ruchu: Wymagania dot. drugiego przyrostu
    • Należy wykorzystać „Schemat procedury przeszukiwania grafu stanów z uwzględnieniem kosztu“
    • Należy zaimplementować strategię A*, czyli zdefiniować funkcję wyznaczającą priorytet następników uwzględniającą zarówno koszt jak i odpowiednią heurystykę.
    • Agent powinien dysponować co najmniej następującymi akcjami: ruch do przodu, obrót w lewo, obrót w prawo.
    • Koszt wjazdu na pola poszczególnych typów powinien być zróżnicowany.

Przykład: Koszt wjazdu traktora na pole marchewek to 10 a koszt wjazdu na pole puste to 1.


  • Drzewa decyzyjne: wymagania dot. trzeciego przyrostu
    • Należy wykorzystać algorytm ID3 (tj. schemat indukcyjnego uczenia drzewa decyzyjnego oraz procedurę wyboru atrybutu o największym przyroście informacji) lub któreś z jego uogólnień.
    • Należy przygotować zbiór uczący złożony z co najmniej 200 przykładów.
    • Decyzja stanowiąca cel uczenia powinna zostać opisana przynajmniej ośmioma atrybutami.
    • Powinna pojawić się opcja podglądu wyuczonego drzewa (np. w logach lub w pliku z graficzną reprezentacją drzewa).