All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
nodesel.h File Reference Detailed Descriptioninternal methods for node selectors and node priority queues Definition in file nodesel.h. #include "scip/def.h" #include "blockmemshell/memory.h" #include "scip/type_retcode.h" #include "scip/type_set.h" #include "scip/type_stat.h" #include "scip/type_lp.h" #include "scip/type_tree.h" #include "scip/pub_nodesel.h" Go to the source code of this file. Function Documentation
creates node priority queue
Definition at line 94 of file nodesel.c. References BMSallocMemory, NULL, SCIP_ALLOC, and SCIP_OKAY. Referenced by SCIPnodepqSetNodesel(), and SCIPtreeCreate().
frees node priority queue, but not the data nodes themselves
Definition at line 115 of file nodesel.c. References BMSfreeMemory, BMSfreeMemoryArrayNull, and NULL. Referenced by SCIPnodepqFree(), and SCIPnodepqSetNodesel().
frees node priority queue and all nodes in the queue
Definition at line 129 of file nodesel.c. References NULL, SCIP_CALL, SCIP_OKAY, SCIPnodepqClear(), and SCIPnodepqDestroy(). Referenced by SCIPtreeFree().
deletes all nodes in the node priority queue
Definition at line 152 of file nodesel.c. References SCIP_NodePQ::len, SCIP_NodePQ::lowerboundsum, NULL, SCIP_CALL, SCIP_NODETYPE_LEAF, SCIP_OKAY, SCIPnodeFree(), SCIPnodeGetType(), SCIPsortDownPtr(), and SCIP_NodePQ::slots. Referenced by SCIPnodepqFree(), and SCIPtreeClear().
returns the node selector associated with the given node priority queue
Definition at line 192 of file nodesel.c. References SCIP_NodePQ::nodesel, and NULL. Referenced by SCIPtreeGetBestChild(), SCIPtreeGetBestNode(), SCIPtreeGetBestSibling(), SCIPtreeGetNodesel(), and SCIPtreeSetNodesel().
sets the node selector used for sorting the nodes in the queue, and resorts the queue if necessary
Definition at line 202 of file nodesel.c. References SCIP_NodePQ::len, nodepqResize(), NULL, SCIP_CALL, SCIP_OKAY, SCIPnodepqCreate(), SCIPnodepqDestroy(), SCIPnodepqInsert(), and SCIP_NodePQ::slots. Referenced by SCIPtreeSetNodesel().
compares two nodes; returns -1/0/+1 if node1 better/equal/worse than node2
Definition at line 242 of file nodesel.c. References SCIP_NodePQ::nodesel, NULL, and SCIPnodeselCompare(). Referenced by SCIPnodeFocus().
inserts node into node priority queue
Definition at line 258 of file nodesel.c. References SCIP_NodePQ::bfsposs, SCIP_NodePQ::bfsqueue, SCIP_NodePQ::len, SCIP_NodePQ::lowerboundsum, nodepqResize(), SCIP_NodePQ::nodesel, NULL, PQ_PARENT, SCIP_CALL, SCIP_OKAY, SCIP_Real, SCIPdebugMessage, SCIPnodeGetLowerbound(), and SCIP_NodePQ::slots. Referenced by nodeToLeaf(), and SCIPnodepqSetNodesel().
removes node from the node priority queue
Definition at line 502 of file nodesel.c. References nodepqDelPos(), nodepqFindNode(), SCIP_INVALIDDATA, SCIP_OKAY, and SCIPerrorMessage. Referenced by SCIPnodeFocus().
returns the best node of the queue without removing it
Definition at line 523 of file nodesel.c. References SCIP_NodePQ::len, NULL, and SCIP_NodePQ::slots. Referenced by SCIPtreeGetBestLeaf().
returns the nodes array of the queue
Definition at line 539 of file nodesel.c. References NULL, and SCIP_NodePQ::slots. Referenced by SCIPgetLeaves(), and SCIPgetOpenNodesData().
returns the number of nodes stored in the node priority queue
Definition at line 549 of file nodesel.c. References SCIP_NodePQ::len, and NULL. Referenced by SCIPgetLeaves(), SCIPgetNLeaves(), SCIPgetOpenNodesData(), and SCIPtreeGetNLeaves().
gets the minimal lower bound of all nodes in the queue
Definition at line 560 of file nodesel.c. References SCIP_NodePQ::bfsqueue, SCIP_NodePQ::len, SCIP_NodePQ::nodesel, NULL, SCIPnodeGetLowerbound(), SCIPsetInfinity(), and SCIP_NodePQ::slots. Referenced by SCIPtreeGetLowerbound().
gets the node with minimal lower bound of all nodes in the queue
Definition at line 583 of file nodesel.c. References SCIP_NodePQ::bfsqueue, SCIP_NodePQ::len, SCIP_NodePQ::nodesel, NULL, and SCIP_NodePQ::slots. Referenced by SCIPtreeGetLowerboundNode().
gets the sum of lower bounds of all nodes in the queue
Definition at line 607 of file nodesel.c. References SCIP_NodePQ::lowerboundsum, and NULL. Referenced by SCIPtreeGetAvgLowerbound().
free all nodes from the queue that are cut off by the given upper bound
Definition at line 617 of file nodesel.c. References SCIP_NodePQ::len, nodepqDelPos(), NULL, PQ_LEFTCHILD, PQ_RIGHTCHILD, SCIP_Bool, SCIP_CALL, SCIP_NODETYPE_LEAF, SCIP_OKAY, SCIPdebugMessage, SCIPnodeFree(), SCIPnodeGetDepth(), SCIPnodeGetLowerbound(), SCIPnodeGetType(), SCIPsetIsGE(), SCIPsetIsLT(), SCIPvbcCutoffNode(), SCIP_NodePQ::slots, and SCIP_Stat::vbc. Referenced by SCIPtreeCutoff().
copies the given node selector to a new scip
Definition at line 717 of file nodesel.c. References NULL, SCIP_CALL, SCIP_OKAY, SCIPdebugMessage, and SCIPnodeselGetName(). Referenced by SCIPsetCopyPlugins().
creates a node selector
Definition at line 735 of file nodesel.c. References BMSallocMemory, BMSduplicateMemoryArray, FALSE, NULL, paramname, SCIP_ALLOC, SCIP_CALL, SCIP_CLOCKTYPE_DEFAULT, SCIP_MAXSTRLEN, SCIP_OKAY, SCIPclockCreate(), SCIPsetAddIntParam(), SCIPsnprintf(), and TRUE. Referenced by SCIPincludeNodesel(), and SCIPincludeNodeselBasic().
frees memory of node selector
Definition at line 800 of file nodesel.c. References BMSfreeMemory, BMSfreeMemoryArray, NULL, SCIP_CALL, SCIP_OKAY, and SCIPclockFree(). Referenced by SCIPsetFree().
initializes node selector
Definition at line 828 of file nodesel.c. References SCIP_Nodesel::initialized, SCIP_Nodesel::name, SCIP_Nodesel::nodeseltime, NULL, SCIP_CALL, SCIP_INVALIDCALL, SCIP_OKAY, SCIPclockReset(), SCIPclockStart(), SCIPclockStop(), SCIPerrorMessage, SCIP_Nodesel::setuptime, and TRUE. Referenced by SCIPsetInitPlugins().
deinitializes node selector
Definition at line 864 of file nodesel.c. References FALSE, SCIP_Nodesel::initialized, SCIP_Nodesel::name, NULL, SCIP_CALL, SCIP_INVALIDCALL, SCIP_OKAY, SCIPclockStart(), SCIPclockStop(), SCIPerrorMessage, and SCIP_Nodesel::setuptime. Referenced by SCIPsetExitPlugins().
informs node selector that the branch and bound process is being started
Definition at line 894 of file nodesel.c. References NULL, SCIP_CALL, SCIP_OKAY, SCIPclockStart(), SCIPclockStop(), and SCIP_Nodesel::setuptime. Referenced by SCIPsetInitsolPlugins().
informs node selector that the branch and bound process data is being freed
Definition at line 918 of file nodesel.c. References NULL, SCIP_CALL, SCIP_OKAY, SCIPclockStart(), SCIPclockStop(), and SCIP_Nodesel::setuptime. Referenced by SCIPsetExitsolPlugins().
select next node to be processed
Definition at line 942 of file nodesel.c. References SCIP_Nodesel::nodeseltime, NULL, SCIP_CALL, SCIP_OKAY, SCIPclockStart(), and SCIPclockStop(). Referenced by SCIPsolveCIP().
compares two nodes; returns -1/0/+1 if node1 better/equal/worse than node2
Definition at line 965 of file nodesel.c. References NULL. Referenced by SCIPnodepqCompare(), SCIPtreeGetBestChild(), SCIPtreeGetBestNode(), and SCIPtreeGetBestSibling().
sets priority of node selector in standard mode gets priority of node selector in standard mode
Definition at line 1012 of file nodesel.c. References NULL, and SCIP_Nodesel::stdpriority. Referenced by SCIPsetNodeselStdPriority().
sets priority of node selector in memory saving mode
Definition at line 1036 of file nodesel.c. References SCIP_Nodesel::memsavepriority, and NULL. Referenced by SCIPsetNodeselMemsavePriority().
sets copy method of node selector
Definition at line 1073 of file nodesel.c. References NULL. Referenced by SCIPsetNodeselCopy().
sets destructor method of node selector
Definition at line 1084 of file nodesel.c. References NULL. Referenced by SCIPsetNodeselFree().
sets initialization method of node selector
Definition at line 1095 of file nodesel.c. References NULL. Referenced by SCIPsetNodeselInit().
sets deinitialization method of node selector
Definition at line 1106 of file nodesel.c. References NULL. Referenced by SCIPsetNodeselExit().
sets solving process initialization method of node selector
Definition at line 1117 of file nodesel.c. References NULL. Referenced by SCIPsetNodeselInitsol().
sets solving process deinitialization method of node selector
Definition at line 1128 of file nodesel.c. References NULL. Referenced by SCIPsetNodeselExitsol(). |