How to use this Documentation
This guide helps you in getting started with GCG and in particular with the manual we provide with it. This documentation does not only contain the C-API and thus the documented code in pretty HTML-format but much more. We explain core functionalities of GCG in a very detailed way and provide you with guides and instructions on how to do things that you might need to do for your own projects. However, not all of these guides are relevant for everyone.
Target Groups
While browsing in our documentation, you will frequently encounter these symbols:
These indicate which group of users of GCG we are targeting with this specific guide, facilitating the search for guides and preparing you for their level of "difficulty". For example, if you are completely new to the entire field, a target group symbol that is more to the right (e.g. a scientist) could be a warning for you that this guide might not be the one for you.
Where to begin?
Installation
In any case, you will have to start with the installation. To make this as seemless as possible for you, we prepared different guides, based on user types. There, you will also already get an idea on how to continue.
⇨ Install GCG now!
Using GCG and developing with GCG
Depending on what type of user you are, you might go a different way, but these are the most common ones.
- Always start with the Getting started guide.
- Then, if you want to use some of the cool features of GCG, dive into the first few Use Cases of GCG of the User's Guide.
- After that, you might want to take a look at the more complicated Use Cases of GCG, for example by Tweaking the Detection.
- Finally, you can start developing your own plug-ins for GCG, starting with the final use case Visualizing Runtime Behaviour and the Example Projects.
Structure of this Documentation
The GCG documentation and manual is structured into two guides, a misc section with everything that does not belong into these guides and the C-API.
Motivation
Why use GCG? Getting StartedFeatures
The Interactive Menu The Explore Menu The Visualization SuiteUse Cases
The Magic of GenericityBranch-and-price without a single line of code
GCG and GAMS, a match made in heaven
Paint my Problem
Tweaking the Detection
Optimizing all GCG Parameters
Visualizing Runtime Behaviour
Adding new plugins and components to GCG
Motivation
Getting Started: Developers' EditionThe GCG Presolving
Presolving Process Presolving ParametersThe GCG Detection
Structure Types Classifiers DetectorsDetection Process Benders Detection Mode
Detection Scores Detection Parameters
The GCG Branching
Branching Process Branching RulesBranching Candidate Selection Heuristics Diving Heuristics Branching Parameters
The GCG Pricing
Pricing Process Pricing SolversRecursive Reformulation
Pricing Parameters
The GCG Cutting
Basic Separator Master Separator Subset Row SeparatorHowtos
How to use How to add