Source:
Local role: Result container for one evaluated strategy and its aggregate utility.
Fields:
- strategy: Strategy
- utility_frame: UtilityFrame
- rank_key: tuple[float, …]
- terminal_node_ids: list[str]
- terminal_probabilities: dict
Example:
ranker = StrategyRanker(utility)
ranked_strategies = ranker.rank_strategies([strategy_a, strategy_b], actor)
best = ranked_strategies[0] # highest utility
print(best.strategy.id)
print(best.utility_frame.scalar_value)
print(best.rank_key) # sorting tuple used for tie-breaking
print(best.terminal_node_ids) # terminal nodes that contributed to the score
print(best.terminal_probabilities) # {node_id: accumulated_probability}
See also:
