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()
[INFO 07-10 13:14:07] 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
{14: {'params': {'x0': 0.06722595104412638, 'x1': 1.0},
'means': {'branin': -4.008813794628448, 'currin': -3.661387866974217},
'cov_matrix': {'branin': {'branin': 0.00026961947888266765, 'currin': 0.0},
'currin': {'branin': 0.0, 'currin': 5.207734737516479e-06}}},
15: {'params': {'x0': 0.03180193896164709, 'x1': 1.0},
'means': {'branin': -8.899884415590682, 'currin': -2.4505460576603784},
'cov_matrix': {'branin': {'branin': 7.153857098052441e-05, 'currin': 0.0},
'currin': {'branin': 0.0, 'currin': 1.109756616320468e-06}}},
16: {'params': {'x0': 0.11623283268391146, 'x1': 0.8282747946292564},
'means': {'branin': -0.4783224142995621, 'currin': -5.503003487046663},
'cov_matrix': {'branin': {'branin': 0.0002766559403868488, 'currin': 0.0},
'currin': {'branin': 0.0, 'currin': 5.402333652885504e-06}}},
17: {'params': {'x0': 0.015048417956364869, 'x1': 1.0},
'means': {'branin': -12.974571261800854, 'currin': -1.7929020223943914},
'cov_matrix': {'branin': {'branin': 9.15016516661886e-05, 'currin': 0.0},
'currin': {'branin': 0.0, 'currin': 1.4827281523925727e-06}}},
18: {'params': {'x0': 0.09103888011045247, 'x1': 0.9205178128625962},
'means': {'branin': -1.6400256383939364, 'currin': -4.567897371782157},
'cov_matrix': {'branin': {'branin': 0.00019990303934425875, 'currin': 0.0},
'currin': {'branin': 0.0, 'currin': 2.44586092439294e-06}}},
19: {'params': {'x0': 0.047142348285469204, 'x1': 1.0},
'means': {'branin': -6.134113780443643, 'currin': -3.0111854188929237},
'cov_matrix': {'branin': {'branin': 7.021550234069503e-05, 'currin': 0.0},
'currin': {'branin': 0.0, 'currin': 1.070264460145957e-06}}},
20: {'params': {'x0': 0.023106465771415844, 'x1': 1.0},
'means': {'branin': -10.882027122942315, 'currin': -2.113750140730393},
'cov_matrix': {'branin': {'branin': 8.794222842843026e-05, 'currin': 0.0},
'currin': {'branin': 0.0, 'currin': 1.2436488291367215e-06}}},
21: {'params': {'x0': 0.07751938884859294, 'x1': 0.9555795698999422},
'means': {'branin': -2.7345059089879165, 'currin': -4.092356913512811},
'cov_matrix': {'branin': {'branin': 0.0001420368472132874, 'currin': 0.0},
'currin': {'branin': 0.0, 'currin': 1.6803741903020638e-06}}},
22: {'params': {'x0': 0.007355481512615939, 'x1': 1.0},
'means': {'branin': -15.194799134606619, 'currin': -1.481222200274546},
'cov_matrix': {'branin': {'branin': 0.00010387572493482764, 'currin': 0.0},
'currin': {'branin': 0.0, 'currin': 1.5192996731335434e-06}}},
23: {'params': {'x0': 0.03908359193452967, 'x1': 1.0},
'means': {'branin': -7.467956392217744, 'currin': -2.7226915188837775},
'cov_matrix': {'branin': {'branin': 7.949184634582838e-05, 'currin': 0.0},
'currin': {'branin': 0.0, 'currin': 1.1103827007582894e-06}}},
24: {'params': {'x0': 0.056162120588825436, 'x1': 1.0},
'means': {'branin': -4.964043836698938, 'currin': -3.316056498837279},
'cov_matrix': {'branin': {'branin': 9.616257008160628e-05, 'currin': 0.0},
'currin': {'branin': 0.0, 'currin': 1.3049769196583604e-06}}},
25: {'params': {'x0': 0.10471571056236206, 'x1': 0.886549012428079},
'means': {'branin': -0.8958620958998953, 'currin': -5.01298323536945},
'cov_matrix': {'branin': {'branin': 0.0002594495228334465, 'currin': 0.0},
'currin': {'branin': 0.0, 'currin': 4.271963175808508e-06}}},
29: {'params': {'x0': 0.07091388609793212, 'x1': 0.9697664369522259},
'means': {'branin': -3.3520688221727184, 'currin': -3.8589878616716238},
'cov_matrix': {'branin': {'branin': 0.00010702221707033513, 'currin': 0.0},
'currin': {'branin': 0.0, 'currin': 1.6663139873422187e-06}}},
30: {'params': {'x0': 0.08370617296891533, 'x1': 0.9365945604264692},
'means': {'branin': -2.1679160997818165, 'currin': -4.323582967127799},
'cov_matrix': {'branin': {'branin': 0.0001122890101476591, 'currin': 0.0},
'currin': {'branin': 0.0, 'currin': 1.6175561436118911e-06}}},
31: {'params': {'x0': 0.027357843825467926, 'x1': 1.0},
'means': {'branin': -9.87656169120849, 'currin': -2.2798412417489686},
'cov_matrix': {'branin': {'branin': 7.467004346551617e-05, 'currin': 0.0},
'currin': {'branin': 0.0, 'currin': 1.1476709427738756e-06}}},
32: {'params': {'x0': 0.011151095456090072, 'x1': 1.0},
'means': {'branin': -14.0727853711678, 'currin': -1.6355234955973494},
'cov_matrix': {'branin': {'branin': 9.539561756226283e-05, 'currin': 0.0},
'currin': {'branin': 0.0, 'currin': 1.549531841025951e-06}}},
33: {'params': {'x0': 0.05145632374008478, 'x1': 1.0},
'means': {'branin': -5.5312835464596795, 'currin': -3.1594992568806837},
'cov_matrix': {'branin': {'branin': 7.24282182256757e-05, 'currin': 0.0},
'currin': {'branin': 0.0, 'currin': 1.1281248740957874e-06}}},
34: {'params': {'x0': 0.06107277738350422, 'x1': 0.9956949185623516},
'means': {'branin': -4.434381831842595, 'currin': -3.4849939092749254},
'cov_matrix': {'branin': {'branin': 9.149597453744773e-05, 'currin': 0.0},
'currin': {'branin': 0.0, 'currin': 1.2188334448569422e-06}}},
35: {'params': {'x0': 0.09648215343546504, 'x1': 0.8985448669959295},
'means': {'branin': -1.236898110732044, 'currin': -4.782023989492875},
'cov_matrix': {'branin': {'branin': 0.0002566247782236055, 'currin': 0.0},
'currin': {'branin': 0.0, 'currin': 3.5947771501164473e-06}}},
36: {'params': {'x0': 0.10958535915301539, 'x1': 0.8588446971129297},
'means': {'branin': -0.6236679488767614, 'currin': -5.232185110099541},
'cov_matrix': {'branin': {'branin': 0.0002682506054205734, 'currin': 0.0},
'currin': {'branin': 0.0, 'currin': 4.377727316819803e-06}}},
37: {'params': {'x0': 0.04299190549604983, 'x1': 1.0},
'means': {'branin': -6.7876467608070765, 'currin': -2.864388085191634},
'cov_matrix': {'branin': {'branin': 7.199432266672974e-05, 'currin': 0.0},
'currin': {'branin': 0.0, 'currin': 1.0810828404502534e-06}}},
38: {'params': {'x0': 0.06779941107944121, 'x1': 0.9774980693027313},
'means': {'branin': -3.6762568054266147, 'currin': -3.74336935529284},
'cov_matrix': {'branin': {'branin': 0.00012427656827485023, 'currin': 0.0},
'currin': {'branin': 0.0, 'currin': 1.8205683179225473e-06}}},
39: {'params': {'x0': 0.01900925253683429, 'x1': 1.0},
'means': {'branin': -11.915728902317792, 'currin': -1.9514814368607007},
'cov_matrix': {'branin': {'branin': 9.261443537808275e-05, 'currin': 0.0},
'currin': {'branin': 0.0, 'currin': 1.362083324709956e-06}}},
40: {'params': {'x0': 0.12174627149495364, 'x1': 0.8314499206704036},
'means': {'branin': -0.41771324753313976, 'currin': -5.585668331519944},
'cov_matrix': {'branin': {'branin': 0.00027980676471676117, 'currin': 0.0},
'currin': {'branin': 0.0, 'currin': 5.76043941065037e-06}}},
41: {'params': {'x0': 0.0036408837664809826, 'x1': 1.0},
'means': {'branin': -16.34069629316031, 'currin': -1.3294290439408587},
'cov_matrix': {'branin': {'branin': 0.00010239589350866794, 'currin': 0.0},
'currin': {'branin': 0.0, 'currin': 1.8200350653497145e-06}}},
42: {'params': {'x0': 0.0353615561485768, 'x1': 1.0},
'means': {'branin': -8.173445796156095, 'currin': -2.584837541426608},
'cov_matrix': {'branin': {'branin': 7.857331461501071e-05, 'currin': 0.0},
'currin': {'branin': 0.0, 'currin': 1.1153382721777385e-06}}},
43: {'params': {'x0': 0.07398984357302966, 'x1': 0.9612420668949202},
'means': {'branin': -3.038576041936979, 'currin': -3.974569340989012},
'cov_matrix': {'branin': {'branin': 0.00011194467069654376, 'currin': 0.0},
'currin': {'branin': 0.0, 'currin': 1.5842567803704265e-06}}},
44: {'params': {'x0': 0.08035235521777204, 'x1': 0.9446983365729427},
'means': {'branin': -2.447317770162181, 'currin': -4.206082527282536},
'cov_matrix': {'branin': {'branin': 0.00011946137171401089, 'currin': 0.0},
'currin': {'branin': 0.0, 'currin': 1.5983600036544294e-06}}},
45: {'params': {'x0': 0.029553275886536726, 'x1': 1.0},
'means': {'branin': -9.384480308767584, 'currin': -2.364570769380621},
'cov_matrix': {'branin': {'branin': 7.050762454624161e-05, 'currin': 0.0},
'currin': {'branin': 0.0, 'currin': 1.119735565474482e-06}}},
46: {'params': {'x0': 0.05375151648258906, 'x1': 1.0},
'means': {'branin': -5.242748873353875, 'currin': -3.236554981153109},
'cov_matrix': {'branin': {'branin': 7.801806825734007e-05, 'currin': 0.0},
'currin': {'branin': 0.0, 'currin': 1.195551209775119e-06}}},
47: {'params': {'x0': 0.0870427884724268, 'x1': 0.9270846572813902},
'means': {'branin': -1.8973540568263587, 'currin': -4.443807612572621},
'cov_matrix': {'branin': {'branin': 0.0001273161095498475, 'currin': 0.0},
'currin': {'branin': 0.0, 'currin': 1.8251808576896564e-06}}},
48: {'params': {'x0': 0.0633160748743348, 'x1': 0.9892348693501222},
'means': {'branin': -4.17198867955314, 'currin': -3.5728608047662105},
'cov_matrix': {'branin': {'branin': 0.00012541628693456592, 'currin': 0.0},
'currin': {'branin': 0.0, 'currin': 1.4732376917211808e-06}}},
49: {'params': {'x0': 0.04503165869846433, 'x1': 1.0},
'means': {'branin': -6.4575247119310895, 'currin': -2.937020736804852},
'cov_matrix': {'branin': {'branin': 6.977361548964034e-05, 'currin': 0.0},
'currin': {'branin': 0.0, 'currin': 1.0694046943436186e-06}}},
8: {'params': {'x0': 0.0, 'x1': 1.0},
'means': {'branin': -17.506304079417717, 'currin': -1.180050578290825},
'cov_matrix': {'branin': {'branin': 0.00023219490141979877, 'currin': 0.0},
'currin': {'branin': 0.0, 'currin': 4.246944038315128e-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
{14: {'params': {'x0': 0.06722595104412638, 'x1': 1.0},
'means': {'branin': -4.0096569061, 'currin': -3.661427021},
'cov_matrix': {'branin': {'branin': 0.0, 'currin': 0.0},
'currin': {'branin': 0.0, 'currin': 0.0}}},
15: {'params': {'x0': 0.03180193896164709, 'x1': 1.0},
'means': {'branin': -8.8998212814, 'currin': -2.4505946636},
'cov_matrix': {'branin': {'branin': 0.0, 'currin': 0.0},
'currin': {'branin': 0.0, 'currin': 0.0}}},
16: {'params': {'x0': 0.11623283268391146, 'x1': 0.8282747946292564},
'means': {'branin': -0.4777936935, 'currin': -5.5031733513},
'cov_matrix': {'branin': {'branin': 0.0, 'currin': 0.0},
'currin': {'branin': 0.0, 'currin': 0.0}}},
17: {'params': {'x0': 0.015048417956364869, 'x1': 1.0},
'means': {'branin': -12.9749555588, 'currin': -1.7927970886},
'cov_matrix': {'branin': {'branin': 0.0, 'currin': 0.0},
'currin': {'branin': 0.0, 'currin': 0.0}}},
18: {'params': {'x0': 0.09103888011045247, 'x1': 0.9205178128625962},
'means': {'branin': -1.6410369873, 'currin': -4.5677266121},
'cov_matrix': {'branin': {'branin': 0.0, 'currin': 0.0},
'currin': {'branin': 0.0, 'currin': 0.0}}},
19: {'params': {'x0': 0.047142348285469204, 'x1': 1.0},
'means': {'branin': -6.1341824532, 'currin': -3.0111839771},
'cov_matrix': {'branin': {'branin': 0.0, 'currin': 0.0},
'currin': {'branin': 0.0, 'currin': 0.0}}},
20: {'params': {'x0': 0.023106465771415844, 'x1': 1.0},
'means': {'branin': -10.8823547363, 'currin': -2.1138005257},
'cov_matrix': {'branin': {'branin': 0.0, 'currin': 0.0},
'currin': {'branin': 0.0, 'currin': 0.0}}},
21: {'params': {'x0': 0.07751938884859294, 'x1': 0.9555795698999422},
'means': {'branin': -2.7341222763, 'currin': -4.092294693},
'cov_matrix': {'branin': {'branin': 0.0, 'currin': 0.0},
'currin': {'branin': 0.0, 'currin': 0.0}}},
22: {'params': {'x0': 0.007355481512615939, 'x1': 1.0},
'means': {'branin': -15.1932506561, 'currin': -1.4809924364},
'cov_matrix': {'branin': {'branin': 0.0, 'currin': 0.0},
'currin': {'branin': 0.0, 'currin': 0.0}}},
23: {'params': {'x0': 0.03908359193452967, 'x1': 1.0},
'means': {'branin': -7.4678997993, 'currin': -2.7226967812},
'cov_matrix': {'branin': {'branin': 0.0, 'currin': 0.0},
'currin': {'branin': 0.0, 'currin': 0.0}}},
24: {'params': {'x0': 0.056162120588825436, 'x1': 1.0},
'means': {'branin': -4.9641985893000005, 'currin': -3.3161087036},
'cov_matrix': {'branin': {'branin': 0.0, 'currin': 0.0},
'currin': {'branin': 0.0, 'currin': 0.0}}},
25: {'params': {'x0': 0.10471571056236206, 'x1': 0.886549012428079},
'means': {'branin': -0.8956365585, 'currin': -5.0127587318},
'cov_matrix': {'branin': {'branin': 0.0, 'currin': 0.0},
'currin': {'branin': 0.0, 'currin': 0.0}}},
29: {'params': {'x0': 0.07091388609793212, 'x1': 0.9697664369522259},
'means': {'branin': -3.3521566391, 'currin': -3.8589537144},
'cov_matrix': {'branin': {'branin': 0.0, 'currin': 0.0},
'currin': {'branin': 0.0, 'currin': 0.0}}},
30: {'params': {'x0': 0.08370617296891533, 'x1': 0.9365945604264692},
'means': {'branin': -2.167757988, 'currin': -4.3236260414},
'cov_matrix': {'branin': {'branin': 0.0, 'currin': 0.0},
'currin': {'branin': 0.0, 'currin': 0.0}}},
31: {'params': {'x0': 0.027357843825467926, 'x1': 1.0},
'means': {'branin': -9.8766317368, 'currin': -2.2799072266000002},
'cov_matrix': {'branin': {'branin': 0.0, 'currin': 0.0},
'currin': {'branin': 0.0, 'currin': 0.0}}},
32: {'params': {'x0': 0.011151095456090072, 'x1': 1.0},
'means': {'branin': -14.0723619461, 'currin': -1.6353210211},
'cov_matrix': {'branin': {'branin': 0.0, 'currin': 0.0},
'currin': {'branin': 0.0, 'currin': 0.0}}},
33: {'params': {'x0': 0.05145632374008478, 'x1': 1.0},
'means': {'branin': -5.5314288139, 'currin': -3.1595189571},
'cov_matrix': {'branin': {'branin': 0.0, 'currin': 0.0},
'currin': {'branin': 0.0, 'currin': 0.0}}},
34: {'params': {'x0': 0.06107277738350422, 'x1': 0.9956949185623516},
'means': {'branin': -4.4337778091, 'currin': -3.4849951267},
'cov_matrix': {'branin': {'branin': 0.0, 'currin': 0.0},
'currin': {'branin': 0.0, 'currin': 0.0}}},
35: {'params': {'x0': 0.09648215343546504, 'x1': 0.8985448669959295},
'means': {'branin': -1.2355241776, 'currin': -4.7820410728},
'cov_matrix': {'branin': {'branin': 0.0, 'currin': 0.0},
'currin': {'branin': 0.0, 'currin': 0.0}}},
36: {'params': {'x0': 0.10958535915301539, 'x1': 0.8588446971129297},
'means': {'branin': -0.6255817413, 'currin': -5.2327837944},
'cov_matrix': {'branin': {'branin': 0.0, 'currin': 0.0},
'currin': {'branin': 0.0, 'currin': 0.0}}},
37: {'params': {'x0': 0.04299190549604983, 'x1': 1.0},
'means': {'branin': -6.78764534, 'currin': -2.864382267},
'cov_matrix': {'branin': {'branin': 0.0, 'currin': 0.0},
'currin': {'branin': 0.0, 'currin': 0.0}}},
38: {'params': {'x0': 0.06779941107944121, 'x1': 0.9774980693027313},
'means': {'branin': -3.6760921478, 'currin': -3.7433075905},
'cov_matrix': {'branin': {'branin': 0.0, 'currin': 0.0},
'currin': {'branin': 0.0, 'currin': 0.0}}},
39: {'params': {'x0': 0.01900925253683429, 'x1': 1.0},
'means': {'branin': -11.9162807465, 'currin': -1.9514724016},
'cov_matrix': {'branin': {'branin': 0.0, 'currin': 0.0},
'currin': {'branin': 0.0, 'currin': 0.0}}},
40: {'params': {'x0': 0.12174627149495364, 'x1': 0.8314499206704036},
'means': {'branin': -0.4170780182, 'currin': -5.5851817131},
'cov_matrix': {'branin': {'branin': 0.0, 'currin': 0.0},
'currin': {'branin': 0.0, 'currin': 0.0}}},
41: {'params': {'x0': 0.0036408837664809826, 'x1': 1.0},
'means': {'branin': -16.3390979767, 'currin': -1.3293443918},
'cov_matrix': {'branin': {'branin': 0.0, 'currin': 0.0},
'currin': {'branin': 0.0, 'currin': 0.0}}},
42: {'params': {'x0': 0.0353615561485768, 'x1': 1.0},
'means': {'branin': -8.1733665466, 'currin': -2.5848639011},
'cov_matrix': {'branin': {'branin': 0.0, 'currin': 0.0},
'currin': {'branin': 0.0, 'currin': 0.0}}},
43: {'params': {'x0': 0.07398984357302966, 'x1': 0.9612420668949202},
'means': {'branin': -3.0389556885, 'currin': -3.9745893478},
'cov_matrix': {'branin': {'branin': 0.0, 'currin': 0.0},
'currin': {'branin': 0.0, 'currin': 0.0}}},
44: {'params': {'x0': 0.08035235521777204, 'x1': 0.9446983365729427},
'means': {'branin': -2.4474034309, 'currin': -4.2061553001},
'cov_matrix': {'branin': {'branin': 0.0, 'currin': 0.0},
'currin': {'branin': 0.0, 'currin': 0.0}}},
45: {'params': {'x0': 0.029553275886536726, 'x1': 1.0},
'means': {'branin': -9.3844604492, 'currin': -2.3646306992},
'cov_matrix': {'branin': {'branin': 0.0, 'currin': 0.0},
'currin': {'branin': 0.0, 'currin': 0.0}}},
46: {'params': {'x0': 0.05375151648258906, 'x1': 1.0},
'means': {'branin': -5.2429170609, 'currin': -3.236590147},
'cov_matrix': {'branin': {'branin': 0.0, 'currin': 0.0},
'currin': {'branin': 0.0, 'currin': 0.0}}},
47: {'params': {'x0': 0.0870427884724268, 'x1': 0.9270846572813902},
'means': {'branin': -1.8972387314, 'currin': -4.443857193},
'cov_matrix': {'branin': {'branin': 0.0, 'currin': 0.0},
'currin': {'branin': 0.0, 'currin': 0.0}}},
48: {'params': {'x0': 0.0633160748743348, 'x1': 0.9892348693501222},
'means': {'branin': -4.1712288857, 'currin': -3.5728039742},
'cov_matrix': {'branin': {'branin': 0.0, 'currin': 0.0},
'currin': {'branin': 0.0, 'currin': 0.0}}},
49: {'params': {'x0': 0.04503165869846433, 'x1': 1.0},
'means': {'branin': -6.4575519562, 'currin': -2.9370145798},
'cov_matrix': {'branin': {'branin': 0.0, 'currin': 0.0},
'currin': {'branin': 0.0, 'currin': 0.0}}},
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}}}}
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 | -104.829926 | -13.321523 | False | 0.157186 | 0.063027 |
| 1 | 1 | 1_0 | COMPLETED | Sobol | -67.450264 | -6.262702 | False | 0.795510 | 0.548820 |
| 2 | 2 | 2_0 | COMPLETED | Sobol | -44.699284 | -11.003670 | False | 0.162904 | 0.291876 |
| 3 | 3 | 3_0 | COMPLETED | Sobol | -10.633623 | -8.563358 | False | 0.895887 | 0.280258 |
| 4 | 4 | 4_0 | COMPLETED | Sobol | -2.309752 | -10.189129 | False | 0.511377 | 0.240122 |
| 5 | 5 | 5_0 | COMPLETED | MOO | -191.902283 | -4.252816 | False | 0.797650 | 0.959299 |
| 6 | 6 | 6_0 | COMPLETED | MOO | -31.095140 | -5.988050 | False | 0.234506 | 0.876196 |
| 7 | 7 | 7_0 | COMPLETED | MOO | -121.471985 | -4.946413 | False | 0.389611 | 1.000000 |
| 8 | 8 | 8_0 | COMPLETED | MOO | -17.508297 | -1.180408 | True | 0.000000 | 1.000000 |
| 9 | 9 | 9_0 | COMPLETED | MOO | -52.435886 | -6.313510 | False | 0.398786 | 0.710204 |
| 10 | 10 | 10_0 | COMPLETED | MOO | -68.184647 | -5.815774 | False | 0.482007 | 0.739821 |
| 11 | 11 | 11_0 | COMPLETED | MOO | -27.527704 | -1.290188 | False | 0.000000 | 0.889318 |
| 12 | 12 | 12_0 | COMPLETED | MOO | -21.664143 | -1.231126 | False | 0.000000 | 0.946487 |
| 13 | 13 | 13_0 | COMPLETED | MOO | -36.937912 | -1.372257 | False | 0.000000 | 0.817771 |
| 14 | 14 | 14_0 | COMPLETED | MOO | -4.009657 | -3.661427 | True | 0.067226 | 1.000000 |
| 15 | 15 | 15_0 | COMPLETED | MOO | -8.899821 | -2.450595 | True | 0.031802 | 1.000000 |
| 16 | 16 | 16_0 | COMPLETED | MOO | -0.477794 | -5.503173 | True | 0.116233 | 0.828275 |
| 17 | 17 | 17_0 | COMPLETED | MOO | -12.974956 | -1.792797 | True | 0.015048 | 1.000000 |
| 18 | 18 | 18_0 | COMPLETED | MOO | -1.641037 | -4.567727 | True | 0.091039 | 0.920518 |
| 19 | 19 | 19_0 | COMPLETED | MOO | -6.134182 | -3.011184 | True | 0.047142 | 1.000000 |
| 20 | 20 | 20_0 | COMPLETED | MOO | -10.882355 | -2.113801 | True | 0.023106 | 1.000000 |
| 21 | 21 | 21_0 | COMPLETED | MOO | -2.734122 | -4.092295 | True | 0.077519 | 0.955580 |
| 22 | 22 | 22_0 | COMPLETED | MOO | -15.193251 | -1.480992 | True | 0.007355 | 1.000000 |
| 23 | 23 | 23_0 | COMPLETED | MOO | -7.467900 | -2.722697 | True | 0.039084 | 1.000000 |
| 24 | 24 | 24_0 | COMPLETED | MOO | -4.964199 | -3.316109 | True | 0.056162 | 1.000000 |
| 25 | 25 | 25_0 | COMPLETED | MOO | -0.895637 | -5.012759 | True | 0.104716 | 0.886549 |
| 26 | 26 | 26_0 | COMPLETED | MOO | -34.853767 | -5.863936 | False | 1.000000 | 0.582649 |
| 27 | 27 | 27_0 | COMPLETED | MOO | -145.872208 | -4.005316 | False | 1.000000 | 1.000000 |
| 28 | 28 | 28_0 | COMPLETED | MOO | -10.960894 | -10.179487 | False | 1.000000 | 0.000000 |
| 29 | 29 | 29_0 | COMPLETED | MOO | -3.352157 | -3.858954 | True | 0.070914 | 0.969766 |
| 30 | 30 | 30_0 | COMPLETED | MOO | -2.167758 | -4.323626 | True | 0.083706 | 0.936595 |
| 31 | 31 | 31_0 | COMPLETED | MOO | -9.876632 | -2.279907 | True | 0.027358 | 1.000000 |
| 32 | 32 | 32_0 | COMPLETED | MOO | -14.072362 | -1.635321 | True | 0.011151 | 1.000000 |
| 33 | 33 | 33_0 | COMPLETED | MOO | -5.531429 | -3.159519 | True | 0.051456 | 1.000000 |
| 34 | 34 | 34_0 | COMPLETED | MOO | -4.433778 | -3.484995 | True | 0.061073 | 0.995695 |
| 35 | 35 | 35_0 | COMPLETED | MOO | -1.235524 | -4.782041 | True | 0.096482 | 0.898545 |
| 36 | 36 | 36_0 | COMPLETED | MOO | -0.625582 | -5.232784 | True | 0.109585 | 0.858845 |
| 37 | 37 | 37_0 | COMPLETED | MOO | -6.787645 | -2.864382 | True | 0.042992 | 1.000000 |
| 38 | 38 | 38_0 | COMPLETED | MOO | -3.676092 | -3.743308 | True | 0.067799 | 0.977498 |
| 39 | 39 | 39_0 | COMPLETED | MOO | -11.916281 | -1.951472 | True | 0.019009 | 1.000000 |
| 40 | 40 | 40_0 | COMPLETED | MOO | -0.417078 | -5.585182 | True | 0.121746 | 0.831450 |
| 41 | 41 | 41_0 | COMPLETED | MOO | -16.339098 | -1.329344 | True | 0.003641 | 1.000000 |
| 42 | 42 | 42_0 | COMPLETED | MOO | -8.173367 | -2.584864 | True | 0.035362 | 1.000000 |
| 43 | 43 | 43_0 | COMPLETED | MOO | -3.038956 | -3.974589 | True | 0.073990 | 0.961242 |
| 44 | 44 | 44_0 | COMPLETED | MOO | -2.447403 | -4.206155 | True | 0.080352 | 0.944698 |
| 45 | 45 | 45_0 | COMPLETED | MOO | -9.384460 | -2.364631 | True | 0.029553 | 1.000000 |
| 46 | 46 | 46_0 | COMPLETED | MOO | -5.242917 | -3.236590 | True | 0.053752 | 1.000000 |
| 47 | 47 | 47_0 | COMPLETED | MOO | -1.897239 | -4.443857 | True | 0.087043 | 0.927085 |
| 48 | 48 | 48_0 | COMPLETED | MOO | -4.171229 | -3.572804 | True | 0.063316 | 0.989235 |
| 49 | 49 | 49_0 | COMPLETED | MOO | -6.457552 | -2.937015 | True | 0.045032 | 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)