Multi Objective Loading BOA from JSON and Plotting Results#
This notebook demonstrates how to:
Loading a Scheduler from JSON from a multi objective optimization previous run (If you want to see the Experiment that this is from, see Running a Multi Objective Optimization Directly in Python. We will look at the output and plot some exploratory data analysis.
1import pathlib
2import os
3
4import numpy as np
5from ax.utils.notebook.plotting import init_notebook_plotting
6from ax.plot.trace import optimization_trace_single_method_plotly
7from ax.service.utils.report_utils import get_standard_plots, exp_to_df
8import boa
9from botorch.test_functions.synthetic import Cosine8
10
11init_notebook_plotting()
[WARNING 08-11 16:18:26] ax.service.utils.with_db_settings_base: Ax currently requires a sqlalchemy version below 2.0. This will be addressed in a future release. Disabling SQL storage in Ax for now, if you would like to use SQL storage please install Ax with mysql extras via `pip install ax-platform[mysql]`.
[INFO 08-11 16:18:27] ax.utils.notebook.plotting: Injecting Plotly library into cell. Do not overwrite or delete cell.
Loading the Scheduler from our JSON file#
1# setup stuff just because this gets reused from the latest run for the case of the docs
2try:
3 run = list(pathlib.Path().resolve().glob("moo_run*"))[-1]
4except IndexError:
5 print("No run to load. Make sure you run optimization_run.ipynb first")
1# Filepath to the scheduler.json
2
3scheduler_fp = run / "scheduler.json"
1scheduler = boa.scheduler_from_json_file(scheduler_fp)
1scheduler
Scheduler(experiment=Experiment(moo_run), generation_strategy=GenerationStrategy(name='Sobol+MOO', steps=[Sobol for 5 trials, MOO for subsequent trials]), options=SchedulerOptions(max_pending_trials=10, trial_type=<TrialType.TRIAL: 0>, batch_size=None, total_trials=None, tolerated_trial_failure_rate=0.5, min_failed_trials_for_failure_rate_check=5, log_filepath=None, logging_level=20, ttl_seconds_for_trials=None, init_seconds_between_polls=1, min_seconds_before_poll=1.0, seconds_between_polls_backoff_factor=1.5, timeout_hours=None, run_trials_in_batches=False, debug_log_run_metadata=False, early_stopping_strategy=None, global_stopping_strategy=None, suppress_storage_errors_after_retries=False))
Show the Best Fitted Trial#
best_fitted_trials uses the data to do a fitting from all trials and with the noise levels you provided (or if no noise levels was provided, it assumed an unknown level of noise and inferred the noise level from the trial runs)
1trial = scheduler.best_fitted_trials()
2trial
[INFO 08-11 16:18:28] ax.modelbridge.torch: The observations are identical to the last set of observations used to fit the model. Skipping model fitting.
{8: {'params': {'x0': 0.0, 'x1': 1.0},
'means': {'branin': -17.50594522745405, 'currin': -1.1800724422527424},
'cov_matrix': {'branin': {'branin': 0.00012023265527870125, 'currin': 0.0},
'currin': {'branin': 0.0, 'currin': 3.4215983223174527e-06}}},
11: {'params': {'x0': 0.06906385213397573, 'x1': 1.0},
'means': {'branin': -3.9038126308486554, 'currin': -3.7154634426462865},
'cov_matrix': {'branin': {'branin': 0.0001314291668150326, 'currin': 0.0},
'currin': {'branin': 0.0, 'currin': 2.898243240072723e-06}}},
13: {'params': {'x0': 0.034186630805364486, 'x1': 1.0},
'means': {'branin': -8.407685038304603, 'currin': -2.5407632315691577},
'cov_matrix': {'branin': {'branin': 6.083126914477495e-05, 'currin': 0.0},
'currin': {'branin': 0.0, 'currin': 1.517520747900595e-06}}},
14: {'params': {'x0': 0.01624975399076722, 'x1': 1.0},
'means': {'branin': -12.647392343706848, 'currin': -1.84111258112818},
'cov_matrix': {'branin': {'branin': 3.954156060107899e-05, 'currin': 0.0},
'currin': {'branin': 0.0, 'currin': 1.1282083504333944e-06}}},
16: {'params': {'x0': 0.049060805446934315, 'x1': 1.0},
'means': {'branin': -5.856158056309933, 'currin': -3.0776762095552774},
'cov_matrix': {'branin': {'branin': 6.210798304945345e-05, 'currin': 0.0},
'currin': {'branin': 0.0, 'currin': 1.5467571368264559e-06}}},
17: {'params': {'x0': 0.024833427368763022, 'x1': 1.0},
'means': {'branin': -10.46544055788041, 'currin': -2.181499576528271},
'cov_matrix': {'branin': {'branin': 6.097196713612431e-05, 'currin': 0.0},
'currin': {'branin': 0.0, 'currin': 1.4120314408932823e-06}}},
18: {'params': {'x0': 0.007940803723628528, 'x1': 1.0},
'means': {'branin': -15.018065055273405, 'currin': -1.5050423076729307},
'cov_matrix': {'branin': {'branin': 4.886439140939999e-05, 'currin': 0.0},
'currin': {'branin': 0.0, 'currin': 1.1909031033620204e-06}}},
20: {'params': {'x0': 0.057975498664321105, 'x1': 1.0},
'means': {'branin': -4.771091747117831, 'currin': -3.3748538428744266},
'cov_matrix': {'branin': {'branin': 9.17580282972471e-05, 'currin': 0.0},
'currin': {'branin': 0.0, 'currin': 2.088061927332389e-06}}},
21: {'params': {'x0': 0.003929274104519794, 'x1': 1.0},
'means': {'branin': -16.24963476501212, 'currin': -1.34123195973539},
'cov_matrix': {'branin': {'branin': 4.2755362420339575e-05, 'currin': 0.0},
'currin': {'branin': 0.0, 'currin': 1.261878949023813e-06}}},
22: {'params': {'x0': 0.04123953139082174, 'x1': 1.0},
'means': {'branin': -7.0848916002501685, 'currin': -2.801251869111394},
'cov_matrix': {'branin': {'branin': 5.6953388760484825e-05, 'currin': 0.0},
'currin': {'branin': 0.0, 'currin': 1.4445742858468708e-06}}},
23: {'params': {'x0': 0.02046158544217996, 'x1': 1.0},
'means': {'branin': -11.542310679230276, 'currin': -2.0091892583373854},
'cov_matrix': {'branin': {'branin': 4.7588741278358716e-05, 'currin': 0.0},
'currin': {'branin': 0.0, 'currin': 1.210926806391902e-06}}},
24: {'params': {'x0': 0.08404250765038519, 'x1': 0.9609125859106751},
'means': {'branin': -2.491508986903458, 'currin': -4.248953306206674},
'cov_matrix': {'branin': {'branin': 0.00012208390801666158, 'currin': 0.0},
'currin': {'branin': 0.0, 'currin': 2.398576565829354e-06}}},
25: {'params': {'x0': 0.029393340733344906, 'x1': 1.0},
'means': {'branin': -9.419765535642263, 'currin': -2.358413911159701},
'cov_matrix': {'branin': {'branin': 6.582397066065161e-05, 'currin': 0.0},
'currin': {'branin': 0.0, 'currin': 1.5398810880337806e-06}}},
26: {'params': {'x0': 0.07072364270399466, 'x1': 0.9713504293958559},
'means': {'branin': -3.379663810456748, 'currin': -3.8485861438111977},
'cov_matrix': {'branin': {'branin': 0.00011894171181985108, 'currin': 0.0},
'currin': {'branin': 0.0, 'currin': 2.260309150584849e-06}}},
27: {'params': {'x0': 0.01203481294338811, 'x1': 1.0},
'means': {'branin': -13.818773522530376, 'currin': -1.6712651357349912},
'cov_matrix': {'branin': {'branin': 4.411658544116109e-05, 'currin': 0.0},
'currin': {'branin': 0.0, 'currin': 1.1969302026061412e-06}}},
28: {'params': {'x0': 0.060190166454409874, 'x1': 0.9761105751599578},
'means': {'branin': -4.46358625980907, 'currin': -3.5104339088294028},
'cov_matrix': {'branin': {'branin': 0.00016335795537590053, 'currin': 0.0},
'currin': {'branin': 0.0, 'currin': 4.133213712876968e-06}}},
30: {'params': {'x0': 0.10813874837867996, 'x1': 0.8684533876115557},
'means': {'branin': -0.6950009426321131, 'currin': -5.160657136510874},
'cov_matrix': {'branin': {'branin': 0.00015941845105974864, 'currin': 0.0},
'currin': {'branin': 0.0, 'currin': 3.810499455206542e-06}}},
32: {'params': {'x0': 0.0982373798237171, 'x1': 0.8967386580276616},
'means': {'branin': -1.1542997824159418, 'currin': -4.829585563192204},
'cov_matrix': {'branin': {'branin': 0.00012143878477047422, 'currin': 0.0},
'currin': {'branin': 0.0, 'currin': 2.5845717988018062e-06}}},
34: {'params': {'x0': 0.11812266864978069, 'x1': 0.8392568255734573},
'means': {'branin': -0.4453368201451777, 'currin': -5.485105403735586},
'cov_matrix': {'branin': {'branin': 0.00018300224176654277, 'currin': 0.0},
'currin': {'branin': 0.0, 'currin': 6.241091199746758e-06}}},
35: {'params': {'x0': 0.04502958435925066, 'x1': 1.0},
'means': {'branin': -6.457723274777965, 'currin': -2.936936687289551},
'cov_matrix': {'branin': {'branin': 5.941996757898125e-05, 'currin': 0.0},
'currin': {'branin': 0.0, 'currin': 1.4669366940299354e-06}}},
36: {'params': {'x0': 0.07610631091681286, 'x1': 0.9575514390092708},
'means': {'branin': -2.85097955430429, 'currin': -4.046372363704383},
'cov_matrix': {'branin': {'branin': 0.00012872995994630277, 'currin': 0.0},
'currin': {'branin': 0.0, 'currin': 2.720838812912683e-06}}},
37: {'params': {'x0': 0.05332225106092659, 'x1': 1.0},
'means': {'branin': -5.294891198040633, 'currin': -3.2222217699742757},
'cov_matrix': {'branin': {'branin': 6.810405285273447e-05, 'currin': 0.0},
'currin': {'branin': 0.0, 'currin': 1.729600728105704e-06}}},
38: {'params': {'x0': 0.03763101601193845, 'x1': 1.0},
'means': {'branin': -7.736631853010584, 'currin': -2.6692151050189117},
'cov_matrix': {'branin': {'branin': 5.7006489684718904e-05, 'currin': 0.0},
'currin': {'branin': 0.0, 'currin': 1.4679412176048055e-06}}},
40: {'params': {'x0': 0.0858664317409115, 'x1': 0.9314355076781369},
'means': {'branin': -1.9984031397425337, 'currin': -4.397976425841215},
'cov_matrix': {'branin': {'branin': 0.0001466579835647289, 'currin': 0.0},
'currin': {'branin': 0.0, 'currin': 3.195933207900893e-06}}},
41: {'params': {'x0': 0.10289633818319328, 'x1': 0.8832205614714647},
'means': {'branin': -0.9122552711965515, 'currin': -4.988039904993729},
'cov_matrix': {'branin': {'branin': 0.00011425944420094114, 'currin': 0.0},
'currin': {'branin': 0.0, 'currin': 2.6610813238886446e-06}}},
44: {'params': {'x0': 0.09179123391114485, 'x1': 0.9150866912652509},
'means': {'branin': -1.5595751896567798, 'currin': -4.606462370897888},
'cov_matrix': {'branin': {'branin': 0.00012824356871955916, 'currin': 0.0},
'currin': {'branin': 0.0, 'currin': 2.742943317790874e-06}}},
45: {'params': {'x0': 0.005923105768633833, 'x1': 1.0},
'means': {'branin': -15.63075259983981, 'currin': -1.4227521109719627},
'cov_matrix': {'branin': {'branin': 4.645817143247344e-05, 'currin': 0.0},
'currin': {'branin': 0.0, 'currin': 1.1562396089168282e-06}}},
46: {'params': {'x0': 0.014125154098707371, 'x1': 1.0},
'means': {'branin': -13.229716462096974, 'currin': -1.7556815953297837},
'cov_matrix': {'branin': {'branin': 4.065142622049852e-05, 'currin': 0.0},
'currin': {'branin': 0.0, 'currin': 1.1543323785551511e-06}}},
47: {'params': {'x0': 0.0183371960984765, 'x1': 1.0},
'means': {'branin': -12.091465829860121, 'currin': -1.9246426736687234},
'cov_matrix': {'branin': {'branin': 4.194450741571098e-05, 'currin': 0.0},
'currin': {'branin': 0.0, 'currin': 1.1457770310556775e-06}}},
48: {'params': {'x0': 0.06386124880839572, 'x1': 0.9877489353196072},
'means': {'branin': -4.106730766518785, 'currin': -3.5939052544708447},
'cov_matrix': {'branin': {'branin': 0.00010819452278704578, 'currin': 0.0},
'currin': {'branin': 0.0, 'currin': 1.7755187911640814e-06}}},
49: {'params': {'x0': 0.001954822840709279, 'x1': 1.0},
'means': {'branin': -16.87507553108936, 'currin': -1.260327149803691},
'cov_matrix': {'branin': {'branin': 5.2663323290058976e-05, 'currin': 0.0},
'currin': {'branin': 0.0, 'currin': 1.831120000363347e-06}}}}
Show the Best Raw Trial#
if you need the exact points of the best trial, maybe because you need the trial number of the best trial to plot results, or for any other reason, best_raw_trails does not do any fitting
1trial = scheduler.best_raw_trials()
2trial
[INFO 08-11 16:18:28] ax.modelbridge.torch: The observations are identical to the last set of observations used to fit the model. Skipping model fitting.
{8: {'params': {'x0': 0.0, 'x1': 1.0},
'means': {'branin': -17.5082969666, 'currin': -1.1804080009},
'cov_matrix': {'branin': {'branin': 0.0, 'currin': 0.0},
'currin': {'branin': 0.0, 'currin': 0.0}}},
11: {'params': {'x0': 0.06906385213397573, 'x1': 1.0},
'means': {'branin': -3.9034695624999998, 'currin': -3.7155561447},
'cov_matrix': {'branin': {'branin': 0.0, 'currin': 0.0},
'currin': {'branin': 0.0, 'currin': 0.0}}},
13: {'params': {'x0': 0.034186630805364486, 'x1': 1.0},
'means': {'branin': -8.4075889587, 'currin': -2.540800333},
'cov_matrix': {'branin': {'branin': 0.0, 'currin': 0.0},
'currin': {'branin': 0.0, 'currin': 0.0}}},
14: {'params': {'x0': 0.01624975399076722, 'x1': 1.0},
'means': {'branin': -12.6477737427, 'currin': -1.8410851955},
'cov_matrix': {'branin': {'branin': 0.0, 'currin': 0.0},
'currin': {'branin': 0.0, 'currin': 0.0}}},
16: {'params': {'x0': 0.049060805446934315, 'x1': 1.0},
'means': {'branin': -5.8564372063, 'currin': -3.0776994228},
'cov_matrix': {'branin': {'branin': 0.0, 'currin': 0.0},
'currin': {'branin': 0.0, 'currin': 0.0}}},
17: {'params': {'x0': 0.024833427368763022, 'x1': 1.0},
'means': {'branin': -10.465502739, 'currin': -2.1815829277},
'cov_matrix': {'branin': {'branin': 0.0, 'currin': 0.0},
'currin': {'branin': 0.0, 'currin': 0.0}}},
18: {'params': {'x0': 0.007940803723628528, 'x1': 1.0},
'means': {'branin': -15.0170793533, 'currin': -1.5048406124},
'cov_matrix': {'branin': {'branin': 0.0, 'currin': 0.0},
'currin': {'branin': 0.0, 'currin': 0.0}}},
20: {'params': {'x0': 0.057975498664321105, 'x1': 1.0},
'means': {'branin': -4.7710633278, 'currin': -3.374941349},
'cov_matrix': {'branin': {'branin': 0.0, 'currin': 0.0},
'currin': {'branin': 0.0, 'currin': 0.0}}},
21: {'params': {'x0': 0.003929274104519794, 'x1': 1.0},
'means': {'branin': -16.2484226227, 'currin': -1.3411325216},
'cov_matrix': {'branin': {'branin': 0.0, 'currin': 0.0},
'currin': {'branin': 0.0, 'currin': 0.0}}},
22: {'params': {'x0': 0.04123953139082174, 'x1': 1.0},
'means': {'branin': -7.0849218369, 'currin': -2.8012547493},
'cov_matrix': {'branin': {'branin': 0.0, 'currin': 0.0},
'currin': {'branin': 0.0, 'currin': 0.0}}},
23: {'params': {'x0': 0.02046158544217996, 'x1': 1.0},
'means': {'branin': -11.5426015854, 'currin': -2.0092418194},
'cov_matrix': {'branin': {'branin': 0.0, 'currin': 0.0},
'currin': {'branin': 0.0, 'currin': 0.0}}},
24: {'params': {'x0': 0.08404250765038519, 'x1': 0.9609125859106751},
'means': {'branin': -2.493224144, 'currin': -4.2489261627},
'cov_matrix': {'branin': {'branin': 0.0, 'currin': 0.0},
'currin': {'branin': 0.0, 'currin': 0.0}}},
25: {'params': {'x0': 0.029393340733344906, 'x1': 1.0},
'means': {'branin': -9.4196805954, 'currin': -2.358484745},
'cov_matrix': {'branin': {'branin': 0.0, 'currin': 0.0},
'currin': {'branin': 0.0, 'currin': 0.0}}},
26: {'params': {'x0': 0.07072364270399466, 'x1': 0.9713504293958559},
'means': {'branin': -3.3811435699, 'currin': -3.8485584259000003},
'cov_matrix': {'branin': {'branin': 0.0, 'currin': 0.0},
'currin': {'branin': 0.0, 'currin': 0.0}}},
27: {'params': {'x0': 0.01203481294338811, 'x1': 1.0},
'means': {'branin': -13.8187360764, 'currin': -1.6711283922},
'cov_matrix': {'branin': {'branin': 0.0, 'currin': 0.0},
'currin': {'branin': 0.0, 'currin': 0.0}}},
28: {'params': {'x0': 0.060190166454409874, 'x1': 0.9761105751599578},
'means': {'branin': -4.4603629112, 'currin': -3.5102257729},
'cov_matrix': {'branin': {'branin': 0.0, 'currin': 0.0},
'currin': {'branin': 0.0, 'currin': 0.0}}},
30: {'params': {'x0': 0.10813874837867996, 'x1': 0.8684533876115557},
'means': {'branin': -0.6959819794000001, 'currin': -5.1610312462},
'cov_matrix': {'branin': {'branin': 0.0, 'currin': 0.0},
'currin': {'branin': 0.0, 'currin': 0.0}}},
32: {'params': {'x0': 0.0982373798237171, 'x1': 0.8967386580276616},
'means': {'branin': -1.1540794373, 'currin': -4.8295350075},
'cov_matrix': {'branin': {'branin': 0.0, 'currin': 0.0},
'currin': {'branin': 0.0, 'currin': 0.0}}},
34: {'params': {'x0': 0.11812266864978069, 'x1': 0.8392568255734573},
'means': {'branin': -0.44483566280000003, 'currin': -5.4846305847},
'cov_matrix': {'branin': {'branin': 0.0, 'currin': 0.0},
'currin': {'branin': 0.0, 'currin': 0.0}}},
35: {'params': {'x0': 0.04502958435925066, 'x1': 1.0},
'means': {'branin': -6.4578824043, 'currin': -2.9369416237},
'cov_matrix': {'branin': {'branin': 0.0, 'currin': 0.0},
'currin': {'branin': 0.0, 'currin': 0.0}}},
36: {'params': {'x0': 0.07610631091681286, 'x1': 0.9575514390092708},
'means': {'branin': -2.8504662514, 'currin': -4.0464344025},
'cov_matrix': {'branin': {'branin': 0.0, 'currin': 0.0},
'currin': {'branin': 0.0, 'currin': 0.0}}},
37: {'params': {'x0': 0.05332225106092659, 'x1': 1.0},
'means': {'branin': -5.2951641083, 'currin': -3.2222754955},
'cov_matrix': {'branin': {'branin': 0.0, 'currin': 0.0},
'currin': {'branin': 0.0, 'currin': 0.0}}},
38: {'params': {'x0': 0.03763101601193845, 'x1': 1.0},
'means': {'branin': -7.7365818024, 'currin': -2.6692306995},
'cov_matrix': {'branin': {'branin': 0.0, 'currin': 0.0},
'currin': {'branin': 0.0, 'currin': 0.0}}},
40: {'params': {'x0': 0.0858664317409115, 'x1': 0.9314355076781369},
'means': {'branin': -1.9985685349, 'currin': -4.398080349},
'cov_matrix': {'branin': {'branin': 0.0, 'currin': 0.0},
'currin': {'branin': 0.0, 'currin': 0.0}}},
41: {'params': {'x0': 0.10289633818319328, 'x1': 0.8832205614714647},
'means': {'branin': -0.9116716385, 'currin': -4.9881272316},
'cov_matrix': {'branin': {'branin': 0.0, 'currin': 0.0},
'currin': {'branin': 0.0, 'currin': 0.0}}},
44: {'params': {'x0': 0.09179123391114485, 'x1': 0.9150866912652509},
'means': {'branin': -1.5595521927, 'currin': -4.6064696311999995},
'cov_matrix': {'branin': {'branin': 0.0, 'currin': 0.0},
'currin': {'branin': 0.0, 'currin': 0.0}}},
45: {'params': {'x0': 0.005923105768633833, 'x1': 1.0},
'means': {'branin': -15.62940979, 'currin': -1.422571063},
'cov_matrix': {'branin': {'branin': 0.0, 'currin': 0.0},
'currin': {'branin': 0.0, 'currin': 0.0}}},
46: {'params': {'x0': 0.014125154098707371, 'x1': 1.0},
'means': {'branin': -13.229970932, 'currin': -1.7555996180000002},
'cov_matrix': {'branin': {'branin': 0.0, 'currin': 0.0},
'currin': {'branin': 0.0, 'currin': 0.0}}},
47: {'params': {'x0': 0.0183371960984765, 'x1': 1.0},
'means': {'branin': -12.091843605, 'currin': -1.9246606827},
'cov_matrix': {'branin': {'branin': 0.0, 'currin': 0.0},
'currin': {'branin': 0.0, 'currin': 0.0}}},
48: {'params': {'x0': 0.06386124880839572, 'x1': 0.9877489353196072},
'means': {'branin': -4.1091036797, 'currin': -3.5938334465},
'cov_matrix': {'branin': {'branin': 0.0, 'currin': 0.0},
'currin': {'branin': 0.0, 'currin': 0.0}}},
49: {'params': {'x0': 0.001954822840709279, 'x1': 1.0},
'means': {'branin': -16.8749217987, 'currin': -1.260392189},
'cov_matrix': {'branin': {'branin': 0.0, 'currin': 0.0},
'currin': {'branin': 0.0, 'currin': 0.0}}}}
1boa.scheduler_to_df(scheduler)
| trial_index | arm_name | trial_status | generation_method | branin | currin | is_feasible | x0 | x1 | |
|---|---|---|---|---|---|---|---|---|---|
| 0 | 0 | 0_0 | COMPLETED | Sobol | -47.393387 | -12.803135 | False | 0.220653 | 0.190085 |
| 1 | 1 | 1_0 | COMPLETED | Sobol | -60.196510 | -6.039466 | False | 0.544447 | 0.665884 |
| 2 | 2 | 2_0 | COMPLETED | Sobol | -17.071615 | -7.848244 | False | 0.893388 | 0.348009 |
| 3 | 3 | 3_0 | COMPLETED | Sobol | -22.292170 | -8.111297 | False | 0.394978 | 0.479361 |
| 4 | 4 | 4_0 | COMPLETED | Sobol | -90.586082 | -10.508014 | False | 0.107982 | 0.224903 |
| 5 | 5 | 5_0 | COMPLETED | MOO | -78.735092 | -4.911559 | False | 0.969763 | 0.761758 |
| 6 | 6 | 6_0 | COMPLETED | MOO | -50.011749 | -5.978871 | False | 0.291261 | 0.849037 |
| 7 | 7 | 7_0 | COMPLETED | MOO | -9.294098 | -10.188202 | False | 0.989131 | 0.000000 |
| 8 | 8 | 8_0 | COMPLETED | MOO | -17.508297 | -1.180408 | True | 0.000000 | 1.000000 |
| 9 | 9 | 9_0 | COMPLETED | MOO | -31.137854 | -1.322935 | False | 0.000000 | 0.859746 |
| 10 | 10 | 10_0 | COMPLETED | MOO | -72.980576 | -1.646299 | False | 0.000000 | 0.628322 |
| 11 | 11 | 11_0 | COMPLETED | MOO | -3.903470 | -3.715556 | True | 0.069064 | 1.000000 |
| 12 | 12 | 12_0 | COMPLETED | MOO | -6.587681 | -4.791344 | True | 0.117075 | 1.000000 |
| 13 | 13 | 13_0 | COMPLETED | MOO | -8.407589 | -2.540800 | True | 0.034187 | 1.000000 |
| 14 | 14 | 14_0 | COMPLETED | MOO | -12.647774 | -1.841085 | True | 0.016250 | 1.000000 |
| 15 | 15 | 15_0 | COMPLETED | MOO | -11.842781 | -10.933602 | False | 0.647254 | 0.000000 |
| 16 | 16 | 16_0 | COMPLETED | MOO | -5.856437 | -3.077699 | True | 0.049061 | 1.000000 |
| 17 | 17 | 17_0 | COMPLETED | MOO | -10.465503 | -2.181583 | True | 0.024833 | 1.000000 |
| 18 | 18 | 18_0 | COMPLETED | MOO | -15.017079 | -1.504841 | True | 0.007941 | 1.000000 |
| 19 | 19 | 19_0 | COMPLETED | MOO | -3.590695 | -3.997228 | True | 0.079210 | 1.000000 |
| 20 | 20 | 20_0 | COMPLETED | MOO | -4.771063 | -3.374941 | True | 0.057975 | 1.000000 |
| 21 | 21 | 21_0 | COMPLETED | MOO | -16.248423 | -1.341133 | True | 0.003929 | 1.000000 |
| 22 | 22 | 22_0 | COMPLETED | MOO | -7.084922 | -2.801255 | True | 0.041240 | 1.000000 |
| 23 | 23 | 23_0 | COMPLETED | MOO | -11.542602 | -2.009242 | True | 0.020462 | 1.000000 |
| 24 | 24 | 24_0 | COMPLETED | MOO | -2.493224 | -4.248926 | True | 0.084043 | 0.960913 |
| 25 | 25 | 25_0 | COMPLETED | MOO | -9.419681 | -2.358485 | True | 0.029393 | 1.000000 |
| 26 | 26 | 26_0 | COMPLETED | MOO | -3.381144 | -3.848558 | True | 0.070724 | 0.971350 |
| 27 | 27 | 27_0 | COMPLETED | MOO | -13.818736 | -1.671128 | True | 0.012035 | 1.000000 |
| 28 | 28 | 28_0 | COMPLETED | MOO | -4.460363 | -3.510226 | True | 0.060190 | 0.976111 |
| 29 | 29 | 29_0 | COMPLETED | MOO | -1.730358 | -4.616930 | True | 0.095243 | 0.933960 |
| 30 | 30 | 30_0 | COMPLETED | MOO | -0.695982 | -5.161031 | True | 0.108139 | 0.868453 |
| 31 | 31 | 31_0 | COMPLETED | MOO | -2.192480 | -4.450382 | True | 0.091114 | 0.953233 |
| 32 | 32 | 32_0 | COMPLETED | MOO | -1.154079 | -4.829535 | True | 0.098237 | 0.896739 |
| 33 | 33 | 33_0 | COMPLETED | MOO | -211.882339 | -4.144197 | False | 0.771199 | 1.000000 |
| 34 | 34 | 34_0 | COMPLETED | MOO | -0.444836 | -5.484631 | True | 0.118123 | 0.839257 |
| 35 | 35 | 35_0 | COMPLETED | MOO | -6.457882 | -2.936942 | True | 0.045030 | 1.000000 |
| 36 | 36 | 36_0 | COMPLETED | MOO | -2.850466 | -4.046434 | True | 0.076106 | 0.957551 |
| 37 | 37 | 37_0 | COMPLETED | MOO | -5.295164 | -3.222275 | True | 0.053322 | 1.000000 |
| 38 | 38 | 38_0 | COMPLETED | MOO | -7.736582 | -2.669231 | True | 0.037631 | 1.000000 |
| 39 | 39 | 39_0 | COMPLETED | MOO | -0.719290 | -5.665103 | True | 0.117253 | 0.799496 |
| 40 | 40 | 40_0 | COMPLETED | MOO | -1.998569 | -4.398080 | True | 0.085866 | 0.931436 |
| 41 | 41 | 41_0 | COMPLETED | MOO | -0.911672 | -4.988127 | True | 0.102896 | 0.883221 |
| 42 | 42 | 42_0 | COMPLETED | MOO | -78.785782 | -6.073295 | False | 0.751665 | 0.586191 |
| 43 | 43 | 43_0 | COMPLETED | MOO | -64.345276 | -6.556971 | False | 0.740877 | 0.519846 |
| 44 | 44 | 44_0 | COMPLETED | MOO | -1.559552 | -4.606470 | True | 0.091791 | 0.915087 |
| 45 | 45 | 45_0 | COMPLETED | MOO | -15.629410 | -1.422571 | True | 0.005923 | 1.000000 |
| 46 | 46 | 46_0 | COMPLETED | MOO | -13.229971 | -1.755600 | True | 0.014125 | 1.000000 |
| 47 | 47 | 47_0 | COMPLETED | MOO | -12.091844 | -1.924661 | True | 0.018337 | 1.000000 |
| 48 | 48 | 48_0 | COMPLETED | MOO | -4.109104 | -3.593833 | True | 0.063861 | 0.987749 |
| 49 | 49 | 49_0 | COMPLETED | MOO | -16.874922 | -1.260392 | True | 0.001955 | 1.000000 |
EDA Plots with Pareto#
Because we ran a multi objective optimization, we can plot our pareto frontiers.
1boa.plot_pareto_frontier(scheduler)
The rest of our plots are the same as for a single objective optimization. Trace plots, contour plots, and slice plots.
1boa.plot_metrics_trace(scheduler)
1boa.plot_contours(scheduler)
1boa.plot_slice(scheduler)
We can also directly pass in our scheduler file path instead of having to reload it ourselves
1boa.plot_metrics_trace(scheduler_fp)