
Custom brancher implementing CDBF. More...
Classes | |
| class | Choice |
| Choice More... | |
Public Member Functions | |
| CDBF (Home home, ViewArray< Int::IntView > &l, ViewArray< Int::IntView > &b, IntSharedArray &s) | |
| Construct brancher. More... | |
| CDBF (Space &home, bool share, CDBF &cdbf) | |
| Copy constructor. More... | |
| virtual Actor * | copy (Space &home, bool share) |
| Copy brancher. More... | |
| virtual size_t | dispose (Space &home) |
| Delete brancher and return its size. More... | |
| virtual bool | status (const Space &) const |
| Check status of brancher, return true if alternatives left. More... | |
| virtual Gecode::Choice * | choice (Space &home) |
| Return choice. More... | |
| virtual const Gecode::Choice * | choice (const Space &home, Archive &e) |
| Return choice. More... | |
| virtual ExecStatus | commit (Space &home, const Gecode::Choice &_c, unsigned int a) |
| Perform commit for choice _c and alternative a. More... | |
| virtual void | print (const Space &, const Gecode::Choice &_c, unsigned int a, std::ostream &o) const |
| Print explanation. More... | |
Public Member Functions inherited from Gecode::Brancher | |
| unsigned int | id (void) const |
| Return unsigned brancher id. More... | |
| virtual NGL * | ngl (Space &home, const Choice &c, unsigned int a) const |
| Create no-good literal for choice c and alternative a. More... | |
Public Member Functions inherited from Gecode::Actor | |
Static Public Member Functions | |
| static BrancherHandle | post (Home home, ViewArray< Int::IntView > &l, ViewArray< Int::IntView > &b, IntSharedArray &s) |
| Brancher post function. More... | |
Static Public Member Functions inherited from Gecode::Actor | |
| static void * | operator new (size_t s, Space &home) |
| Allocate memory from space. More... | |
| static void | operator delete (void *p, Space &home) |
| No-op for exceptions. More... | |
Protected Attributes | |
| ViewArray< Int::IntView > | load |
| Views for the loads. More... | |
| ViewArray< Int::IntView > | bin |
| Views for the bins. More... | |
| IntSharedArray | size |
| Array of sizes (shared) More... | |
| int | item |
| Next view to branch on. More... | |
Additional Inherited Members | |
Protected Member Functions inherited from Gecode::Brancher | |
| Brancher (Home home) | |
| Constructor for creation. More... | |
| Brancher (Space &home, bool share, Brancher &b) | |
| Constructor for cloning b. More... | |
Custom brancher implementing CDBF.
This class implements complete decreasing best fit branching (CDBF) from: Ian Gent and Toby Walsh. From approximate to optimal solutions: Constructing pruning and propagation rules. IJCAI 1997.
Additional domination rules are taken from: Paul Shaw. A Constraint for Bin Packing. CP 2004
Definition at line 189 of file bin-packing.cpp.
|
inline |
Construct brancher.
Definition at line 236 of file bin-packing.cpp.
Copy constructor.
Definition at line 248 of file bin-packing.cpp.
|
inlinestatic |
Brancher post function.
Definition at line 242 of file bin-packing.cpp.
|
inlinevirtual |
Delete brancher and return its size.
Reimplemented from Gecode::Actor.
Definition at line 259 of file bin-packing.cpp.
|
inlinevirtual |
Check status of brancher, return true if alternatives left.
Implements Gecode::Brancher.
Definition at line 265 of file bin-packing.cpp.
|
inlinevirtual |
|
inlinevirtual |
|
inlinevirtual |
Perform commit for choice _c and alternative a.
Implements Gecode::Brancher.
Definition at line 335 of file bin-packing.cpp.
|
inlinevirtual |
Print explanation.
Reimplemented from Gecode::Brancher.
Definition at line 355 of file bin-packing.cpp.
|
protected |
Views for the loads.
Definition at line 192 of file bin-packing.cpp.
|
protected |
Views for the bins.
Definition at line 194 of file bin-packing.cpp.
|
protected |
Array of sizes (shared)
Definition at line 196 of file bin-packing.cpp.
|
mutableprotected |
Next view to branch on.
Definition at line 198 of file bin-packing.cpp.