compromise module¶
Compromise points for multi-criteria decision-making.
- class gemseo_pymoo.post.compromise.Compromise(opt_problem)[source]¶
Bases:
ScatterPareto
Scatter plot with pareto front and compromise points.
- Parameters:
opt_problem (OptimizationProblem) – The optimization problem to be post-processed.
- Raises:
ValueError – If the JSON grammar file for the options of the post-processor does not exist.
- check_options(**options)¶
Check the options of the post-processor.
- execute(save=True, show=False, file_path=None, directory_path=None, file_name=None, file_extension=None, fig_size=None, **options)¶
Post-process the optimization problem.
- Parameters:
save (bool) –
If
True
, save the figure.By default it is set to True.
show (bool) –
If
True
, display the figure.By default it is set to False.
file_path (str | Path | None) – The path of the file to save the figures. If the extension is missing, use
file_extension
. IfNone
, create a file path fromdirectory_path
,file_name
andfile_extension
.directory_path (str | Path | None) – The path of the directory to save the figures. If
None
, use the current working directory.file_name (str | None) – The name of the file to save the figures. If
None
, use a default one generated by the post-processing.file_extension (str | None) – A file extension, e.g. ‘png’, ‘pdf’, ‘svg’, … If
None
, use a default file extension.fig_size (FigSizeType | None) – The width and height of the figure in inches, e.g.
(w, h)
. IfNone
, use theOptPostProcessor.DEFAULT_FIG_SIZE
of the post-processor.**options (OptPostProcessorOptionType) – The options of the post-processor.
- Returns:
The figures, to be customized if not closed.
- Raises:
ValueError – If the
opt_problem.database
is empty.
- DEFAULT_FIG_SIZE = (11.0, 11.0)¶
The default width and height of the figure, in inches.
- property figures: dict[str, Figure]¶
The Matplotlib figures indexed by a name, or the nameless figure counter.
- materials_for_plotting: dict[Any, Any]¶
The materials to eventually rebuild the plot in another framework.
- opt_problem: OptimizationProblem¶
The optimization problem.
- prop_annotation: ClassVar[PlotPropertiesType] = {'fontsize': 7, 'ha': 'center', 'rotation_mode': 'anchor', 'transform_rotates_text': True, 'va': 'bottom'}¶
The properties for the annotations.
- prop_arrow: ClassVar[PlotPropertiesType] = {'alpha': 0.5, 'arrowstyle': '-|>', 'color': 'black', 'mutation_scale': 12}¶
The properties for the arrows.
- prop_extra: ClassVar[PlotPropertiesType] = {'alpha': 0.8, 's': 30, 'zorder': 2}¶
The properties for the extra points.
- prop_front: ClassVar[PlotPropertiesType] = {'alpha': 0.2, 'color': 'blue', 's': 10, 'zorder': 1}¶
The properties for the pareto points.
- prop_interest: ClassVar[PlotPropertiesType] = {'alpha': 1.0, 's': 30, 'zorder': 3}¶
The properties for the points of interest.