Minotaur 0.4.1
Docs for developers
Public Member Functions | Public Attributes | Protected Member Functions | Protected Attributes | List of all members
Minotaur::CutInfo Class Reference

#include <CutInfo.h>

Collaboration diagram for Minotaur::CutInfo:
Collaboration graph
[legend]

Public Member Functions

 CutInfo ()
 Default Constructor.
 
 CutInfo (ConstraintPtr c, const double *hashval)
 Create a cut using a constraint.
 
 ~CutInfo ()
 Destroy.
 
void evalScore (const double *x, double &vio, double &score)
 By how much does a given point x violate this cut.
 
void write (std::ostream &out) const
 Write to out.
 
void write () const
 Write to std::cout.
 
void updateActive (bool wasactive)
 Update active counts.
 
void updateViol (bool wasviol)
 Update viol counts.
 
UInt getCntSinceActive ()
 Get basic info.
 
UInt getCntSinceViol ()
 
UInt getNumActive ()
 
double getHashVal ()
 

Public Attributes

UInt timesEnabled
 
UInt timesDisabled
 No. of times it was moved from pool to problem.
 
UInt lastEnabled
 No. of times it was removed from problem.
 
UInt lastDisabled
 How many iters since it was last enabled.
 
UInt cntSinceActive
 How many iters since it was last disabled.
 
UInt cntSinceViol
 Updated for cuts enabled in problem.
 
UInt numActive
 Updated for cuts disabled in pool.
 
int parent_active_cnts
 Updated only for cuts in problem.
 
double hash
 
double varScore
 Hash value of this cut.
 
double fixedScore
 Variable score (changes every iteration.)
 
bool neverDelete
 Fixed score (does not change.)
 
bool neverDisable
 If true, never delete cut from pool.
 
bool inRel
 If true, never remove cut from problem.
 

Protected Member Functions

void evalFixedScore ()
 

Protected Attributes

ConstraintPtr cons_
 Pointer to the constraint.
 
bool canDelete_
 True if allowed to delete the cut.
 
UInt cntSinceActive_
 For cuts in relaxation,.
 
UInt cntSinceViol_
 For cuts in pool.
 
UInt numActive_
 Total number of relaxations where it was active.
 
double fixedScore_
 Score.
 
double hashVal_
 To check duplicacy.
 

Detailed Description

The Cut class is meant to manage the cutting planes generated by different cut generators and handlers. This is a base class and special classes of cuts can be derived from it.

Member Function Documentation

◆ evalFixedScore()

void CutInfo::evalFixedScore ( )
protected

TODO: create a score that reflects sparsity and other numerical properties.

Member Data Documentation

◆ hash

double Minotaur::CutInfo::hash

No. of cuts active in a node with un-processed children


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

Minotaur source code documented by Doxygen 1.9.4 on Thu Apr 24 2025