from typing import List, Tuple, Callable
from MDP import Action, State, MDP
def modify_action_reward(mdp: MDP, act: Action, delta: float) -> MDP:
”’
Returns an MDP equivalent to the specified MDP,
except that the transitions associated with the specified action
have a value modified by ‘delta’.
”’
pass
def penalise_condition(mdp: MDP, condition: Callable[[State],bool], delta: float) -> MDP:
”’
Returns an MDP equivalent to the specified MDP,
except that the specified action is forbidden in states in which other actions are possible.
”’
pass
def forbid_action(mdp: MDP, act: Action) -> MDP:
”’
Returns an MDP equivalent to the specified MDP,
except that the specified action is forbidden in states in which other actions are possible.
”’
pass
def forbid_two_actions(mdp: MDP, act: Action) -> MDP:
”’
Returns an MDP equivalent to the specified MDP,
except that the specified action can be applied only once.
”’
pass
def one_action_between(mdp: MDP, a: Action, b: Action) -> MDP:
”’
Returns an MDP equivalent to the specified MDP,
except that the first specified action can be applied multiple times
only if the second specified action is applied between its occurrences.
”’
pass
# eof