globalMOO Documentation
  • globalMOO API Documentation
  • core
    • Authentication
    • Core Concepts
    • Getting Started with globalMOO
    • Error Handling
    • Event Handling
    • SDK Initialization
    • Debugging & Logging
  • schemas
    • Account Schema
    • Model Schema
    • Project Schema
    • Trial Schema
    • Objective Schema
    • Result Schema
    • Inverse Schema
  • quickstart
    • Your First Optimization with globalMOO
  • endpoints
    • accounts
      • Account Endpoints
      • Register Account
    • inverse
      • Inverse Optimization Endpoints
      • Initialize Inverse Optimization
      • Load Inverse Output
      • Suggest Inverse Step
    • models
      • Create Model
      • Model Endpoints
      • List Models
    • objectives
      • Objective Endpoints
      • Load Objectives
    • outputs
      • Output Endpoints
      • Load Output Cases
      • Load Developed Outputs
    • projects
      • Create Project
      • Project Endpoints
    • trials
      • Trial Endpoints
      • Read Trial
Powered by GitBook
On this page
  • Available Endpoints
  • Inverse Solution/Optimization Process
  • Stop Conditions
  • Results
  • Performance Metrics
  • Common Use Cases
  1. endpoints
  2. inverse

Inverse Optimization Endpoints

PreviousinverseNextInitialize Inverse Optimization

Last updated 3 months ago

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

  • - Start an inverse optimization process

  • - Get next suggested input values

  • - Load output values from current iteration

Inverse Solution/Optimization Process

  1. 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

  2. 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:

  1. Running (0) - Process is still running or being evaluated

  2. Satisfied (1) - Found a satisfactory solution meeting all objectives

  3. Stopped (2) - Stopped due to duplicate suggested inputs

  4. Exhausted (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

  1. Finding input parameters to achieve specific output targets

  2. Calibrating models to match experimental data

  3. Reverse engineering desired system behavior

  4. Parameter estimation from observations

Initialize Inverse
Suggest Inverse
Load Inverse Output