2022-04-16 15:55:43 +02:00
|
|
|
from typing import List
|
|
|
|
|
|
|
|
from InitialStateFactory import InitialStateFactory
|
|
|
|
from data.GameConstants import GameConstants
|
|
|
|
from decision.ActionType import ActionType
|
|
|
|
from decision.State import State
|
|
|
|
from util.PathDefinitions import GridLocation
|
|
|
|
|
|
|
|
|
|
|
|
class StateTree:
|
|
|
|
|
|
|
|
def __init__(self, initial_state_factory: InitialStateFactory, game_constants: GameConstants,
|
|
|
|
initial_forklift_position: GridLocation):
|
|
|
|
self.game_constants = game_constants
|
|
|
|
|
|
|
|
parent = State(
|
|
|
|
action_taken=ActionType.NONE,
|
|
|
|
forklift_position=initial_forklift_position,
|
|
|
|
pending_orders=initial_state_factory.generate_order_list(5),
|
|
|
|
filled_orders=[],
|
|
|
|
input_items=initial_state_factory.generate_input_sequence(20)
|
|
|
|
)
|
|
|
|
|
|
|
|
def expansion(self, from_state: State) -> List[State]:
|
|
|
|
return []
|
2022-04-22 10:30:23 +02:00
|
|
|
#
|
|
|
|
# a* na przestrzeni stanow
|
|
|
|
# heura -> np manhatan
|
|
|
|
# funkcja kosztu zroznicowany
|