from typing import NamedTuple, Union from environments.helpers import Constants as BaseConstants, EnvActions as BaseActions class Constants(BaseConstants): # Battery Env CHARGE_PODS = 'Charge_Pod' BATTERIES = 'BATTERIES' BATTERY_DISCHARGED = 'DISCHARGED' CHARGE_POD = 1 class Actions(BaseActions): CHARGE = 'do_charge_action' class RewardsBtry(NamedTuple): CHARGE_VALID: float = 0.1 CHARGE_FAIL: float = -0.1 BATTERY_DISCHARGED: float = -1.0 class BatteryProperties(NamedTuple): initial_charge: float = 0.8 # charge_rate: float = 0.4 # charge_locations: int = 20 # per_action_costs: Union[dict, float] = 0.02 done_when_discharged: bool = False multi_charge: bool = False