Scippy

SCIP

Solving Constraint Integer Programs

pub_cutpool.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-2022 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 visit scipopt.org. */
13 /* */
14 /* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
15 
16 /**@file pub_cutpool.h
17  * @ingroup PUBLICCOREAPI
18  * @brief public methods for storing cuts in a cut pool
19  * @author Tobias Achterberg
20  */
21 
22 /*---+----1----+----2----+----3----+----4----+----5----+----6----+----7----+----8----+----9----+----0----+----1----+----2*/
23 
24 #ifndef __SCIP_PUB_CUTPOOL_H__
25 #define __SCIP_PUB_CUTPOOL_H__
26 
27 
28 #include "scip/def.h"
29 #include "scip/type_cutpool.h"
30 #include "scip/type_lp.h"
31 
32 #ifdef __cplusplus
33 extern "C" {
34 #endif
35 
36 /**@addtogroup PublicCutMethods
37  *
38  * @{
39  */
40 
41 /** gets the row of the cut */
42 SCIP_EXPORT
44  SCIP_CUT* cut /**< cut */
45  );
46 
47 /** gets the age of the cut: the number of consecutive cut pool separation rounds where the cut was neither in the LP nor violated */
48 SCIP_EXPORT
49 int SCIPcutGetAge(
50  SCIP_CUT* cut /**< cut */
51  );
52 
53 /** returns the ratio of LPs where the row belonging to this cut was active in an LP solution, i.e.
54  * where the age of its row has not been increased
55  *
56  * @see SCIPcutGetAge() to get the age of a cut
57  */
58 SCIP_EXPORT
60  SCIP_CUT* cut /**< cut */
61  );
62 
63 /** gets array of cuts in the cut pool */
64 SCIP_EXPORT
66  SCIP_CUTPOOL* cutpool /**< cut pool */
67  );
68 
69 /** get number of cuts in the cut pool */
70 SCIP_EXPORT
72  SCIP_CUTPOOL* cutpool /**< cut pool */
73  );
74 
75 /** get maximum number of cuts that were stored in the cut pool at the same time */
76 SCIP_EXPORT
78  SCIP_CUTPOOL* cutpool /**< cut pool */
79  );
80 
81 /** gets time in seconds used for separating cuts from the pool */
82 SCIP_EXPORT
84  SCIP_CUTPOOL* cutpool /**< cut pool */
85  );
86 
87 /** get number of times, the cut pool was separated */
88 SCIP_EXPORT
90  SCIP_CUTPOOL* cutpool /**< cut pool */
91  );
92 
93 /** get total number of cuts that were separated from the cut pool */
94 SCIP_EXPORT
96  SCIP_CUTPOOL* cutpool /**< cut pool */
97  );
98 
99 /** @} */
100 
101 #ifdef __cplusplus
102 }
103 #endif
104 
105 #endif
SCIP_Longint SCIPcutpoolGetNCutsFound(SCIP_CUTPOOL *cutpool)
Definition: cutpool.c:1096
SCIP_Real SCIPcutGetLPActivityQuot(SCIP_CUT *cut)
Definition: cutpool.c:397
SCIP_Longint SCIPcutpoolGetNCalls(SCIP_CUTPOOL *cutpool)
Definition: cutpool.c:1086
int SCIPcutpoolGetMaxNCuts(SCIP_CUTPOOL *cutpool)
Definition: cutpool.c:1066
type definitions for LP management
type definitions for storing cuts in a cut pool
SCIP_ROW * SCIPcutGetRow(SCIP_CUT *cut)
Definition: cutpool.c:373
SCIP_CUT ** SCIPcutpoolGetCuts(SCIP_CUTPOOL *cutpool)
Definition: cutpool.c:1046
int SCIPcutpoolGetNCuts(SCIP_CUTPOOL *cutpool)
Definition: cutpool.c:1056
#define SCIP_Real
Definition: def.h:177
#define SCIP_Longint
Definition: def.h:162
SCIP_Real SCIPcutpoolGetTime(SCIP_CUTPOOL *cutpool)
Definition: cutpool.c:1076
int SCIPcutGetAge(SCIP_CUT *cut)
Definition: cutpool.c:383
common defines and data types used in all packages of SCIP