GenericAI_Sweeper/astar2_document.txt
eugenep 520efb84ea Try to implement to A*
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>
2021-04-24 01:44:57 +02:00

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