520efb84ea
Co-authored-by: Sebastian Piotrowski <sebpio@st.amu.edu.pl> Co-authored-by: Marcin Matoga <marmat35@st.amu.edu.pl> Co-authored-by: Ladislaus3III <Ladislaus3III@users.noreply.github.com>
99 lines
2.1 KiB
Plaintext
99 lines
2.1 KiB
Plaintext
|
|
|
|
class PlanRoute
|
|
|
|
actions(state) przyjmuje mape? state
|
|
zwraca możliwe akcje agenta
|
|
|
|
result(state, action) mapa? state, action(string)
|
|
|
|
tworzy listę możliwych ruchów w liście proposed_loc
|
|
sprawdza, czy współrzędne w proposed_loc znajdują się w zbiorze allowed
|
|
|
|
ustawia kierunek agenta oraz nowe położenie na mapie
|
|
zwraca state
|
|
|
|
goal_test(state) przyjmuje state
|
|
sprawdza czy stan docelowy zgadza się ze stanem obecnym
|
|
zwraca wartość True lub False
|
|
|
|
path_cost(c, state1, action, state2)
|
|
ocenia nowy koszt po zmianie stanu
|
|
zwraca nowy koszt
|
|
|
|
def h(node) funkcja heurystyki, przyjmuje objekt klasy node
|
|
|
|
przypisuje zmiennym x i y wartość współrzędnych
|
|
za pomocą funkcji get_location()
|
|
|
|
mamy xy dla stanu obecnego
|
|
mamy xy dla stanu docelowego
|
|
|
|
zwraca ogległość
|
|
|
|
|
|
class Node
|
|
|
|
expand(problem) przyjmuje klasę problem
|
|
|
|
tworzy węzły potomne na podstawie możliwych akcji
|
|
|
|
zwraca listę węzłów potomnych
|
|
|
|
child_node(problem, action) przyjmuje problem oraz akcję
|
|
tworzy węzeł potomny na podstawie otzymanej akcji
|
|
|
|
zwraca węzeł potomny
|
|
|
|
|
|
class AgentPosition
|
|
|
|
get_location
|
|
zwraca dwie zmienne: X i Y
|
|
|
|
set_location
|
|
ustawia zmienne: X i Y
|
|
|
|
get_orientation:
|
|
zwraca kierunek
|
|
|
|
set_orientation:
|
|
ustawia kierunek
|
|
|
|
|
|
|
|
class SweeperAgent - najbardziej tajemnicza klasa, bo do końca nie wiadomo co ma robić
|
|
|
|
where_am_i() - niby ma zwracać położenie agenta na planszy
|
|
|
|
set_allowed(allowed_points)
|
|
ustawia listę dostępnych miejsc na mapie
|
|
|
|
set_puddles(puddle_points)
|
|
ustawia listę obecnych kałuż
|
|
|
|
set_goal(goal)
|
|
ustawia punkt docelowy
|
|
|
|
set_initial(initial)
|
|
ustawia punkt początkowy
|
|
|
|
set_orientation()
|
|
ustawia kierunek
|
|
|
|
plan_route() - czarna magia A* (∩ ͝ ° ͜ʖ͡° )⊃━☆゚
|
|
|
|
load_map() - ładowanie mapy
|
|
|
|
astar_search() a*
|
|
|
|
|
|
class PriorityQueue - jakaś kolejka priorytetowa
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|