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

#include <integer.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 381 of file integer.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 394 of file integer.h.

◆ ivar_values

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

Definition at line 395 of file integer.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 385 of file integer.h.


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