SUMO - Simulation of Urban MObility
ROMAAssignments Class Reference

assignment methods More...

#include <ROMAAssignments.h>

Collaboration diagram for ROMAAssignments:
Collaboration graph

Public Member Functions

double capacityConstraintFunction (const ROEdge *edge, const double flow) const
 
ROVehiclegetDefaultVehicle ()
 
void incremental (const int numIter, const bool verbose)
 
void resetFlows ()
 
 ROMAAssignments (const SUMOTime begin, const SUMOTime end, const bool additiveTraffic, const double adaptionFactor, RONet &net, ODMatrix &matrix, SUMOAbstractRouter< ROEdge, ROVehicle > &router)
 Constructor. More...
 
void sue (const int maxOuterIteration, const int maxInnerIteration, const int kPaths, const double penalty, const double tolerance, const std::string routeChoiceMethod)
 
void ue ()
 
 ~ROMAAssignments ()
 Destructor. More...
 

Static Public Member Functions

static double getCapacity (const ROEdge *edge)
 
static double getPenalizedEffort (const ROEdge *const e, const ROVehicle *const v, double t)
 Returns the effort to pass an edge including penalties. More...
 
static double getPenalizedTT (const ROEdge *const e, const ROVehicle *const v, double t)
 Returns the traveltime on an edge including penalties. More...
 
static double getTravelTime (const ROEdge *const e, const ROVehicle *const v, double t)
 Returns the traveltime on an edge without penalties. More...
 

Private Member Functions

bool addRoute (ConstROEdgeVector &edges, std::vector< RORoute *> &paths, std::string routeId, double prob)
 add a route and check for duplicates More...
 
void getKPaths (const int kPaths, const double penalty)
 get the k shortest paths More...
 
ROMAAssignmentsoperator= (const ROMAAssignments &src)
 Invalidated assignment operator. More...
 

Private Attributes

const double myAdaptionFactor
 
const bool myAdditiveTraffic
 
const SUMOTime myBegin
 
ROVehiclemyDefaultVehicle
 
const SUMOTime myEnd
 
ODMatrixmyMatrix
 
RONetmyNet
 
SUMOAbstractRouter< ROEdge, ROVehicle > & myRouter
 

Static Private Attributes

static std::map< const ROEdge *const, double > myPenalties
 

Detailed Description

assignment methods

Definition at line 51 of file ROMAAssignments.h.

Constructor & Destructor Documentation

◆ ROMAAssignments()

ROMAAssignments::ROMAAssignments ( const SUMOTime  begin,
const SUMOTime  end,
const bool  additiveTraffic,
const double  adaptionFactor,
RONet net,
ODMatrix matrix,
SUMOAbstractRouter< ROEdge, ROVehicle > &  router 
)

Constructor.

Definition at line 50 of file ROMAAssignments.cpp.

References DEFAULT_VTYPE_ID, RONet::getVehicleTypeSecure(), and myDefaultVehicle.

◆ ~ROMAAssignments()

ROMAAssignments::~ROMAAssignments ( )

Destructor.

Definition at line 58 of file ROMAAssignments.cpp.

References myDefaultVehicle.

Member Function Documentation

◆ addRoute()

bool ROMAAssignments::addRoute ( ConstROEdgeVector edges,
std::vector< RORoute *> &  paths,
std::string  routeId,
double  prob 
)
private

add a route and check for duplicates

Definition at line 168 of file ROMAAssignments.cpp.

Referenced by getDefaultVehicle(), getKPaths(), incremental(), and sue().

◆ capacityConstraintFunction()

double ROMAAssignments::capacityConstraintFunction ( const ROEdge edge,
const double  flow 
) const

◆ getCapacity()

double ROMAAssignments::getCapacity ( const ROEdge edge)
static

◆ getDefaultVehicle()

◆ getKPaths()

void ROMAAssignments::getKPaths ( const int  kPaths,
const double  penalty 
)
private

◆ getPenalizedEffort()

double ROMAAssignments::getPenalizedEffort ( const ROEdge *const  e,
const ROVehicle *const  v,
double  t 
)
static

Returns the effort to pass an edge including penalties.

This method is given to the used router in order to obtain the efforts to pass an edge from the internal edge weights container.

Parameters
[in]eThe edge for which the effort to be passed shall be returned
[in]vThe (default) vehicle that is routed
[in]tThe time for which the effort shall be returned
Returns
The effort (time to pass in this case) for an edge
See also
DijkstraRouter_ByProxi

Definition at line 419 of file ROMAAssignments.cpp.

References ROEdge::getEffort(), and myPenalties.

Referenced by computeRoutes(), and getDefaultVehicle().

◆ getPenalizedTT()

double ROMAAssignments::getPenalizedTT ( const ROEdge *const  e,
const ROVehicle *const  v,
double  t 
)
static

Returns the traveltime on an edge including penalties.

This method is given to the used router in order to obtain the efforts to pass an edge from the internal edge weights container.

Parameters
[in]eThe edge for which the effort to be passed shall be returned
[in]vThe (default) vehicle that is routed
[in]tThe time for which the effort shall be returned
Returns
The effort (time to pass in this case) for an edge
See also
DijkstraRouter_ByProxi

Definition at line 426 of file ROMAAssignments.cpp.

References ROEdge::getTravelTime(), and myPenalties.

Referenced by computeRoutes(), and getDefaultVehicle().

◆ getTravelTime()

double ROMAAssignments::getTravelTime ( const ROEdge *const  e,
const ROVehicle *const  v,
double  t 
)
static

Returns the traveltime on an edge without penalties.

This method is given to the used router in order to obtain the efforts to pass an edge from the internal edge weights container.

Parameters
[in]eThe edge for which the effort to be passed shall be returned
[in]vThe (default) vehicle that is routed
[in]tThe time for which the effort shall be returned
Returns
The effort (time to pass in this case) for an edge
See also
DijkstraRouter_ByProxi

Definition at line 433 of file ROMAAssignments.cpp.

References ROEdge::getTravelTime(), myBegin, and toString().

Referenced by computeRoutes(), and getDefaultVehicle().

◆ incremental()

◆ operator=()

ROMAAssignments& ROMAAssignments::operator= ( const ROMAAssignments src)
private

Invalidated assignment operator.

◆ resetFlows()

◆ sue()

◆ ue()

void ROMAAssignments::ue ( )

Referenced by getDefaultVehicle().

Field Documentation

◆ myAdaptionFactor

const double ROMAAssignments::myAdaptionFactor
private

Definition at line 132 of file ROMAAssignments.h.

Referenced by incremental().

◆ myAdditiveTraffic

const bool ROMAAssignments::myAdditiveTraffic
private

Definition at line 131 of file ROMAAssignments.h.

Referenced by incremental(), and sue().

◆ myBegin

const SUMOTime ROMAAssignments::myBegin
private

Definition at line 129 of file ROMAAssignments.h.

Referenced by getTravelTime(), incremental(), resetFlows(), and sue().

◆ myDefaultVehicle

ROVehicle* ROMAAssignments::myDefaultVehicle
private

◆ myEnd

const SUMOTime ROMAAssignments::myEnd
private

Definition at line 130 of file ROMAAssignments.h.

Referenced by incremental(), resetFlows(), and sue().

◆ myMatrix

ODMatrix& ROMAAssignments::myMatrix
private

Definition at line 134 of file ROMAAssignments.h.

Referenced by getKPaths(), incremental(), resetFlows(), and sue().

◆ myNet

RONet& ROMAAssignments::myNet
private

Definition at line 133 of file ROMAAssignments.h.

Referenced by getKPaths(), incremental(), resetFlows(), and sue().

◆ myPenalties

std::map< const ROEdge *const, double > ROMAAssignments::myPenalties
staticprivate

Definition at line 136 of file ROMAAssignments.h.

Referenced by getKPaths(), getPenalizedEffort(), and getPenalizedTT().

◆ myRouter

SUMOAbstractRouter<ROEdge, ROVehicle>& ROMAAssignments::myRouter
private

Definition at line 135 of file ROMAAssignments.h.

Referenced by getKPaths(), incremental(), and sue().


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