Cgl 0.60.2

- Main Page
- Related Pages
- Modules
- Namespaces
- Classes
- Files

- Class List
- Class Index
- Class Hierarchy
- Class Members

All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
List of all members
Cgl012Cut Class Reference

012Cut Generator Class More...

`#include <Cgl012cut.hpp>`

Collaboration diagram for Cgl012Cut:
[legend]

## Public Member Functions
Constructors and destructors
| Cgl012Cut ()
| Default constructor. More...
| Cgl012Cut (const Cgl012Cut &)
| Copy constructor. More...
Cgl012Cut & | operator= (const Cgl012Cut &rhs)
| Assignment operator. More...
virtual | ~Cgl012Cut ()
| Destructor. More...

## Private Attributes
Private member data
ilp * | inp_ilp
parity_ilp * | p_ilp
int | iter
double | gap
double | maxgap
int | errorNo
int | sep_iter
log_var ** | vlog
bool | aggr

## Generate Cuts
int | sep_012_cut (int mr, int mc, int mnz, int *mtbeg, int *mtcnt, int *mtind, int *mtval, int *vlb, int *vub, int *mrhs, char *msense, const double *xstar, bool aggressive, int *cnum, int *cnzcnt, int **cbeg, int **ccnt, int **cind, int **cval, int **crhs, char **csense)
void | ilp_load (int mr, int mc, int mnz, int *mtbeg, int *mtcnt, int *mtind, int *mtval, int *vlb, int *vub, int *mrhs, char *msense)
void | free_ilp ()
void | alloc_parity_ilp (int mr, int mc, int mnz)
void | free_parity_ilp ()
void | initialize_log_var ()
void | free_log_var ()
int | best_weakening (int n_to_weak, int *vars_to_weak, short int original_parity, double original_slack, double *best_even_slack, double *best_odd_slack, info_weak **info_even_weak, info_weak **info_odd_weak, short int only_odd, short int only_viol)
short int | best_cut (int *ccoef, int *crhs, double *violation, short int update, short int only_viol)
cut * | get_cut (cycle *s_cyc)
void | update_log_var ()
cut_list * | basic_separation ()
double | score_by_moving (int i, short int itype, double thresh)
void | modify_current (int i, short int itype)
short int | best_neighbour (cut_list *out_cuts)
void | add_tight_constraint ()
cut_list * | tabu_012 ()
void | initialize ()
void | restart (short int failure)
void | print_constr (int i)
void | print_parity_ilp ()
void | get_parity_ilp ()
separation_graph * | initialize_sep_graph ()
void | print_cut (cut *v_cut)
short int | get_ori_cut_coef (int n_of_constr, int *constr_list, int *ccoef, int *crhs, short int only_viol)
cut * | define_cut (int *ccoef, int crhs)
double | cut_score (int *ccoef, int crhs, double viol, short int only_viol)
cut * | get_current_cut ()
void | print_cur_cut ()
void | print_cut_list (cut_list *cuts)

## Detailed Description

012Cut Generator Class

This class is to make Cgl01cut thread safe etc

Definition at line 207 of file Cgl012cut.hpp.

## Constructor & Destructor Documentation

Cgl012Cut::Cgl012Cut | ( |  | ) |

Default constructor.

Cgl012Cut::Cgl012Cut | ( | const Cgl012Cut & |  | ) |

Copy constructor.

virtual Cgl012Cut::~Cgl012Cut | ( |  | ) |
| virtual

Destructor.

## Member Function Documentation

int Cgl012Cut::sep_012_cut | ( | int | mr,
|  | int | mc,
|  | int | mnz,
|  | int * | mtbeg,
|  | int * | mtcnt,
|  | int * | mtind,
|  | int * | mtval,
|  | int * | vlb,
|  | int * | vub,
|  | int * | mrhs,
|  | char * | msense,
|  | const double * | xstar,
|  | bool | aggressive,
|  | int * | cnum,
|  | int * | cnzcnt,
|  | int ** | cbeg,
|  | int ** | ccnt,
|  | int ** | cind,
|  | int ** | cval,
|  | int ** | crhs,
|  | char ** | csense
| ) |  |

void Cgl012Cut::ilp_load | ( | int | mr,
|  | int | mc,
|  | int | mnz,
|  | int * | mtbeg,
|  | int * | mtcnt,
|  | int * | mtind,
|  | int * | mtval,
|  | int * | vlb,
|  | int * | vub,
|  | int * | mrhs,
|  | char * | msense
| ) |  |

void Cgl012Cut::free_ilp | ( |  | ) |

void Cgl012Cut::alloc_parity_ilp | ( | int | mr,
|  | int | mc,
|  | int | mnz
| ) |  |

void Cgl012Cut::free_parity_ilp | ( |  | ) |

void Cgl012Cut::initialize_log_var | ( |  | ) |

void Cgl012Cut::free_log_var | ( |  | ) |

int Cgl012Cut::best_weakening | ( | int | n_to_weak,
|  | int * | vars_to_weak,
|  | short int | original_parity,
|  | double | original_slack,
|  | double * | best_even_slack,
|  | double * | best_odd_slack,
|  | info_weak ** | info_even_weak,
|  | info_weak ** | info_odd_weak,
|  | short int | only_odd,
|  | short int | only_viol
| ) |  |
| private

short int Cgl012Cut::best_cut | ( | int * | ccoef,
|  | int * | crhs,
|  | double * | violation,
|  | short int | update,
|  | short int | only_viol
| ) |  |
| private

cut* Cgl012Cut::get_cut | ( | cycle * | s_cyc | ) |
| private

void Cgl012Cut::update_log_var | ( |  | ) |
| private

cut_list* Cgl012Cut::basic_separation | ( |  | ) |
| private

double Cgl012Cut::score_by_moving | ( | int | i,
|  | short int | itype,
|  | double | thresh
| ) |  |
| private

void Cgl012Cut::modify_current | ( | int | i,
|  | short int | itype
| ) |  |
| private

short int Cgl012Cut::best_neighbour | ( | cut_list * | out_cuts | ) |
| private

void Cgl012Cut::add_tight_constraint | ( |  | ) |
| private

cut_list* Cgl012Cut::tabu_012 | ( |  | ) |
| private

void Cgl012Cut::initialize | ( |  | ) |
| private

void Cgl012Cut::restart | ( | short int | failure | ) |
| private

void Cgl012Cut::print_constr | ( | int | i | ) |
| private

void Cgl012Cut::print_parity_ilp | ( |  | ) |
| private

void Cgl012Cut::get_parity_ilp | ( |  | ) |
| private

separation_graph* Cgl012Cut::initialize_sep_graph | ( |  | ) |
| private

void Cgl012Cut::print_cut | ( | cut * | v_cut | ) |
| private

short int Cgl012Cut::get_ori_cut_coef | ( | int | n_of_constr,
|  | int * | constr_list,
|  | int * | ccoef,
|  | int * | crhs,
|  | short int | only_viol
| ) |  |
| private

cut* Cgl012Cut::define_cut | ( | int * | ccoef,
|  | int | crhs
| ) |  |
| private

double Cgl012Cut::cut_score | ( | int * | ccoef,
|  | int | crhs,
|  | double | viol,
|  | short int | only_viol
| ) |  |
| private

cut* Cgl012Cut::get_current_cut | ( |  | ) |
| private

void Cgl012Cut::print_cur_cut | ( |  | ) |
| private

void Cgl012Cut::print_cut_list | ( | cut_list * | cuts | ) |
| private

Cgl012Cut& Cgl012Cut::operator= | ( | const Cgl012Cut & | rhs | ) |

Assignment operator.

## Member Data Documentation

ilp* Cgl012Cut::inp_ilp
| private

Definition at line 449 of file Cgl012cut.hpp.

parity_ilp* Cgl012Cut::p_ilp
| private

Definition at line 450 of file Cgl012cut.hpp.

int Cgl012Cut::iter
| private

Definition at line 451 of file Cgl012cut.hpp.

double Cgl012Cut::gap
| private

Definition at line 452 of file Cgl012cut.hpp.

double Cgl012Cut::maxgap
| private

Definition at line 453 of file Cgl012cut.hpp.

int Cgl012Cut::errorNo
| private

Definition at line 454 of file Cgl012cut.hpp.

int Cgl012Cut::sep_iter
| private

Definition at line 455 of file Cgl012cut.hpp.

log_var** Cgl012Cut::vlog
| private

Definition at line 456 of file Cgl012cut.hpp.

bool Cgl012Cut::aggr
| private

Definition at line 460 of file Cgl012cut.hpp.

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

- /tmp/Cgl-0.60.2/Cgl/src/CglZeroHalf/Cgl012cut.hpp