RMOL Logo  0.25.2
C++ library of Revenue Management and Optimisation classes and functions
RMOL::Optimiser Class Reference

#include <rmol/command/Optimiser.hpp>

List of all members.

Static Public Member Functions

static void optimalOptimisationByMCIntegration (const int K, stdair::LegCabin &)
static void optimalOptimisationByDP (stdair::LegCabin &)
static void heuristicOptimisationByEmsr (stdair::LegCabin &)
static void heuristicOptimisationByEmsrA (stdair::LegCabin &)
static void heuristicOptimisationByEmsrB (stdair::LegCabin &)
static void optimise (stdair::FlightDate &)
static void buildVirtualClassListForLegBasedOptimisation (stdair::LegCabin &)
static double optimiseUsingOnDForecast (stdair::FlightDate &, const bool &iReduceFluctuations=false)

Detailed Description

Class wrapping the optimisation algorithms.

Definition at line 18 of file Optimiser.hpp.


Member Function Documentation

void RMOL::Optimiser::optimalOptimisationByMCIntegration ( const int  K,
stdair::LegCabin &  ioLegCabin 
) [static]

Monte Carlo Integration algorithm.
Calculate the optimal protections for the set of buckets/classes given in input, and update those buckets accordingly.
The Monte Carlo Integration algorithm (see The Theory and Practice of Revenue Management, by Kalyan T. Talluri and Garret J. van Ryzin, Kluwer Academic Publishers, for the details) is used. Hence, K is the number of random draws to perform. 100 is a minimum for K, as statistics must be drawn from those random generations.

Definition at line 29 of file Optimiser.cpp.

Referenced by optimise().

void RMOL::Optimiser::optimalOptimisationByDP ( stdair::LegCabin &  ioLegCabin) [static]

Dynamic Programming.

Definition at line 63 of file Optimiser.cpp.

void RMOL::Optimiser::heuristicOptimisationByEmsr ( stdair::LegCabin &  ioLegCabin) [static]

EMRS algorithm.

Definition at line 68 of file Optimiser.cpp.

void RMOL::Optimiser::heuristicOptimisationByEmsrA ( stdair::LegCabin &  ioLegCabin) [static]

EMRS-a algorithm.

Definition at line 73 of file Optimiser.cpp.

void RMOL::Optimiser::heuristicOptimisationByEmsrB ( stdair::LegCabin &  ioLegCabin) [static]

EMRS-b algorithm.

Definition at line 78 of file Optimiser.cpp.

void RMOL::Optimiser::optimise ( stdair::FlightDate &  ioFlightDate) [static]

Optimise a flight-date using leg-based Monte Carlo Integration.

Definition at line 83 of file Optimiser.cpp.

References buildVirtualClassListForLegBasedOptimisation(), and optimalOptimisationByMCIntegration().

void RMOL::Optimiser::buildVirtualClassListForLegBasedOptimisation ( stdair::LegCabin &  ioLegCabin) [static]

Build the virtual class list for the given leg-cabin.

Definition at line 112 of file Optimiser.cpp.

Referenced by optimise().

double RMOL::Optimiser::optimiseUsingOnDForecast ( stdair::FlightDate &  ioFlightDate,
const bool &  iReduceFluctuations = false 
) [static]

The documentation for this class was generated from the following files: