Inverse Optimization Endpoints
Inverse solution and/or optimization in globalMOO allows you to find input parameters that produce desired output values. This is particularly useful when you have target outputs and need to determine the inputs that would achieve those targets.
Available Endpoints
Initialize Inverse - Start an inverse optimization process
Suggest Inverse - Get next suggested input values
Load Inverse Output - Load output values from current iteration
Inverse Solution/Optimization Process
Initialize the inverse solution/optimization with:
Target objectives and their types
Initial input/output values
Desired L1 norm for exact objectives
Bounds for percent/value objectives
Optional convergence parameters
Iterative optimization:
Get suggested input values
Run your simulation/model with these inputs
Load the resulting outputs
Repeat until convergence or maximum iterations
Stop Conditions
The inverse solution/optimization process can end in several ways, indicated by the stopReason
field:
Running
(0) - Process is still running or being evaluatedSatisfied
(1) - Found a satisfactory solution meeting all objectivesStopped
(2) - Stopped due to duplicate suggested inputsExhausted
(3) - Exhausted all attempts to converge
Results
Each inverse step includes a results array containing objective satisfaction details:
{
"id": 1,
"number": 0,
"objective": 1.0,
"objectiveType": "exact",
"minimumBound": 0.0,
"maximumBound": 0.0,
"output": 0.98,
"error": 0.02,
"detail": "Error explanation",
"satisfied": true
}
Performance Metrics
Inverse steps track performance metrics:
suggestTime
- Time taken to generate suggestion (microseconds)computeTime
- Time taken to evaluate outputs (microseconds)l1Norm
- Current L1 norm error value
Common Use Cases
Finding input parameters to achieve specific output targets
Calibrating models to match experimental data
Reverse engineering desired system behavior
Parameter estimation from observations
Last updated