Google OR-Tools v9.12
a fast and portable software suite for combinatorial optimization
Loading...
Searching...
No Matches
operations_research::sat::DebugSolution Struct Reference

#include <integer_base.h>

Public Attributes

std::vector< int64_t > proto_values
 
util_intops::StrongVector< IntegerVariable, bool > ivar_has_value
 
util_intops::StrongVector< IntegerVariable, IntegerValue > ivar_values
 

Detailed Description

A model singleton used for debugging. If this is set in the model, then we can check that various derived constraint do not exclude this solution (if it is a known optimal solution for instance).

Definition at line 346 of file integer_base.h.

Member Data Documentation

◆ ivar_has_value

util_intops::StrongVector<IntegerVariable, bool> operations_research::sat::DebugSolution::ivar_has_value

This is filled from proto_values at load-time, and using the cp_model_mapping, we cache the solution of the integer variables that are mapped. Note that it is possible that not all integer variable are mapped.

Todo
(user): When this happen we should be able to infer the value of these derived variable in the solution. For now, we only do that for the objective variable.

Definition at line 359 of file integer_base.h.

◆ ivar_values

util_intops::StrongVector<IntegerVariable, IntegerValue> operations_research::sat::DebugSolution::ivar_values

Definition at line 360 of file integer_base.h.

◆ proto_values

std::vector<int64_t> operations_research::sat::DebugSolution::proto_values

This is the value of all proto variables. It should be of the same size of the PRESOLVED model and should correspond to a solution to the presolved model.

Definition at line 350 of file integer_base.h.


The documentation for this struct was generated from the following file: