#include <rmol/RMOL_Service.hpp>
Interface for the RMOL Services.
Definition at line 19 of file RMOL_Service.hpp.
RMOL::RMOL_Service::RMOL_Service | ( | std::ostream & | ioLogStream | ) |
Constructor.
Definition at line 38 of file RMOL_Service.cpp.
RMOL::RMOL_Service::RMOL_Service | ( | std::ostream & | ioLogStream, | |
const ResourceCapacity_T | iResourceCapacity | |||
) |
Definition at line 44 of file RMOL_Service.cpp.
RMOL::RMOL_Service::~RMOL_Service | ( | ) |
Destructor.
Definition at line 51 of file RMOL_Service.cpp.
void RMOL::RMOL_Service::setUpStudyStatManager | ( | ) |
Set up the StudyStatManager.
Definition at line 84 of file RMOL_Service.cpp.
References RMOL::RMOL_ServiceContext::setUpStudyStatManager().
Referenced by main().
void RMOL::RMOL_Service::setResourceCapacity | ( | const ResourceCapacity_T | iResourceCapacity | ) |
Set the cabin availability.
Definition at line 91 of file RMOL_Service.cpp.
void RMOL::RMOL_Service::addBucket | ( | const double | iYieldRange, | |
const double | iDemandMean, | |||
const double | iDemandStandardDev | |||
) |
void RMOL::RMOL_Service::addBucket | ( | const double | iYieldRange, | |
const double | iDemandMean, | |||
const double | iDemandStandardDev, | |||
GeneratedDemandVector_T * | ioGeneratedDemandVector | |||
) |
Add a bucket to the context.
Definition at line 106 of file RMOL_Service.cpp.
GeneratedDemandVector_T * RMOL::RMOL_Service::generateDemand | ( | const int | K, | |
const double & | iMean, | |||
const double & | iDeviation | |||
) |
Generate demand for a given (Gaussian) distribution.
Definition at line 117 of file RMOL_Service.cpp.
GeneratedDemandVector_T * RMOL::RMOL_Service::generateDemand | ( | GeneratedDemandVector_T * | ioFirstVector, | |
GeneratedDemandVector_T * | ioSecondVector | |||
) |
Sum the two generated demand vectors .
Definition at line 123 of file RMOL_Service.cpp.
void RMOL::RMOL_Service::readFromInputFile | ( | const std::string & | iInputFileName | ) |
Read the input data from a file.
Definition at line 129 of file RMOL_Service.cpp.
Referenced by main().
void RMOL::RMOL_Service::buildContextForMC | ( | const int | K | ) |
Build the context with the generated demand for Monte-Carlo Integration algorithm.
Definition at line 135 of file RMOL_Service.cpp.
Referenced by main().
void RMOL::RMOL_Service::reset | ( | ) |
Clear the context (cabin capacity, bucket holder).
Definition at line 141 of file RMOL_Service.cpp.
void RMOL::RMOL_Service::optimalOptimisationByMCIntegration | ( | const int | K | ) |
Single resource optimization using the Monte Carlo algorithm.
Definition at line 148 of file RMOL_Service.cpp.
References RMOL::StudyStatManager::describe(), RMOL::BucketHolder::display(), and RMOL_LOG_DEBUG.
Referenced by main(), and optimalOptimisationByMCIntegration().
void RMOL::RMOL_Service::optimalOptimisationByMCIntegration | ( | const int | K, | |
BidPriceVector_T & | ioBidPriceVector, | |||
BookingLimitVector_T & | ioBookingLimitVector | |||
) |
Single resource optimization that uses Monte-Carlo algorithm and returns a vector of cumulated booking limits.
Definition at line 189 of file RMOL_Service.cpp.
References RMOL::BucketHolder::fillup(), and optimalOptimisationByMCIntegration().
void RMOL::RMOL_Service::optimalOptimisationByDP | ( | ) |
Single resource optimization using dynamic programming.
Definition at line 208 of file RMOL_Service.cpp.
References RMOL::BucketHolder::display(), and RMOL_LOG_DEBUG.
Referenced by main(), and optimalOptimisationByDP().
void RMOL::RMOL_Service::optimalOptimisationByDP | ( | BookingLimitVector_T & | ioBookingLimitVector | ) |
Single resource optimization that uses dynamic programming and returns a vector of cumulated booking limits.
Definition at line 223 of file RMOL_Service.cpp.
References RMOL::BucketHolder::fillup(), and optimalOptimisationByDP().
void RMOL::RMOL_Service::heuristicOptimisationByEmsr | ( | ) |
Single resource optimization using EMSR heuristic.
Definition at line 237 of file RMOL_Service.cpp.
References RMOL::StudyStatManager::describe(), RMOL::BucketHolder::display(), and RMOL_LOG_DEBUG.
Referenced by heuristicOptimisationByEmsr(), and main().
void RMOL::RMOL_Service::heuristicOptimisationByEmsr | ( | BidPriceVector_T & | ioBidPriceVector, | |
BookingLimitVector_T & | ioBookingLimitVector | |||
) |
Single resource optimization that uses EMSR heuristic and returns a bid-price vector and a vector of cumulated booking limits.
Definition at line 275 of file RMOL_Service.cpp.
References RMOL::BucketHolder::begin(), RMOL::Bucket::getCumulatedBookingLimit(), RMOL::BucketHolder::getCurrentBucket(), RMOL::BucketHolder::hasNotReachedEnd(), heuristicOptimisationByEmsr(), and RMOL::BucketHolder::iterate().
void RMOL::RMOL_Service::heuristicOptimisationByEmsrA | ( | ) |
Single resource optimization using EMSR-a heuristic.
Definition at line 296 of file RMOL_Service.cpp.
References RMOL::BucketHolder::display(), and RMOL_LOG_DEBUG.
Referenced by heuristicOptimisationByEmsrA(), and main().
void RMOL::RMOL_Service::heuristicOptimisationByEmsrA | ( | BidPriceVector_T & | ioBidPriceVector, | |
BookingLimitVector_T & | ioBookingLimitVector | |||
) |
Single resource optimization that uses EMSR-a heuristic and returns a vector of cumulated booking limits.
Definition at line 310 of file RMOL_Service.cpp.
References RMOL::BucketHolder::fillup(), and heuristicOptimisationByEmsrA().
void RMOL::RMOL_Service::heuristicOptimisationByEmsrAwithSellup | ( | SellupProbabilityVector_T & | iSellupProbabilityVector | ) |
Single resource optimization with sellup using EMSR-a heuristic.
Definition at line 325 of file RMOL_Service.cpp.
References RMOL::BucketHolder::display(), RMOL::Optimiser::heuristicOptimisationByEmsrAwithSellup(), and RMOL_LOG_DEBUG.
Referenced by main().
void RMOL::RMOL_Service::heuristicOptimisationByEmsrAwithSellup | ( | SellupProbabilityVector_T & | iSellupProbabilityVector, | |
BidPriceVector_T & | ioBidPriceVector, | |||
BookingLimitVector_T & | ioBookingLimitVector | |||
) |
Single resource optimization with sellup that uses EMSR-a heuristic and returns a vector of cumulated booking limits.
Definition at line 344 of file RMOL_Service.cpp.
References RMOL::BucketHolder::fillup(), and RMOL::Optimiser::heuristicOptimisationByEmsrAwithSellup().
void RMOL::RMOL_Service::heuristicOptimisationByEmsrB | ( | ) |
Single resource optimization using EMSR-b heuristic.
Definition at line 364 of file RMOL_Service.cpp.
References RMOL::BucketHolder::display(), and RMOL_LOG_DEBUG.
Referenced by heuristicOptimisationByEmsrB(), and main().
void RMOL::RMOL_Service::heuristicOptimisationByEmsrB | ( | BidPriceVector_T & | ioBidPriceVector, | |
BookingLimitVector_T & | ioBookingLimitVector | |||
) |
Single resource optimization that uses EMSR-b heuristic and returns a vector of cumulated booking limits.
Definition at line 378 of file RMOL_Service.cpp.
References RMOL::BucketHolder::fillup(), and heuristicOptimisationByEmsrB().
void RMOL::RMOL_Service::legOptimisationByMC | ( | ) |
Leg optimisation using Monte-Carlo Integration as a step in network optimisation.
Definition at line 392 of file RMOL_Service.cpp.
References RMOL::BucketHolder::display(), and RMOL_LOG_DEBUG.
Referenced by legOptimisationByMC(), and main().
void RMOL::RMOL_Service::legOptimisationByMC | ( | BidPriceVector_T & | ioBidPriceVector, | |
BookingLimitVector_T & | ioBookingLimitVector | |||
) |
Leg optimisation using Monte-Carlo Integration as a step in network optimisation.
Definition at line 417 of file RMOL_Service.cpp.
References RMOL::BucketHolder::fillup(), and legOptimisationByMC().
void RMOL::RMOL_Service::demandUnconstrainingByExpectationMaximization | ( | ) |
Demand unconstraining by Expectation Maximization
void RMOL::RMOL_Service::demandForecastByQForecasting | ( | HistoricalDataHolderHolder_T & | iHistoricalDataHolderHolder, | |
PriceHolder_T & | iPriceHolder | |||
) |
Demand forecast using Q-Forecasting [used in unit tests]
Definition at line 443 of file RMOL_Service.cpp.
References RMOL_LOG_DEBUG.
void RMOL::RMOL_Service::demandForecastByQForecasting | ( | ForecastedDemandParameterList_T | oForecastedDemandParameterList, | |
HistoricalDataHolderHolder_T & | iHistoricalDataHolderHolder, | |||
PriceHolder_T & | iPriceHolder | |||
) |
Demand forecast using Q-Forecasting
Definition at line 481 of file RMOL_Service.cpp.
References RMOL::Forecaster::demandForecastByQForecasting().
Generated on Sun Mar 7 13:11:57 2010 for RMOL by Doxygen 1.6.1