#include <KnapModel.h>
Public Member Functions | |
KnapModel () | |
KnapModel (int cap, std::vector< std::pair< int, int > > items, int *seq) | |
~KnapModel () | |
int | getCapacity () const |
Get the capacity of the knapsack. | |
int | getNumItems () const |
Get the number of items in the knapsack. | |
int * | getSequence () const |
Get the sequence of items in the knapsack. | |
virtual void | readParameters (const int argnum, const char *const *arglist) |
Read in Alps and Knap parameters. | |
std::pair< int, int > | getItem (int i) const |
Get the size of item i. | |
void | setCapacity (int capacity) |
Set the capacity of the knapsack. | |
void | setSequence (const int *seq) |
Set the sequence of items in the knapsack. | |
void | addItem (int size, int cost) |
Set the size of item i. | |
void | readInstance (const char *dataFile) |
Read in the problem data. | |
void | orderItems () |
Order the items based on their cost/size. | |
virtual AlpsEncoded * | encode () const |
The method that encodes the solution into a buffer. | |
virtual void | decodeToSelf (AlpsEncoded &) |
The method that decodes model data from the encoded form and fill member data. | |
Private Attributes | |
int | capacity_ |
Capacity of the knapsack. | |
std::vector< std::pair< int, int > > | items_ |
List of sizes and profits of the items. | |
int * | sequence_ |
The descent sequence based on ratio: profit/size. | |
KnapParams * | KnapPar_ |
Knap parameters. |
Definition at line 26 of file KnapModel.h.
KnapModel::KnapModel | ( | ) | [inline] |
Definition at line 44 of file KnapModel.h.
KnapModel::KnapModel | ( | int | cap, | |
std::vector< std::pair< int, int > > | items, | |||
int * | seq | |||
) | [inline] |
Definition at line 45 of file KnapModel.h.
KnapModel::~KnapModel | ( | ) | [inline] |
Definition at line 52 of file KnapModel.h.
int KnapModel::getCapacity | ( | ) | const [inline] |
Get the capacity of the knapsack.
Definition at line 61 of file KnapModel.h.
int KnapModel::getNumItems | ( | ) | const [inline] |
Get the number of items in the knapsack.
Definition at line 64 of file KnapModel.h.
int* KnapModel::getSequence | ( | ) | const [inline] |
Get the sequence of items in the knapsack.
Definition at line 67 of file KnapModel.h.
virtual void KnapModel::readParameters | ( | const int | argnum, | |
const char *const * | arglist | |||
) | [inline, virtual] |
Read in Alps and Knap parameters.
Reimplemented from AlpsModel.
Definition at line 72 of file KnapModel.h.
std::pair<int, int> KnapModel::getItem | ( | int | i | ) | const [inline] |
Get the size of item i.
Definition at line 83 of file KnapModel.h.
void KnapModel::setCapacity | ( | int | capacity | ) | [inline] |
Set the capacity of the knapsack.
Definition at line 88 of file KnapModel.h.
void KnapModel::setSequence | ( | const int * | seq | ) |
Set the sequence of items in the knapsack.
void KnapModel::addItem | ( | int | size, | |
int | cost | |||
) | [inline] |
Set the size of item i.
Definition at line 94 of file KnapModel.h.
void KnapModel::readInstance | ( | const char * | dataFile | ) | [virtual] |
Read in the problem data.
Reimplemented from AlpsModel.
void KnapModel::orderItems | ( | ) |
Order the items based on their cost/size.
virtual AlpsEncoded* KnapModel::encode | ( | ) | const [virtual] |
The method that encodes the solution into a buffer.
Reimplemented from AlpsKnowledge.
virtual void KnapModel::decodeToSelf | ( | AlpsEncoded & | ) | [virtual] |
The method that decodes model data from the encoded form and fill member data.
Reimplemented from AlpsModel.
int KnapModel::capacity_ [private] |
Capacity of the knapsack.
Definition at line 31 of file KnapModel.h.
std::vector< std::pair<int, int> > KnapModel::items_ [private] |
List of sizes and profits of the items.
Definition at line 34 of file KnapModel.h.
int* KnapModel::sequence_ [private] |
The descent sequence based on ratio: profit/size.
Definition at line 37 of file KnapModel.h.
KnapParams* KnapModel::KnapPar_ [private] |
Knap parameters.
Definition at line 40 of file KnapModel.h.