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

#include <constraint_solveri.h>

Inheritance diagram for operations_research::SymmetryBreaker:
operations_research::DecisionVisitor operations_research::BaseObject

Public Member Functions

 SymmetryBreaker ()
 
 ~SymmetryBreaker () override
 
void AddIntegerVariableEqualValueClause (IntVar *var, int64_t value)
 --— Symmetry Breaker --—
 
void AddIntegerVariableGreaterOrEqualValueClause (IntVar *var, int64_t value)
 
void AddIntegerVariableLessOrEqualValueClause (IntVar *var, int64_t value)
 
- Public Member Functions inherited from operations_research::DecisionVisitor
 DecisionVisitor ()
 
 DecisionVisitor (const DecisionVisitor &)=delete
 This type is neither copyable nor movable.
 
DecisionVisitoroperator= (const DecisionVisitor &)=delete
 
 ~DecisionVisitor () override
 
virtual void VisitSetVariableValue (IntVar *var, int64_t value)
 
virtual void VisitSplitVariableDomain (IntVar *var, int64_t value, bool start_with_lower_half)
 
virtual void VisitScheduleOrPostpone (IntervalVar *var, int64_t est)
 
virtual void VisitScheduleOrExpedite (IntervalVar *var, int64_t est)
 
virtual void VisitRankFirstInterval (SequenceVar *sequence, int index)
 
virtual void VisitRankLastInterval (SequenceVar *sequence, int index)
 
virtual void VisitUnknownDecision ()
 
- Public Member Functions inherited from operations_research::BaseObject
 BaseObject ()
 
 BaseObject (const BaseObject &)=delete
 This type is neither copyable nor movable.
 
BaseObjectoperator= (const BaseObject &)=delete
 
virtual ~BaseObject ()
 
virtual std::string DebugString () const
 

Friends

class SymmetryManager
 

Detailed Description

A symmetry breaker is an object that will visit a decision and create the 'symmetrical' decision in return. Each symmetry breaker represents one class of symmetry.

Definition at line 2348 of file constraint_solveri.h.

Constructor & Destructor Documentation

◆ SymmetryBreaker()

operations_research::SymmetryBreaker::SymmetryBreaker ( )
inline

Definition at line 2350 of file constraint_solveri.h.

◆ ~SymmetryBreaker()

operations_research::SymmetryBreaker::~SymmetryBreaker ( )
inlineoverride

Definition at line 2352 of file constraint_solveri.h.

Member Function Documentation

◆ AddIntegerVariableEqualValueClause()

void operations_research::SymmetryBreaker::AddIntegerVariableEqualValueClause ( IntVar * var,
int64_t value )

--— Symmetry Breaker --—

Definition at line 5267 of file search.cc.

◆ AddIntegerVariableGreaterOrEqualValueClause()

void operations_research::SymmetryBreaker::AddIntegerVariableGreaterOrEqualValueClause ( IntVar * var,
int64_t value )

Definition at line 5275 of file search.cc.

◆ AddIntegerVariableLessOrEqualValueClause()

void operations_research::SymmetryBreaker::AddIntegerVariableLessOrEqualValueClause ( IntVar * var,
int64_t value )

Definition at line 5283 of file search.cc.

Friends And Related Symbol Documentation

◆ SymmetryManager

friend class SymmetryManager
friend

Definition at line 2359 of file constraint_solveri.h.


The documentation for this class was generated from the following files: