Skip to content

Commit f4c9d50

Browse files
committed
Improve documentation
1 parent 98d9b5f commit f4c9d50

1 file changed

Lines changed: 28 additions & 19 deletions

File tree

docs/inputs/agents.rst

Lines changed: 28 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -102,8 +102,8 @@ The columns have the following meaning:
102102

103103

104104
``obj_data1``
105-
A weight associated with the objective.
106-
Whether it is used will depend in large part on the :ref:`decision method <decision_method>`.
105+
A value associated with the objective.
106+
Its meaning, and whether it is used at all, will depend in large part on the :ref:`decision method <decision_method>`.
107107

108108

109109
``obj_sort1``
@@ -168,23 +168,32 @@ Additional objectives
168168
decision methods are available with MUSE, as implemented in
169169
:py:mod:`~muse.decisions`:
170170

171-
- :py:func:`mean <mean>`: Computes the average across several objectives.
172-
- :py:func:`weighted_sum <weighted_sum>`: Computes a weighted average across several
173-
objectives.
174-
- :py:func:`lexical_comparion <lexical_comparison>`: Compares objectives using a
175-
binned lexical comparison operator. Aliased to "lexo". This is a `lexicographic method <https://en.wikipedia.org/wiki/Lexicographic_order>`_ where objectives are compared in a specific order, for example first costs, then environmental emissions.
176-
- :py:func:`retro_lexical_comparion <retro_lexical_comparison>`: A binned lexical
177-
comparison function where the bin size is adjusted to ensure the current crop of
178-
technologies are competitive. Aliased to "retro_lexo".
179-
- :py:func:`epsilon_constraints <epsilon_constraints>`: A comparison method which
180-
ensures that first selects technologies following constraints on objectives 2 and
181-
higher, before actually ranking them using objective 1. Aliased to "epsilon" and
182-
"epsilon_con".
183-
- :py:func:`retro_epsilon_constraints <retro_epsilon_constraints>`: A variation on
184-
epsilon constraints which ensures that the current crop of technologies are not
185-
deselected by the constraints. Aliased to "retro_epsilon".
186-
- :py:func:`single_objective <single_objective>`: A decision method to allow
187-
ranking via a single objective.
171+
- :py:func:`mean <mean>`: Computes the arithmetic mean across multiple objectives,
172+
treating all objectives as equally important.
173+
- :py:func:`weighted_sum <weighted_sum>`: Computes a weighted average across
174+
objectives using weights defined in ``obj_data``, where higher weights increase the
175+
importance of an objective in the final score.
176+
- :py:func:`lexical_comparion <lexical_comparison>`: Ranks technologies using a
177+
priority ordering of objectives. The first objective is considered within a
178+
tolerance defined by ``obj_data1`` (e.g. 0.1 corresponds to a 10% tolerance), and
179+
only distinguishes technologies outside this tolerance. Subsequent objectives
180+
(``obj_data2``, ``obj_data3``) are used to break ties. Aliased to "lexo".
181+
- :py:func:`retro_lexical_comparion <retro_lexical_comparison>`: A variant of lexical
182+
comparison where tolerances are adjusted so that existing technologies remain
183+
feasible for comparison. Otherwise, behaviour matches ``lexical_comparison``.
184+
Aliased to "retro_lexo".
185+
- :py:func:`epsilon_constraints <epsilon_constraints>`: Selects technologies by
186+
optimising the first objective while using all remaining objectives as feasibility
187+
filters. Each filter applies a threshold defined in ``obj_data2`` and
188+
``obj_data3``, with direction (above or below the threshold) determined by
189+
``obj_sort2`` and ``obj_sort3``. ``obj_data1`` is not used, but must be provided.
190+
Aliased to "epsilon" and "epsilon_con".
191+
- :py:func:`retro_epsilon_constraints <retro_epsilon_constraints>`: A variant of
192+
epsilon constraints where thresholds are adjusted so that existing technologies are
193+
never excluded by feasibility conditions. Otherwise behaves identically to
194+
epsilon_constraints. Aliased to "retro_epsilon".
195+
- :py:func:`single_objective <single_objective>`: Ranks technologies using a single
196+
objective without considering additional objectives or constraints.
188197

189198
The functions allow for any number of objectives. However, the format described here
190199
allows only for three.

0 commit comments

Comments
 (0)