Scippy

    SCIP

    Solving Constraint Integer Programs

    type_nodesel.h File Reference

    Detailed Description

    type definitions for node selectors

    Author
    Tobias Achterberg

    Definition in file type_nodesel.h.

    #include "scip/def.h"
    #include "scip/type_retcode.h"
    #include "scip/type_tree.h"
    #include "scip/type_scip.h"

    Go to the source code of this file.

    Macros

    #define SCIP_DECL_NODESELCOPY(x)   SCIP_RETCODE x (SCIP* scip, SCIP_NODESEL* nodesel)
     
    #define SCIP_DECL_NODESELFREE(x)   SCIP_RETCODE x (SCIP* scip, SCIP_NODESEL* nodesel)
     
    #define SCIP_DECL_NODESELINIT(x)   SCIP_RETCODE x (SCIP* scip, SCIP_NODESEL* nodesel)
     
    #define SCIP_DECL_NODESELEXIT(x)   SCIP_RETCODE x (SCIP* scip, SCIP_NODESEL* nodesel)
     
    #define SCIP_DECL_NODESELINITSOL(x)   SCIP_RETCODE x (SCIP* scip, SCIP_NODESEL* nodesel)
     
    #define SCIP_DECL_NODESELEXITSOL(x)   SCIP_RETCODE x (SCIP* scip, SCIP_NODESEL* nodesel)
     
    #define SCIP_DECL_NODESELSELECT(x)   SCIP_RETCODE x (SCIP* scip, SCIP_NODESEL* nodesel, SCIP_NODE** selnode)
     
    #define SCIP_DECL_NODESELCOMP(x)   int x (SCIP* scip, SCIP_NODESEL* nodesel, SCIP_NODE* node1, SCIP_NODE* node2)
     

    Typedefs

    typedef struct SCIP_NodePQ SCIP_NODEPQ
     
    typedef struct SCIP_Nodesel SCIP_NODESEL
     
    typedef struct SCIP_NodeselData SCIP_NODESELDATA
     

    Macro Definition Documentation

    ◆ SCIP_DECL_NODESELCOPY

    #define SCIP_DECL_NODESELCOPY (   x)    SCIP_RETCODE x (SCIP* scip, SCIP_NODESEL* nodesel)

    copy method for node selector plugins (called when SCIP copies plugins)

    input:

    • scip : SCIP main data structure
    • nodesel : the node selector itself

    Definition at line 61 of file type_nodesel.h.

    ◆ SCIP_DECL_NODESELFREE

    #define SCIP_DECL_NODESELFREE (   x)    SCIP_RETCODE x (SCIP* scip, SCIP_NODESEL* nodesel)

    destructor of node selector to free user data (called when SCIP is exiting)

    input:

    • scip : SCIP main data structure
    • nodesel : the node selector itself

    Definition at line 70 of file type_nodesel.h.

    ◆ SCIP_DECL_NODESELINIT

    #define SCIP_DECL_NODESELINIT (   x)    SCIP_RETCODE x (SCIP* scip, SCIP_NODESEL* nodesel)

    initialization method of node selector (called after problem was transformed)

    input:

    • scip : SCIP main data structure
    • nodesel : the node selector itself

    Definition at line 78 of file type_nodesel.h.

    ◆ SCIP_DECL_NODESELEXIT

    #define SCIP_DECL_NODESELEXIT (   x)    SCIP_RETCODE x (SCIP* scip, SCIP_NODESEL* nodesel)

    deinitialization method of node selector (called before transformed problem is freed)

    input:

    • scip : SCIP main data structure
    • nodesel : the node selector itself

    Definition at line 86 of file type_nodesel.h.

    ◆ SCIP_DECL_NODESELINITSOL

    #define SCIP_DECL_NODESELINITSOL (   x)    SCIP_RETCODE x (SCIP* scip, SCIP_NODESEL* nodesel)

    solving process initialization method of node selector (called when branch and bound process is about to begin)

    This method is called when the presolving was finished and the branch and bound process is about to begin. The node selector may use this call to initialize its branch and bound specific data.

    input:

    • scip : SCIP main data structure
    • nodesel : the node selector itself

    Definition at line 97 of file type_nodesel.h.

    ◆ SCIP_DECL_NODESELEXITSOL

    #define SCIP_DECL_NODESELEXITSOL (   x)    SCIP_RETCODE x (SCIP* scip, SCIP_NODESEL* nodesel)

    solving process deinitialization method of node selector (called before branch and bound process data is freed)

    This method is called before the branch and bound process is freed. The node selector should use this call to clean up its branch and bound data.

    input:

    • scip : SCIP main data structure
    • nodesel : the node selector itself

    Definition at line 108 of file type_nodesel.h.

    ◆ SCIP_DECL_NODESELSELECT

    #define SCIP_DECL_NODESELSELECT (   x)    SCIP_RETCODE x (SCIP* scip, SCIP_NODESEL* nodesel, SCIP_NODE** selnode)

    node selection method of node selector

    This method is called to select the next leaf of the branch and bound tree to be processed.

    input:

    • scip : SCIP main data structure
    • nodesel : the node selector itself
    • selnode : pointer to store the selected node

    possible return values for *selnode:

    • NULL : problem is solved, because tree is empty
    • non-NULL: node to be solved next

    Definition at line 123 of file type_nodesel.h.

    ◆ SCIP_DECL_NODESELCOMP

    #define SCIP_DECL_NODESELCOMP (   x)    int x (SCIP* scip, SCIP_NODESEL* nodesel, SCIP_NODE* node1, SCIP_NODE* node2)

    node comparison method of node selector

    This method is called to compare two nodes regarding their order in the node priority queue.

    input:

    • scip : SCIP main data structure
    • nodesel : the node selector itself
    • node1 : first node to compare
    • node2 : second node to compare

    possible return values:

    • value < 0: node1 comes before (is better than) node2
    • value = 0: both nodes are equally good
    • value > 0: node2 comes after (is worse than) node2

    Definition at line 140 of file type_nodesel.h.

    Typedef Documentation

    ◆ SCIP_NODEPQ

    typedef struct SCIP_NodePQ SCIP_NODEPQ

    node priority queue

    Definition at line 50 of file type_nodesel.h.

    ◆ SCIP_NODESEL

    typedef struct SCIP_Nodesel SCIP_NODESEL

    node selector data structure

    Definition at line 51 of file type_nodesel.h.

    ◆ SCIP_NODESELDATA

    typedef struct SCIP_NodeselData SCIP_NODESELDATA

    node selector specific data

    Definition at line 52 of file type_nodesel.h.