<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Game utility.py on Ometeotl, an abstract decision meta-model</title><link>https://kakchouch.github.io/ometeotl/documentation/class-reference/game/utility/</link><description>Recent content in Game utility.py on Ometeotl, an abstract decision meta-model</description><generator>Hugo</generator><language>en-us</language><atom:link href="https://kakchouch.github.io/ometeotl/documentation/class-reference/game/utility/index.xml" rel="self" type="application/rss+xml"/><item><title>game utility.py Overview</title><link>https://kakchouch.github.io/ometeotl/documentation/class-reference/game/utility/utility-overview/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://kakchouch.github.io/ometeotl/documentation/class-reference/game/utility/utility-overview/</guid><description>&lt;p&gt;This module defines concrete utility combinators and strategy ranking helpers.&lt;/p&gt;
&lt;p&gt;Primary structures:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="https://kakchouch.github.io/ometeotl/documentation/class-reference/game/utility/weighted-sum-utility/"&gt;WeightedSumUtility&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://kakchouch.github.io/ometeotl/documentation/class-reference/game/utility/lexicographic-utility/"&gt;LexicographicUtility&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://kakchouch.github.io/ometeotl/documentation/class-reference/game/utility/strategy-ranker/"&gt;StrategyRanker&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;</description></item><item><title>LexicographicUtility</title><link>https://kakchouch.github.io/ometeotl/documentation/class-reference/game/utility/lexicographic-utility/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://kakchouch.github.io/ometeotl/documentation/class-reference/game/utility/lexicographic-utility/</guid><description>&lt;p&gt;Source:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="https://github.com/kakchouch/ometeotl/blob/main/src/ometeotl_core/game/utility.py"&gt;src/ometeotl_core/game/utility.py&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Local role:
Vector-valued utility combinator with explicit criterion ordering and direction.&lt;/p&gt;
&lt;p&gt;Big-picture role:
Game-layer multi-criteria scoring primitive for lexicographic ranking.&lt;/p&gt;
&lt;p&gt;Inheritance:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="https://kakchouch.github.io/ometeotl/documentation/class-reference/model/utility/utility-function/"&gt;UtilityFunction&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Constructor:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;LexicographicUtility(framework_id, metric_order, metric_directions=None)&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Method:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;evaluate(perception, actor, context) -&amp;gt; UtilityFrame&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;See also:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="https://kakchouch.github.io/ometeotl/documentation/class-reference/game/utility/weighted-sum-utility/"&gt;WeightedSumUtility&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://kakchouch.github.io/ometeotl/documentation/class-reference/game/utility/strategy-ranker/"&gt;StrategyRanker&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;</description></item><item><title>RankedStrategy</title><link>https://kakchouch.github.io/ometeotl/documentation/class-reference/game/utility/ranked-strategy/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://kakchouch.github.io/ometeotl/documentation/class-reference/game/utility/ranked-strategy/</guid><description>&lt;p&gt;Source:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="https://github.com/kakchouch/ometeotl/blob/main/src/ometeotl_core/game/utility.py"&gt;src/ometeotl_core/game/utility.py&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Local role:
Result container for one evaluated strategy and its aggregate utility.&lt;/p&gt;
&lt;p&gt;Fields:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;strategy: &lt;a href="https://kakchouch.github.io/ometeotl/documentation/class-reference/model/strategies/strategy/"&gt;Strategy&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;utility_frame: &lt;a href="https://kakchouch.github.io/ometeotl/documentation/class-reference/model/utility/utility-frame/"&gt;UtilityFrame&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;rank_key: tuple[float, &amp;hellip;]&lt;/li&gt;
&lt;li&gt;terminal_node_ids: list[str]&lt;/li&gt;
&lt;li&gt;terminal_probabilities: dict&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;See also:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="https://kakchouch.github.io/ometeotl/documentation/class-reference/game/utility/strategy-ranker/"&gt;StrategyRanker&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;</description></item><item><title>StrategyRanker</title><link>https://kakchouch.github.io/ometeotl/documentation/class-reference/game/utility/strategy-ranker/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://kakchouch.github.io/ometeotl/documentation/class-reference/game/utility/strategy-ranker/</guid><description>&lt;p&gt;Source:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="https://github.com/kakchouch/ometeotl/blob/main/src/ometeotl_core/game/utility.py"&gt;src/ometeotl_core/game/utility.py&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Local role:
Ranks strategies by evaluating projected terminal nodes with a utility function.&lt;/p&gt;
&lt;p&gt;Big-picture role:
Game-layer bridge from projected strategy structures to comparable utility outcomes.&lt;/p&gt;
&lt;p&gt;Inheritance:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;standard class&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Constructor:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;StrategyRanker(utility_function)&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Methods:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;evaluate_strategy(strategy, actor, context=None) -&amp;gt; RankedStrategy&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;rank_strategies(strategies, actor, context=None) -&amp;gt; list[RankedStrategy]&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Important behavior:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;validates strategy trees before ranking&lt;/li&gt;
&lt;li&gt;aggregates branch probabilities per child node&lt;/li&gt;
&lt;li&gt;supports directed acyclic strategies with duplicate terminal paths by accumulating terminal path probabilities per node id&lt;/li&gt;
&lt;li&gt;supports scalar and multi-criteria utility outputs&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;See also:&lt;/p&gt;</description></item><item><title>WeightedSumUtility</title><link>https://kakchouch.github.io/ometeotl/documentation/class-reference/game/utility/weighted-sum-utility/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://kakchouch.github.io/ometeotl/documentation/class-reference/game/utility/weighted-sum-utility/</guid><description>&lt;p&gt;Source:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="https://github.com/kakchouch/ometeotl/blob/main/src/ometeotl_core/game/utility.py"&gt;src/ometeotl_core/game/utility.py&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Local role:
Scalar utility combinator that computes weighted linear sums over metrics.&lt;/p&gt;
&lt;p&gt;Big-picture role:
Default game-layer scalar scoring primitive used by &lt;a href="https://kakchouch.github.io/ometeotl/documentation/class-reference/game/utility/strategy-ranker/"&gt;StrategyRanker&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;Inheritance:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="https://kakchouch.github.io/ometeotl/documentation/class-reference/model/utility/utility-function/"&gt;UtilityFunction&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Constructor:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;WeightedSumUtility(framework_id, metric_weights)&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Method:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;evaluate(perception, actor, context) -&amp;gt; UtilityFrame&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;See also:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="https://kakchouch.github.io/ometeotl/documentation/class-reference/game/utility/lexicographic-utility/"&gt;LexicographicUtility&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://kakchouch.github.io/ometeotl/documentation/class-reference/game/utility/strategy-ranker/"&gt;StrategyRanker&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;</description></item></channel></rss>