def epsilon_decay_schedule(episode_number: int,
                           decay_factor: float,
                           minimum_epsilon: float) -> float:
    """Decay schedule for the probability that agent chooses an action at random."""
    return max(decay_factor**episode_number, minimum_epsilon)