How to configure Hyperparameters for Optimiser Execution?

Modified on Thu, 20 Aug at 8:59 AM

Overview

The Optimisation Advanced Settings feature provides administrators with additional control over how the HamiltonAI optimiser behaves during optimisation runs.


By default, HamiltonAI uses Adaptive Mode, where optimisation parameters are automatically selected and tuned by the platform. For advanced use cases, authorised administrators can switch to User-Defined Mode and manually configure optimisation hyperparameters.


These settings are intended for experienced users who understand optimisation concepts and require greater control over optimisation performance, convergence behaviour, uncertainty handling, or system configuration.

Important: Incorrect parameter settings may increase optimisation runtime, affect result quality, or prevent optimisation from completing successfully. Unless specifically advised, users should continue using Adaptive Mode.


TABLE OF CONTENT


Who Can Access This Feature?

This feature is available to Administrators only.

The Advanced Settings page can be accessed from the Optimisation workflow by selecting the Settings (⚙️) icon available on the Optimisation card.


Navigation

  1. Open a model.
  2. Navigate to Predictions.
  3. Select Optimisation.
  4. Click the Settings (⚙️) icon.
  5. The Optimisation - Advanced Settings page opens.


Adaptive vs User-Defined Mode



Adaptive Mode (Recommended)

When Adaptive is selected, HamiltonAI automatically determines the most suitable optimisation parameters based on factors such as:

  • Model type
  • Optimisation duration
  • Budget size
  • Model complexity
  • Available uncertainty samples

The optimiser continuously adjusts settings to provide a balance between performance, stability, and runtime. No manual configuration is required.



User-Defined Mode

When User-Defined is selected:

  • Administrators can manually configure optimisation parameters.
  • Saved values remain active until changed.
  • Optimisation runs use the configured values exactly as specified.
  • Validation rules are applied before saving.

A warning banner is displayed:

"Your saved values will be used as provided. Set values manually only if you understand the impact or are advised to do so."


Advanced Settings Categories


The settings are organised into three sections:


1. Precision & Convergence

Controls how accurately the optimiser searches for a solution and when optimisation is considered complete.


A. Optimisation Stability Threshold

Parameter: solutionTolerance

Default Value: 0.001


What it does

Determines the minimum change in media investment between optimisation iterations before the optimiser considers the solution stable.

Lower values:

  • Produce more precise results
  • May increase optimisation runtime

Higher values:

  • Complete faster
  • May stop optimisation earlier

Allowed Range

  • 0.0000000001 to 0.1


B. Maximum Spend Limit Per Optimisation Step

Parameter: clipGradValue

Default Value: 20,000

What it does

Limits how much spend can change during a single optimisation step.

Lower values:

  • Encourage smoother investment changes
  • Increase optimisation stability

Higher values:

  • Allow larger spend movements
  • May speed up exploration

Allowed Values

  • Any value greater than 0


C. Learning Rate

Controls how aggressively the optimiser explores alternative spend allocations.

Learning Rate Amplitude

Parameter: learningRateAmplitude

Default Value: 500

What it does

Controls the overall size of optimisation adjustments during the optimisation process.

Allowed Values

  • Integer greater than 0


D. Initial Optimisation Step Size

Parameter: learningRateExpDecayInit

Default Value: 0

What it does

Defines the starting point of the optimiser's learning rate decay schedule.

Allowed Values

  • Integer ≥ 0
  • Must be lower than Final Step Size


E. Final Optimisation Step Size

Parameter: learningRateExpDecayFin

Default Value: 3

What it does

Defines the end point of the optimisation learning rate decay schedule.

Allowed Values

  • Integer ≥ 0
  • Must be greater than Initial Step Size


F. Media Investment Matching Accuracy

Parameter: budgetTolerance

Default Value: 0.01

What it does

Determines how closely the optimiser must match the total investment budget specified by the user.

Lower values:

  • Produce tighter budget matching

Higher values:

  • Allow slightly greater deviation

Allowed Range

  • 0.0000000001 to 0.1


2. Reliability & Uncertainty

Controls how the optimiser balances certainty, robustness, and variability in results.



A. Risk Aversion Degree

Parameter: riskAversenessDegree

Default Value: 0.1

What it does

Controls the balance between risk and reward when selecting media allocations.

Lower values:

  • Prioritise higher-return opportunities
  • Accept greater variability

Higher values:

  • Produce more conservative recommendations
  • Prioritise predictable performance

Allowed Range

  • 0 to 1

Please note that default value will be 0.9


B. Uncertainty Scenarios

Parameter: posteriorSubsetSize

Default Value: 120

What it does

Determines how many uncertainty scenarios are considered during optimisation.

Increasing this value:

  • Improves robustness
  • May increase runtime

Allowed Values

  • Minimum: 2
  • Maximum: Number of posterior samples available in the model


C. Information Per Optimisation Step

Parameter: batchSize

Default Value: 10

What it does

Determines how much model information is evaluated during each optimisation iteration.

Increasing this value:

  • May provide more stable results
  • May increase optimisation time

Allowed Range

  • 2 to 50
  • Must be less than or equal to the selected Uncertainty Scenario count


D. Comparison Checks

Parameter: numberOfSweeps

Default Value: 1

What it does

Runs additional optimisation passes to verify consistency of results.

Increasing this value:

  • May improve confidence in results
  • Increases runtime

Allowed Values

  • 1 or 2


3. System Configuration

Controls which optimisation frameworks are used during optimisation processing.


A. Backend Framework

Parameter: optimizationBackend

Default Value: PyTorch

What it does

Determines the optimisation engine used to calculate the optimal media allocation.

Supported Values

  • PyTorch
  • Stan


B. Model Version Processing Framework

Parameter: optimizationExtractsBackend

Default Value: PyTorch

What it does

Determines how optimisation outputs are generated and processed.

This affects result generation and formatting rather than optimisation logic.

Supported Values

  • PyTorch
  • Stan


Additional Parameters

The following optimisation parameters are supported by the optimisation engine but are not currently exposed in the user interface but will come as future enhancements.


A. Optimisation Look-back Period

Parameter: startDateOptimization

Defines how far before the optimisation period the optimiser should consider historical effects.

Applicable primarily to models with long-term effects.


B. Initialisation Vector Count

Parameter: initialVectorCount

Controls how many starting points are generated before optimisation begins.

More starting vectors may improve solution quality but increase runtime.


C. Adaptive Values Flag

Parameter: useAdaptiveValues

Default Value: TRUE

When enabled, all manually configured hyperparameters are ignored and HamiltonAI automatically selects optimisation settings.


Resetting to Default Values

Users can restore all settings to platform defaults by selecting: Reset to DefaultSave

This immediately reinstates system recommended values. This is only available in User-define mode.


Viewing Advanced Settings in the Optimisation Brief

Once an optimisation is created, the selected Advanced Settings are captured as part of the optimisation input and can be reviewed at any time from the Optimisation Brief.


This provides full visibility into the configuration used when generating an optimisation result and makes it easier to:

  • Review optimisation assumptions.
  • Compare optimisation runs using different settings.
  • Troubleshoot unexpected optimisation outcomes.
  • Verify whether Adaptive or User-Defined settings were used.


How to View Advanced Settings after running an optimisation

  1. Navigate to Predictions or Activities section to view saved optimisation plans.
  2. Open an existing optimisation.
  3. Select Input Brief.
  4. Scroll to the Advanced Settings section.
  5. Review the optimisation parameters applied to that run.


What Information Is Displayed?

Depending on the selected mode, the Input Brief displays:

Adaptive Mode

When Adaptive Mode is used:

  • The optimisation is marked as Adaptive.
  • HamiltonAI automatically determines the parameter values used during optimisation.
  • User-defined values are not applied.

User-Defined Mode

When User-Defined Mode is used:

  • The optimisation is marked as User-Defined.
  • All manually configured hyperparameters are displayed.
  • Values reflect the exact settings used for that optimisation run.



Best Practice Recommendations

For most optimisation scenarios:


✅ Use Adaptive Mode
✅ Keep default settings whenever possible
✅ Only modify settings when instructed by the Product, AI or Engineering teams
✅ Make small changes and test results before making large adjustments


Avoid increasing multiple parameters simultaneously, as this can make it difficult to identify the cause of changes in optimisation behaviour.


Frequently Asked Questions

When should I use User-Defined Mode?

Only when you have a specific optimisation requirement or have been advised to do so by the HamiltonAI Product, AI or Engineering teams.


Will changing these settings affect existing optimisations?

No. Changes apply only to future optimisation runs.


What happens if I enter invalid values?

Validation rules prevent unsupported values from being saved.


What happens when Adaptive Mode is enabled?

HamiltonAI ignores all manually configured hyperparameters and automatically selects the most appropriate configuration for each optimisation run.


Was this article helpful?

That’s Great!

Thank you for your feedback

Sorry! We couldn't be helpful

Thank you for your feedback

Let us know how can we improve this article!

Select at least one of the reasons
CAPTCHA verification is required.

Feedback sent

We appreciate your effort and will try to fix the article