Toggle navigation
SCIP Optimization Suite
SCIP
SoPlex
ZIMPL
UG
GCG
Documentation
SCIP 9.2.0
SCIP 8.1.0
SCIP 7.0.3
SCIP 6.0.2
SCIP 5.0.1
SCIP 4.0.1
SCIP 3.2.1
SCIP
Solving Constraint Integer Programs
struct_primal.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-2017 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 struct_primal.h
17
* @ingroup INTERNALAPI
18
* @brief datastructures for collecting primal CIP solutions and primal informations
19
* @author Tobias Achterberg
20
*/
21
22
/*---+----1----+----2----+----3----+----4----+----5----+----6----+----7----+----8----+----9----+----0----+----1----+----2*/
23
24
#ifndef __SCIP_STRUCT_PRIMAL_H__
25
#define __SCIP_STRUCT_PRIMAL_H__
26
27
28
#include "
scip/def.h
"
29
#include "
scip/type_sol.h
"
30
#include "
scip/type_primal.h
"
31
32
#ifdef __cplusplus
33
extern
"C"
{
34
#endif
35
36
/** primal data and solution storage */
37
struct
SCIP_Primal
38
{
39
SCIP_Longint
nsolsfound
;
/**< number of primal CIP solutions found up to now */
40
SCIP_Longint
nlimsolsfound
;
/**< number of primal CIP solutions respecting the objective limit found
41
* up to now */
42
SCIP_Longint
nbestsolsfound
;
/**< number of new best primal CIP solutions found up to now */
43
SCIP_Longint
nlimbestsolsfound
;
/**< number of new best primal CIP solutions respecting the objective limit
44
* found up to now */
45
SCIP_Real
upperbound
;
/**< upper (primal) bound of CIP: objective value of best solution or user bound */
46
SCIP_Real
cutoffbound
;
/**< upper bound for better primal solutions (if objective value is always
47
* integral, cutoffbound is equal to ceil(upperbound) - 1.0 (+eps) */
48
SCIP_SOL
**
sols
;
/**< primal CIP solutions */
49
SCIP_SOL
**
partialsols
;
/**< partial solutions */
50
SCIP_SOL
**
existingsols
;
/**< all existing primal solutions (feasible, partial, and infeasible) */
51
SCIP_SOL
*
currentsol
;
/**< internal solution for temporarily storing the current solution */
52
SCIP_SOL
*
primalray
;
/**< solution representing the primal ray for (infeasible or) unbounded problems;
53
* warning: this does not have to be a feasible solution */
54
int
solssize
;
/**< size of sols array */
55
int
partialsolssize
;
/**< size of partialsols array */
56
int
nsols
;
/**< number of primal CIP solutions stored in sols array */
57
int
npartialsols
;
/**< number of partial solutions stored in partialsol array */
58
int
existingsolssize
;
/**< size of existingsols array */
59
int
nexistingsols
;
/**< number of primal CIP solutions stored in existingsols array */
60
61
SCIP_Bool
updateviolations
;
/**< marks whether the updating of violations is turned on */
62
};
63
64
#ifdef __cplusplus
65
}
66
#endif
67
68
#endif
SCIP_Primal::cutoffbound
SCIP_Real cutoffbound
Definition:
struct_primal.h:46
SCIP_Primal::nsols
int nsols
Definition:
struct_primal.h:56
SCIP_Primal::primalray
SCIP_SOL * primalray
Definition:
struct_primal.h:52
SCIP_Primal::partialsolssize
int partialsolssize
Definition:
struct_primal.h:55
SCIP_Primal::sols
SCIP_SOL ** sols
Definition:
struct_primal.h:48
SCIP_Primal::currentsol
SCIP_SOL * currentsol
Definition:
struct_primal.h:51
SCIP_Primal
Definition:
struct_primal.h:37
SCIP_Primal::npartialsols
int npartialsols
Definition:
struct_primal.h:57
SCIP_Primal::nsolsfound
SCIP_Longint nsolsfound
Definition:
struct_primal.h:39
SCIP_Sol
Definition:
struct_sol.h:63
SCIP_Primal::solssize
int solssize
Definition:
struct_primal.h:54
SCIP_Primal::updateviolations
SCIP_Bool updateviolations
Definition:
struct_primal.h:61
SCIP_Primal::nbestsolsfound
SCIP_Longint nbestsolsfound
Definition:
struct_primal.h:42
SCIP_Primal::nlimbestsolsfound
SCIP_Longint nlimbestsolsfound
Definition:
struct_primal.h:43
SCIP_Bool
#define SCIP_Bool
Definition:
def.h:61
SCIP_Primal::partialsols
SCIP_SOL ** partialsols
Definition:
struct_primal.h:49
type_sol.h
type definitions for storing primal CIP solutions
SCIP_Primal::upperbound
SCIP_Real upperbound
Definition:
struct_primal.h:45
SCIP_Real
#define SCIP_Real
Definition:
def.h:149
SCIP_Longint
#define SCIP_Longint
Definition:
def.h:134
type_primal.h
type definitions for collecting primal CIP solutions and primal informations
def.h
common defines and data types used in all packages of SCIP
SCIP_Primal::nexistingsols
int nexistingsols
Definition:
struct_primal.h:59
SCIP_Primal::existingsolssize
int existingsolssize
Definition:
struct_primal.h:58
SCIP_Primal::nlimsolsfound
SCIP_Longint nlimsolsfound
Definition:
struct_primal.h:40
SCIP_Primal::existingsols
SCIP_SOL ** existingsols
Definition:
struct_primal.h:50