From 466b194b11035812a74e0b2db645f4bae84de8b8 Mon Sep 17 00:00:00 2001 From: Miles Olson Date: Thu, 20 Feb 2025 13:10:35 -0800 Subject: [PATCH] Closed loop (scheduler) tutorial (#3391) Summary: Pull Request resolved: https://github.com/facebook/Ax/pull/3391 Tutorial demonstrating custom metrics, runner, and run_n_trials (scheduler) Differential Revision: D69810152 --- docs/assets/scheduler_state_machine.png | Bin 0 -> 189167 bytes tutorials/closed_loop/closed_loop.ipynb | 624 ++++++++++++++++++++++++ website/tutorials.json | 4 + 3 files changed, 628 insertions(+) create mode 100644 docs/assets/scheduler_state_machine.png create mode 100644 tutorials/closed_loop/closed_loop.ipynb diff --git a/docs/assets/scheduler_state_machine.png b/docs/assets/scheduler_state_machine.png new file mode 100644 index 0000000000000000000000000000000000000000..65e5a004a1b67990ab10d40e96dda76c33f4c45e GIT binary patch literal 189167 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
U|tTLqee8veK5QUFJ&b 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 dict[str, Any]:\n", + " file_name = f\"{int(time.time())}.txt\"\n", + "\n", + " x1 = parameterization[\"x1\"]\n", + " x2 = parameterization[\"x2\"]\n", + " x3 = parameterization[\"x3\"]\n", + " x4 = parameterization[\"x4\"]\n", + " x5 = parameterization[\"x5\"]\n", + " x6 = parameterization[\"x6\"]\n", + "\n", + " result = hartmann6(x1, x2, x3, x4, x5, x6)\n", + "\n", + " with open(file_name, \"w\") as f:\n", + " f.write(f\"{result}\")\n", + "\n", + " return {\"file_name\": file_name}\n", + "\n", + " def poll_trial(\n", + " self, trial_index: int, trial_metadata: Mapping[str, Any]\n", + " ) -> TrialStatus:\n", + " file_name = trial_metadata[\"file_name\"]\n", + " time_elapsed = time.time() - int(file_name[:4])\n", + "\n", + " if time_elapsed < 5:\n", + " return TrialStatus.RUNNING\n", + "\n", + " return TrialStatus.COMPLETED" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "customInput": null, + "isAgentGenerated": false, + "language": "markdown", + "originalKey": "a5b82b27-7c97-4ae7-8495-1b1cd43fe3fb", + "outputsInitialized": false, + "showInput": false + }, + "source": [ + "It's worthwhile to instantiate your Runner and test it is behaving as expected.\n", + "Let's deploy a mock trial by manually calling `run_trial` and ensuring it creates a file." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": { + "collapsed": false, + "customInput": null, + "executionStartTime": 1739574716511, + "executionStopTime": 1739574716704, + "isAgentGenerated": false, + "language": "python", + "originalKey": "42a853a2-ea90-48a8-b6c8-e852e76d7669", + "outputsInitialized": true, + "requestMsgId": "42a853a2-ea90-48a8-b6c8-e852e76d7669", + "serverExecutionDuration": 3.4155221655965, + "showInput": true + }, + "outputs": [], + "source": [ + "runner = MockRunner()\n", + "\n", + "trial_metadata = runner.run_trial(\n", + " trial_index=-1,\n", + " parameterization={\n", + " \"x1\": 0.1,\n", + " \"x2\": 0.45,\n", + " \"x3\": 0.8,\n", + " \"x4\": 0.25,\n", + " \"x5\": 0.552,\n", + " \"x6\": 1.0,\n", + " },\n", + ")\n", + "\n", + "os.path.exists(trial_metadata[\"file_name\"])" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "customInput": null, + "isAgentGenerated": false, + "language": "markdown", + "originalKey": "c480152b-d5f0-4649-9243-cba145f19ab1", + "outputsInitialized": false, + "showInput": false + }, + "source": [ + "Now, we will implement the Metric.\n", + "Metrics only need to implement a `fetch` method, which returns a progression value (i.e. a step in a timeseries) and an observation value.\n", + "Note that the observation can either be a simple float or a (mean, SEM) pair if the external system can report observed noise.\n", + "\n", + "In this case we have neither a relevant progression value nor observed noise so we will simply read the file and report `(0, value)`." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": { + "collapsed": false, + "customInput": null, + "executionStartTime": 1739574716706, + "executionStopTime": 1739574716923, + "isAgentGenerated": false, + "language": "python", + "originalKey": "17091378-c5c5-446c-bd1c-8f13622cd0dd", + "outputsInitialized": false, + "requestMsgId": "17091378-c5c5-446c-bd1c-8f13622cd0dd", + "serverExecutionDuration": 1.5956750139594, + "showInput": true + }, + "outputs": [], + "source": [ + "class MockMetric(IMetric):\n", + " def fetch(\n", + " self,\n", + " trial_index: int,\n", + " trial_metadata: Mapping[str, Any],\n", + " ) -> tuple[int, float | tuple[float, float]]:\n", + " file_name = trial_metadata[\"file_name\"]\n", + "\n", + " with open(file_name, 'r') as file:\n", + " value = float(file.readline())\n", + " return (0, value)" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "customInput": null, + "isAgentGenerated": false, + "language": "markdown", + "originalKey": "200a6713-bbc3-49bd-b277-2f68ebe2c083", + "outputsInitialized": false, + "showInput": false + }, + "source": [ + "Again, lets make sure the metric wroks by instantiating it and checking using the file generated when we tested the Runner." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": { + "collapsed": false, + "customInput": null, + "executionStartTime": 1739574716926, + "executionStopTime": 1739574717552, + "isAgentGenerated": false, + "language": "python", + "originalKey": "2d695a30-82cb-4a79-b3d0-a7ea44570617", + "outputsInitialized": true, + "requestMsgId": "2d695a30-82cb-4a79-b3d0-a7ea44570617", + "serverExecutionDuration": 4.006918054074, + "showInput": true + }, + "outputs": [], + "source": [ + "# Note: all Metrics must have a name. This will become relevant when attaching metrics to the Client\n", + "hartmann6_metric = MockMetric(name=\"hartmann6\")\n", + "\n", + "hartmann6_metric.fetch(trial_index=-1, trial_metadata=trial_metadata)" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "customInput": null, + "isAgentGenerated": false, + "language": "markdown", + "originalKey": "8842c8d2-e531-42c4-8269-7cf15801214b", + "outputsInitialized": false, + "showInput": false + }, + "source": [ + "## Step 3: Initialize the Client and Configure the Experiment\n", + "\n", + "Finally, we can initialize the `Client` and configure the experiment as before.\n", + "This will be familiar to readers of the [Ask-tell optimization with Ax tutorial](#) -- the only difference is we will attach the previously defined Runner and Metric by calling `configure_runner` and `configure_metrics` respectively.\n", + "\n", + "Note that when initializing `hartmann6_metric` we set `name=hartmann6`, matching the objective we now set in `configure_optimization`. The `configure_metrics` method uses this name to ensure that data fetched by this Metric is used correctly during the experiment.\n", + "Be careful to make sure if you intend to use a Metric as an objective or outcome constraint its name is set appropriately." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": { + "collapsed": false, + "customInput": null, + "executionStartTime": 1739574717554, + "executionStopTime": 1739574717808, + "isAgentGenerated": false, + "language": "python", + "originalKey": "0519a6b6-2197-48bb-b3d5-8156200082a8", + "outputsInitialized": false, + "requestMsgId": "0519a6b6-2197-48bb-b3d5-8156200082a8", + "serverExecutionDuration": 2.8515672311187, + "showInput": true + }, + "outputs": [], + "source": [ + "client = Client()\n", + "# Define six float parameters for the Hartmann6 function\n", + "parameters = [\n", + " RangeParameterConfig(\n", + " name=f\"x{i + 1}\", parameter_type=ParameterType.FLOAT, bounds=(0, 1)\n", + " )\n", + " for i in range(6)\n", + "]\n", + "\n", + "# Create an experiment configuration\n", + "experiment_config = ExperimentConfig(\n", + " name=\"hartmann6_experiment\",\n", + " parameters=parameters,\n", + " # The following arguments are optional\n", + " description=\"Optimization of the Hartmann6 function\",\n", + " owner=\"developer\",\n", + ")\n", + "\n", + "# Apply the experiment configuration to the client\n", + "client.configure_experiment(experiment_config=experiment_config)\n", + "client.configure_optimization(objective=\"-hartmann6\")" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": { + "collapsed": false, + "customInput": null, + "executionStartTime": 1739574717810, + "executionStopTime": 1739574718376, + "isAgentGenerated": false, + "language": "python", + "originalKey": "e0b2b4b1-53e2-4200-b351-5cf08165ddb9", + "outputsInitialized": false, + "requestMsgId": "e0b2b4b1-53e2-4200-b351-5cf08165ddb9", + "serverExecutionDuration": 1.3919230550528, + "showInput": true + }, + "outputs": [], + "source": [ + "client.configure_runner(runner=runner)\n", + "client.configure_metrics(metrics=[hartmann6_metric])" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "customInput": null, + "isAgentGenerated": false, + "language": "markdown", + "originalKey": "5203befa-80ac-4bc6-856f-1739eebebead", + "outputsInitialized": false, + "showInput": false + }, + "source": [ + "## Step 5: Run trials\n", + "Now the the `Client` has been configured we can begin running trials.\n", + "\n", + "Internally, Ax uses a class called the `Scheduler` orchestrate the trial deployment, polling, data fetching, and candidate generation.\n", + "\n", + "![Scheduler state machine](../../docs/assets/scheduler_state_machine.png)\n", + "\n", + "The `OrchestrationConfig` provides users with control over various orchestration settings:\n", + "* `parallelism` controls how many trials may be run at once. Your external system may be able to support multiple evaluations in parallel; increasing this number can greately decrease the time it takes to conduct your experiment. However, it is important to note that **as parallelism increases, optimiztion performance often decreases.** This is because adaptive experimentation methods rely on previously observed data for candidate generation -- the more trials that have been observed by the time a new candidate needs to be generated the better Ax's model for candidate generation will be.\n", + "* `tolerated_trial_failure_rate` controls what proportion of trials are allowed to fail before Ax raises an Exception. Depending on how expensive a single trial is to evaluate or how unreliable trials are expected to be, the experimenter may want to be notified as soon as a single trial fails or they may not care until more than half the trials are failing. Set this value as is appropriate for your context.\n", + "* `initial_seconds_between_polls` controls how often we poll the status of a trial and how often we attempt to fetch results. Set this to be low for trials that are expected to complete quickly or high for trials the are expected to take a long time.\n" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": { + "collapsed": false, + "customInput": null, + "executionStartTime": 1739574718380, + "executionStopTime": 1739574718664, + "isAgentGenerated": false, + "language": "python", + "originalKey": "4fa62073-6de1-4fe5-9b42-1e0f4de20a96", + "outputsInitialized": false, + "requestMsgId": "4fa62073-6de1-4fe5-9b42-1e0f4de20a96", + "serverExecutionDuration": 1.3189618475735, + "showInput": true + }, + "outputs": [], + "source": [ + "orchestration_config = OrchestrationConfig(\n", + " parallelism=3,\n", + " tolerated_trial_failure_rate=0.1,\n", + " initial_seconds_between_polls=1,\n", + ")" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": { + "collapsed": false, + "customInput": null, + "customOutput": null, + "executionStartTime": 1739574738021, + "executionStopTime": 1739574820879, + "isAgentGenerated": false, + "language": "python", + "originalKey": "611981e8-82a1-402f-b097-cf536252e271", + "outputsInitialized": true, + "requestMsgId": "611981e8-82a1-402f-b097-cf536252e271", + "serverExecutionDuration": 82613.62616485, + "showInput": true + }, + "outputs": [], + "source": [ + "client.run_trials(maximum_trials=30, options=orchestration_config)" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "customInput": null, + "isAgentGenerated": false, + "language": "markdown", + "originalKey": "9415ff80-5577-4e45-8eda-36a14de96475", + "outputsInitialized": false, + "showInput": true + }, + "source": [ + "## Step 6: Analyze Results\n", + "As before, Ax can compute the best parameterization observed and produce a number of analyses to help interpret the results of the experiment.\n", + "\n", + "It is also worth noting that the experiment can be resumed at any time using Ax's storage functionality.\n", + "When configured to use a SQL databse, the `Client` saves a snapshot of itself at various points throughout the call to `run_trials`, making it incredibly easy to continue optimization after an unexpected failure.\n", + "You can learn more about storage in Ax [here](#)." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": { + "collapsed": false, + "customInput": null, + "customOutput": null, + "executionStartTime": 1739574859795, + "executionStopTime": 1739574867583, + "isAgentGenerated": false, + "language": "python", + "originalKey": "ec93c967-b07e-4b1e-b30e-c5597fa70962", + "outputsInitialized": true, + "requestMsgId": "ec93c967-b07e-4b1e-b30e-c5597fa70962", + "serverExecutionDuration": 7511.262876913, + "showInput": true + }, + "outputs": [], + "source": [ + "best_parameters, prediction, index, name = client.get_best_parameterization()\n", + "print(\"Best Parameters:\", best_parameters)\n", + "print(\"Prediction (mean, variance):\", prediction)" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": { + "collapsed": false, + "customInput": null, + "executionStartTime": 1739917888088, + "executionStopTime": 1739917888552, + "isAgentGenerated": false, + "language": "python", + "originalKey": "df68d3a3-1a05-4d8a-82df-1745bb597926", + "outputsInitialized": false, + "requestMsgId": "7473e106-47bb-456b-af75-32e50650a8af", + "serverExecutionDuration": 263.48441885784, + "showInput": true + }, + "outputs": [], + "source": [ + "client.compute_analyses()" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "customInput": null, + "isAgentGenerated": false, + "language": "markdown", + "originalKey": "3af7500a-f513-4a7a-a7b7-b0bfdc577580", + "outputsInitialized": false, + "showInput": true + }, + "source": [ + "## Conclusion\n", + "\n", + "This tutorial demonstrates how to use Ax's `Client` for closed-loop optimization using the Hartmann6 function as an example.\n", + "This style of optimization is useful in scenarios where trials are evaluated on some external system or when experimenters wish to take advantage of parallel evaluation, trial failure handling, or simply to manage long-running optimization tasks without human intervention.\n", + "You can define your own Runner and Metric classes to communicate with whatever external systems you wish to interface with, and control optimization using the `OrchestrationConfig`.\n" + ] + } + ], + "metadata": { + "fileHeader": "", + "fileUid": "f1dfa50c-a38c-494b-82e1-2f6e393f1d13", + "isAdHoc": false, + "kernelspec": { + "display_name": "python3", + "language": "python", + "name": "python3" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3" + } + }, + "nbformat": 4, + "nbformat_minor": 5 +} diff --git a/website/tutorials.json b/website/tutorials.json index 21f59d2a340..877ea6405e4 100644 --- a/website/tutorials.json +++ b/website/tutorials.json @@ -7,6 +7,10 @@ { "id": "human_in_the_loop", "title": "Ask-tell Optimization in a Human-in-the-loop Setting" + }, + { + "id": "closed_loop", + "title": "Closed-loop Optimization with Ax" } ], "Advanced features": [