MineLink
 All Data Structures Functions Variables Pages
gurobi_bz.h
1 #ifndef __GUROBIBZ_H__
2 #define __GUROBIBZ_H__
3 
4 #include "bz.h"
5 #include "gurobi_model.h"
6 
7 
8 
9 namespace delphos{
10 
15 class GurobiBZ: public BZ {
16 private:
17  bool SetFractionalSchedule();
18  double _prec;
19 public:
27  GurobiBZ(delphos::SchedulingInstance& si,const double& precision=0.00001,delphos::FinalPitSolver* fps=NULL);
28 
29 
30  //PseudoFlowScheduler(delphos::SchedulingInstance& si,delphos::FinalPitSolver* fps, map<BlockIndexType,double>& assigned_vars);
31 
35  virtual ~GurobiBZ();
36 
37  //void SetLPAsPitSolver();
38 
39  /*static const int MAXIMIZE=-1;
40  static const int MINIMIZE=1;
41  static const int FEASIBILITY=1;
42  static const int OPTIMALITY=2;
43  static const int BESTBOUND=3;
44  static const int BALANCED=0;*/
45 
49  bool Run();
50 
57  void SetRelaxedSol(GurobiModel* gmodel,const vector<BlockSelection>& partition,const bool& bComputeExpectedTime);
58 
63 };
64 }
65 #endif
Dummy class that define required methods for a Bienstock Zuckerberg solver of a scheduling instance...
Definition: bz.h:14
Defines a scheduling instance to be solved.
Definition: instance.h:41
void SetRelaxedSol(GurobiModel *gmodel, const vector< BlockSelection > &partition, const bool &bComputeExpectedTime)
Set the relaxed solution.
Definition: gurobi_bz.cpp:2232
virtual ~GurobiBZ()
The destructor.
Definition: gurobi_bz.cpp:2569
A fractional Scheduler class based on Bienstock-Zuckerberg algorithm and Gurobi for solving its sub p...
Definition: gurobi_bz.h:15
Defines a fractional scheduling of blocks.
Definition: fractional_schedule.h:22
GurobiBZ(delphos::SchedulingInstance &si, const double &precision=0.00001, delphos::FinalPitSolver *fps=NULL)
Creates a fractional Scheduler class based on Bienstock-Zuckerberg algorithm and Gurobi for solving i...
Definition: gurobi_bz.cpp:16
A dummy class that specifies the methods of an algorithm that can solve a final pit instance...
Definition: fp.h:57
const delphos::FractionalSchedule & GetFractionalSchedule()
Returns the result fractional schedule.
Definition: gurobi_bz.cpp:2573
bool Run()
Creates the model and run the BZ algorithm.
Definition: gurobi_bz.cpp:217