public double TakeActionInState(State state, AIAction action) { WalkerState walkerState = state as WalkerState; WalkerAction walkerAction = action as WalkerAction; if (walkerAction == null || walkerState == null) { return(0); } return(WalkerAIRules.GetStateActionReward(walkerState, walkerAction)); }
public State GetStateOf <Agent>(Agent agent) { return(WalkerAIRules.GetState(agent as WalkerAgent, nearDistance, farDistance)); }