Scippy

SCIP

Solving Constraint Integer Programs

branch_inference.h
Go to the documentation of this file.
1 /* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
2 /* */
3 /* This file is part of the program and library */
4 /* SCIP --- Solving Constraint Integer Programs */
5 /* */
6 /* Copyright (C) 2002-2014 Konrad-Zuse-Zentrum */
7 /* fuer Informationstechnik Berlin */
8 /* */
9 /* SCIP is distributed under the terms of the ZIB Academic License. */
10 /* */
11 /* You should have received a copy of the ZIB Academic License */
12 /* along with SCIP; see the file COPYING. If not email to scip@zib.de. */
13 /* */
14 /* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
15 
16 /**@file branch_inference.h
17  * @ingroup BRANCHINGRULES
18  * @brief inference history branching rule
19  * @author Tobias Achterberg
20  * @author Timo Berthold
21  * @author Stefan Heinz
22  *
23  * The inference history branching rule is based on the average number of deductions obtained after
24  * branching this variable upwards and downwards.
25  * Variables which cause many problem reductions are preferred since they are more likely to drive
26  * the created sub-tree towards infeasibility.
27  * Inference history of the variables is updated during the branch-and-bound search.
28  *
29  * For a more detailed description and a comparison between the inference rule and other branching rules
30  * in SCIP, we refer to
31  *
32  * @par
33  * Tobias Achterberg@n
34  * Constraint Integer Programming@n
35  * PhD Thesis, Technische Universit├Ąt Berlin, 2007@n
36  *
37 
38  */
39 
40 /*---+----1----+----2----+----3----+----4----+----5----+----6----+----7----+----8----+----9----+----0----+----1----+----2*/
41 
42 #ifndef __SCIP_BRANCH_INFERENCE_H__
43 #define __SCIP_BRANCH_INFERENCE_H__
44 
45 
46 #include "scip/scip.h"
47 
48 #ifdef __cplusplus
49 extern "C" {
50 #endif
51 
52 /** creates the inference history branching rule and includes it in SCIP */
53 extern
55  SCIP* scip /**< SCIP data structure */
56  );
57 
58 #ifdef __cplusplus
59 }
60 #endif
61 
62 #endif
63