SCIP Doxygen Documentation
Loading...
Searching...
No Matches
branch_pscost.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-2024 Zuse Institute Berlin (ZIB) */
7
/* */
8
/* Licensed under the Apache License, Version 2.0 (the "License"); */
9
/* you may not use this file except in compliance with the License. */
10
/* You may obtain a copy of the License at */
11
/* */
12
/* http://www.apache.org/licenses/LICENSE-2.0 */
13
/* */
14
/* Unless required by applicable law or agreed to in writing, software */
15
/* distributed under the License is distributed on an "AS IS" BASIS, */
16
/* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. */
17
/* See the License for the specific language governing permissions and */
18
/* limitations under the License. */
19
/* */
20
/* You should have received a copy of the Apache-2.0 license */
21
/* along with SCIP; see the file LICENSE. If not visit scipopt.org. */
22
/* */
23
/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
24
25
/**@file branch_pscost.h
26
* @ingroup BRANCHINGRULES
27
* @brief pseudo costs branching rule
28
* @author Tobias Achterberg
29
*
30
* The pseudo costs branching rule selects the branching variable with respect to the so-called pseudo costs
31
* of the variables. Pseudo costs measure the average gain per unit in the objective function when the variable
32
* was branched on upwards or downwards, resp. The required information is updated at every node of
33
* the solving process.
34
*
35
* The selected variable maximizes the expected gain of the dual bound in the created subtree.
36
*
37
* For a more mathematical description and a comparison between the pseudo costs branching rule
38
* and other branching rules in SCIP, we refer to
39
*
40
* @par
41
* Tobias Achterberg@n
42
* Constraint Integer Programming@n
43
* PhD Thesis, Technische Universität Berlin, 2007@n
44
*/
45
46
/*---+----1----+----2----+----3----+----4----+----5----+----6----+----7----+----8----+----9----+----0----+----1----+----2*/
47
48
#ifndef __SCIP_BRANCH_PSCOST_H__
49
#define __SCIP_BRANCH_PSCOST_H__
50
51
52
#include "
scip/def.h
"
53
#include "
scip/type_retcode.h
"
54
#include "
scip/type_scip.h
"
55
#include "
scip/type_var.h
"
56
57
#ifdef __cplusplus
58
extern
"C"
{
59
#endif
60
61
/** creates the pseudo cost branching rule and includes it in SCIP
62
*
63
* @ingroup BranchingRuleIncludes
64
*/
65
SCIP_EXPORT
66
SCIP_RETCODE
SCIPincludeBranchrulePscost
(
67
SCIP
*
scip
/**< SCIP data structure */
68
);
69
70
/**@addtogroup BRANCHINGRULES
71
*
72
* @{
73
*/
74
75
/** selects a branching variable, due to pseudo cost, from the given candidate array and returns this variable together
76
* with a branching point */
77
SCIP_EXPORT
78
SCIP_RETCODE
SCIPselectBranchVarPscost
(
79
SCIP
*
scip
,
/**< SCIP data structure */
80
SCIP_VAR
**
branchcands
,
/**< branching candidates */
81
SCIP_Real*
branchcandssol
,
/**< solution value for the branching candidates */
82
SCIP_Real*
branchcandsscore
,
/**< array of candidate scores */
83
int
nbranchcands
,
/**< number of branching candidates */
84
SCIP_VAR
**
var
,
/**< pointer to store the variable to branch on, or NULL if none */
85
SCIP_Real*
brpoint
/**< pointer to store the branching point for the branching variable, will be fractional for a discrete variable */
86
);
87
88
/** @} */
89
90
#ifdef __cplusplus
91
}
92
#endif
93
94
#endif
def.h
common defines and data types used in all packages of SCIP
SCIPselectBranchVarPscost
SCIP_RETCODE SCIPselectBranchVarPscost(SCIP *scip, SCIP_VAR **branchcands, SCIP_Real *branchcandssol, SCIP_Real *branchcandsscore, int nbranchcands, SCIP_VAR **var, SCIP_Real *brpoint)
Definition
branch_pscost.c:814
SCIPincludeBranchrulePscost
SCIP_RETCODE SCIPincludeBranchrulePscost(SCIP *scip)
Definition
branch_pscost.c:751
var
SCIP_VAR * var
Definition
heur_objpscostdiving.c:264
i
int i
Definition
heur_rootsoldiving.c:212
scip
Definition
objbenders.h:44
SCIP_Var
Definition
struct_var.h:208
Scip
Definition
struct_scip.h:70
type_retcode.h
type definitions for return codes for SCIP methods
SCIP_RETCODE
enum SCIP_Retcode SCIP_RETCODE
Definition
type_retcode.h:63
type_scip.h
type definitions for SCIP's main datastructure
type_var.h
type definitions for problem variables
branch_pscost.h
© 2002-2024 by Zuse Institute Berlin (ZIB),
Imprint
Generated by
1.10.0