SUMO - Simulation of Urban MObility
|
assignment methods More...
#include <ROMAAssignments.h>
Public Member Functions | |
SUMOReal | capacityConstraintFunction (const ROEdge *edge, const SUMOReal flow) const |
void | incremental (const int numIter) |
ROMAAssignments (const SUMOTime begin, const SUMOTime end, RONet &net, ODMatrix &matrix, SUMOAbstractRouter< ROEdge, ROVehicle > &router) | |
Constructor. More... | |
void | sue (const int maxOuterIteration, const int maxInnerIteration, const int kPaths, const SUMOReal penalty, const SUMOReal tolerance, const std::string routeChoiceMethod) |
void | ue () |
~ROMAAssignments () | |
Destructor. More... | |
Static Public Member Functions | |
static SUMOReal | getPenalizedEffort (const ROEdge *const e, const ROVehicle *const v, SUMOReal t) |
Returns the effort to pass an edge including penalties. More... | |
static SUMOReal | getPenalizedTT (const ROEdge *const e, const ROVehicle *const v, SUMOReal t) |
Returns the traveltime on an edge including penalties. More... | |
static SUMOReal | getTravelTime (const ROEdge *const e, const ROVehicle *const v, SUMOReal t) |
Returns the traveltime on an edge without penalties. More... | |
Private Member Functions | |
bool | addRoute (ConstROEdgeVector &edges, std::vector< RORoute * > &paths, std::string routeId, SUMOReal costs, SUMOReal prob) |
add a route and check for duplicates More... | |
void | getKPaths (const int kPaths, const SUMOReal penalty) |
get the k shortest paths More... | |
ROMAAssignments & | operator= (const ROMAAssignments &src) |
Invalidated assignment operator. More... | |
Private Attributes | |
const SUMOTime | myBegin |
const SUMOTime | myEnd |
ODMatrix & | myMatrix |
RONet & | myNet |
SUMOAbstractRouter< ROEdge, ROVehicle > & | myRouter |
Static Private Attributes | |
static ROVehicle * | myDefaultVehicle = 0 |
static std::map< const ROEdge *const, SUMOReal > | myPenalties |
assignment methods
Definition at line 58 of file ROMAAssignments.h.
ROMAAssignments::ROMAAssignments | ( | const SUMOTime | begin, |
const SUMOTime | end, | ||
RONet & | net, | ||
ODMatrix & | matrix, | ||
SUMOAbstractRouter< ROEdge, ROVehicle > & | router | ||
) |
Constructor.
Definition at line 61 of file ROMAAssignments.cpp.
References DEFAULT_VTYPE_ID, RONet::getVehicleTypeSecure(), and myDefaultVehicle.
ROMAAssignments::~ROMAAssignments | ( | ) |
|
private |
add a route and check for duplicates
Definition at line 125 of file ROMAAssignments.cpp.
References RORoute::addProbability().
Referenced by getKPaths(), incremental(), and sue().
SUMOReal ROMAAssignments::capacityConstraintFunction | ( | const ROEdge * | edge, |
const SUMOReal | flow | ||
) | const |
Definition at line 74 of file ROMAAssignments.cpp.
References ROEdge::ET_DISTRICT, ROEdge::getLaneNo(), ROEdge::getLength(), ROEdge::getPriority(), ROEdge::getSpeed(), and ROEdge::getType().
Referenced by incremental(), and sue().
|
private |
get the k shortest paths
Definition at line 143 of file ROMAAssignments.cpp.
References addRoute(), SUMOAbstractRouter< E, V >::compute(), ODCell::destination, ODMatrix::getCells(), RONet::getEdge(), myDefaultVehicle, myMatrix, myNet, myPenalties, myRouter, ODCell::origin, ODCell::pathsVector, and toString().
Referenced by sue().
|
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.
[in] | e | The edge for which the effort to be passed shall be returned |
[in] | v | The (default) vehicle that is routed |
[in] | t | The time for which the effort shall be returned |
Definition at line 276 of file ROMAAssignments.cpp.
References ROEdge::getEffort(), and myPenalties.
Referenced by computeRoutes().
|
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.
[in] | e | The edge for which the effort to be passed shall be returned |
[in] | v | The (default) vehicle that is routed |
[in] | t | The time for which the effort shall be returned |
Definition at line 283 of file ROMAAssignments.cpp.
References ROEdge::getTravelTime(), and myPenalties.
Referenced by computeRoutes().
|
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.
[in] | e | The edge for which the effort to be passed shall be returned |
[in] | v | The (default) vehicle that is routed |
[in] | t | The time for which the effort shall be returned |
Definition at line 290 of file ROMAAssignments.cpp.
References ROEdge::getTravelTime().
Referenced by computeRoutes().
void ROMAAssignments::incremental | ( | const int | numIter | ) |
Definition at line 161 of file ROMAAssignments.cpp.
References ROEdge::addEffort(), addRoute(), ROEdge::addTravelTime(), capacityConstraintFunction(), SUMOAbstractRouter< E, V >::compute(), ODCell::destination, ODMatrix::getCells(), RONet::getEdge(), myBegin, myDefaultVehicle, myEnd, myMatrix, myNet, myRouter, ODCell::origin, ODCell::pathsVector, STEPS2TIME, SUMOReal, toString(), and ODCell::vehicleNumber.
|
private |
Invalidated assignment operator.
void ROMAAssignments::sue | ( | const int | maxOuterIteration, |
const int | maxInnerIteration, | ||
const int | kPaths, | ||
const SUMOReal | penalty, | ||
const SUMOReal | tolerance, | ||
const std::string | routeChoiceMethod | ||
) |
Definition at line 183 of file ROMAAssignments.cpp.
References abs, ROEdge::addEffort(), addRoute(), ROEdge::addTravelTime(), capacityConstraintFunction(), SUMOAbstractRouter< E, V >::compute(), ODCell::destination, RouteCostCalculator< R, E, V >::getCalculator(), ODMatrix::getCells(), RONet::getEdge(), RONet::getEdgeMap(), RORoute::getEdgeVector(), ROEdge::getEffort(), ROMAEdge::getHelpFlow(), getKPaths(), RORoute::getProbability(), myBegin, myDefaultVehicle, myEnd, myMatrix, myNet, myRouter, ODCell::origin, ODCell::pathsVector, SUMOAbstractRouter< E, V >::recomputeCosts(), RORoute::setCosts(), ROMAEdge::setHelpFlow(), RORoute::setProbability(), STEPS2TIME, SUMOReal, toString(), and ODCell::vehicleNumber.
void ROMAAssignments::ue | ( | ) |
|
private |
Definition at line 125 of file ROMAAssignments.h.
Referenced by incremental(), and sue().
|
staticprivate |
Definition at line 131 of file ROMAAssignments.h.
Referenced by getKPaths(), incremental(), ROMAAssignments(), sue(), and ~ROMAAssignments().
|
private |
Definition at line 126 of file ROMAAssignments.h.
Referenced by incremental(), and sue().
|
private |
Definition at line 128 of file ROMAAssignments.h.
Referenced by getKPaths(), incremental(), and sue().
|
private |
Definition at line 127 of file ROMAAssignments.h.
Referenced by getKPaths(), incremental(), and sue().
Definition at line 130 of file ROMAAssignments.h.
Referenced by getKPaths(), getPenalizedEffort(), and getPenalizedTT().
|
private |
Definition at line 129 of file ROMAAssignments.h.
Referenced by getKPaths(), incremental(), and sue().