---
title: "Solve Solutions"
method: POST
path: "/method/rpm/solve"
---

# Solve Solutions

`POST /method/rpm/solve`

Runs an iteration of the reference point method.

Args:
    request (RPMSolveRequest): a request with the needed information to run the method.
    user (Annotated[User, Depends): the current user.
    session (Annotated[Session, Depends): the current database session.

Returns:
    RPMState: a state with information on the results of iterating the reference point method
        once.

## Request body

- RPMSolveRequest — Model of the request to the reference point method.
  - `problem_id` integer, required
  - `session_id` integer, nullable
  - `parent_state_id` integer, nullable
  - `scalarization_options` object, nullable
  - `solver` string, nullable
  - `solver_options` object, nullable
  - `preference` ReferencePoint — Model for representing a reference point type of preference.
    - `preference_type` 'reference_point'
    - `aspiration_levels` object, required

## Response `200`

Successful Response

- RPMState — Reference Point Method (k+1 candidates).
  - `id` integer, nullable
  - `preferences` ReferencePoint, required — Model for representing a reference point type of preference.
    - `preference_type` 'reference_point'
    - `aspiration_levels` object, required
  - `scalarization_options` object, nullable
  - `solver` string, nullable
  - `solver_options` object, nullable
  - `solver_results` SolverResults[], required
    - `optimal_variables` object, required — The optimal decision variables found.
    - `optimal_objectives` object, required — The objective function values corresponding to the optimal decision variables found.
    - `constraint_values` union — The constraint values of the problem. A negative value means the constraint is respected, a positive one means it has been breached.
      - object
      - unknown
    - `extra_func_values` object, nullable — The extra function values of the problem.
    - `scalarization_values` object, nullable — The scalarization function values of the problem.
    - `success` boolean, required — A boolean flag indicating whether the optimization was successful or not.
    - `message` string, required — Description of the cause of termination.

## Other responses

- `422` — Validation Error

---

[API](https://skmtc.net/industrial-optimization-group/apis/desdeo-fast-api.md) · [All operations](https://skmtc.net/industrial-optimization-group/apis/desdeo-fast-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/industrial-optimization-group/desdeo-fast-api/revisions/c24fa4e23380/schema)
