# GCG

Branch-and-Price & Column Generation for Everyone

## Detailed Description

DEC file reader for structure information.

This reader reads and write files in .dec format. A data format to pass a (possibly partial) decomposition to GCG, prerequisite is a given MIP, whose constraints and variables are referred to by name – everything behind a backslash (“\”) is a comment and is ignored – information is given section-wise – sections are started by key words (ignoring the case of the characters) and finished by starting a new section or reaching end of file – each line in a section provides one value – key words for sections are: – consdefaultmaster: – optional; followed by line with possible values: {0, 1}; default: 1; description: if set to 1 then (directly after file is read) each unassigned constraint is assigned to the master (needed for backward compatibility) – presolved: – mandatory; followed by line with possible values: {0, 1}; description: if set to 0 (1) then the decomposition is considered for the unpresolved (presolved) problem – nblocks – mandatory; possible values: N; description: number of (possibly empty) blocks this decomposition file has information for – block (alternatives: blockconss or blockcons) – optional; directly followed by block index (starting with 1); each following line contains name of a constraint belonging to this block – masterconss (alternative: mastercons)

• optional; each following line contains name of a constraint belonging to the master – blockvars
• optional; directly followed by block index (starting with 1); each following line contains name of a variable belonging to this block – mastervars (alternative: mastervar)
• optional; each following line contains name of a master variable; (belongs explicitly only to master constraints) – linkingvars (alternative: linkingvar)
• optional; each following line contains name of a linking variable – decomposition is rejected if there are any inconsistencies – after reading (and and possibly assigning unassigned constraints because of consdefaultmaster, see above) implicit assignments are made: – unassigned constraints hitting at least two blocks -> assign to master; – unassigned variables hitting at least two blocks -> assign to linking ; – all constraints of an unassigned variable are master constraints -> variable is master variable;

#include "scip/scip.h"
#include "type_decomp.h"

Go to the source code of this file.