essos.multiobjectiveoptimizer

Classes

MultiObjectiveOptimizer

Module Contents

class essos.multiobjectiveoptimizer.MultiObjectiveOptimizer(loss_functions, vmec, coils_init=None, function_inputs=None, opt_config=None)
loss_functions
loss_names
vmec
function_inputs
opt_config
study = None
order_Fourier
num_points
num_coils
max_eval
n_trials
tol
optimizer_choices
initial_coils
best_coils = None
_generate_initial_coils()
_call_loss_fn(func, available_inputs)
_build_available_inputs(x)
weighted_loss(x, weights)
_objective(trial)
_build_coils_from_x(x)
run(seed: int = 42)
optimize_with_optax(weights, method='adam', lr=0.01)
plot_pareto_fronts(logx=False, logy=False, logz=False, z_thresh=None, ncols=None, save=None)

Plot Pareto front.

logx, logy, logz: Apply log10 transform to x, y, z axes respectively. z_thresh: If provided, filter out points where y > mean + z_thresh * std ncols: Number of columns in the grid layout for 2D projections. save: str (exact path) or True (auto-save in ./output/) or None (no save)

plot_parallel_coordinates(logy=False, z_thresh=None, include_params=None, save=None)

Draw one parallel-coordinates figure per objective.

logy: Apply log10 transform to y-axis values. z_thresh: If provided, filter out points where y > mean + z_thresh * std include_params: If provided, filter the parameters to include only those specified. save: str (exact path) or True (auto-save in ./output/) or None (no save).

For True/str, a separate file per objective is saved.

plot_optimization_history(logy=False, z_thresh=None, ncols=2, save=None)

Plot optimization history for all objectives in a grid layout.

logy: Apply log10 transform to y-axis values. z_thresh: If provided, filter out points where y > mean + z_thresh * std ncols: Number of columns in the grid layout. save: str (exact path) or True (auto-save in ./output/) or None (no save).

plot_param_importances(save=None, ncols=2)
select_best_from_pareto(weights=None, limits=None)
rebuild_best_coils(weights=None, limits=None, plot=False)