9#ifndef FMTlpheuristicmthandler_Hm_included
10#define FMTlpheuristicmthandler_Hm_included
13#if defined FMTWITHPYTHON
14 #include "boost/python.h"
25 class FMTOperatingAreaScheduler;
26 class FMTOperatingAreaClusterer;
55 #if defined FMTWITHPYTHON
77 size_t greedySolve(
const unsigned int& iterations,
const double& maxtime)
const;
79 double m_initialsolution;
80 std::vector<FMTLpHeuristic*> m_heuristics;
86 size_t _bestHeuristic()
const;
92 void _resetNumberOfThreads(
const unsigned int& ncpu)
const;
#define FMTEXPORT
Definition: FMTutility.h:125
Multithreading handler running several LP heuristics in parallel and keeping the best solution.
Definition: FMTLpHeuristicMtHandler.h:34
FMTLpHeuristicMtHandler()
Default constructor for FMTLpHeuristicMtHandler.
size_t initialSolve() const
Solve each heuristic in parallel to find an initial solution and return the index of the best one.
size_t greedySolve(const unsigned int &iterations, const double &maxtime) const
Improve the solution of each heuristic in parallel with greedy passes and return the index of the bes...
FMTLpHeuristicMtHandler(std::vector< FMTOperatingAreaClusterer > &lheuristics, const double &linitialsolution)
Construct a FMTLpHeuristicMtHandler from operating area clusterers and an initial solution.
FMTLpHeuristicMtHandler(std::vector< FMTOperatingAreaScheduler > &lheuristics, const double &linitialsolution)
Construct a FMTLpHeuristicMtHandler from operating area schedulers and an initial solution.
Namespace regrouping all tools for solving LP/MIP problems using an heuristic.
Definition: FMTAreaParser.h:47