![]() |
LINE Solver (C++)
Templated C++ port of the LINE queueing solver
|
Revenue sensitivities and implied costs of a loss network. More...
#include <algorithm>#include <cmath>#include <cstddef>#include <cstdint>#include <limits>#include <string>#include <vector>#include "line/api/lossn/lossn_erlangfp.h"#include "line/api/lossn/lossn_kr.h"#include "line/api/lossn/lossn_links.h"#include "line/api/lossn/lossn_manjunath.h"#include "line/api/lossn/lossn_mci.h"#include "line/api/lossn/lossn_rec.h"#include "line/num/number.h"#include "line/util/error.h"#include "line/util/linalg.h"#include "line/util/lu.h"#include "line/util/matrix.h"Go to the source code of this file.
Classes | |
| struct | line::lossn::LossnRevsensResult< T > |
| Result of lossn_revsens. More... | |
Namespaces | |
| namespace | line |
| Conservation laws of a layered queueing network, enumerated from its structure. | |
| namespace | line::lossn |
Functions | |
| template<class T> | |
| LossnRevsensResult< T > | line::lossn::lossn_revsens (const std::vector< T > &nu, const Matrix< T > &A, const std::vector< T > &C, const std::vector< T > &w, const std::string &method="exact", const LossnMciOptions< T > &mciopt=LossnMciOptions< T >(), std::uint64_t seed=0) |
| Revenue sensitivities and implied costs of a loss network. | |
Revenue sensitivities and implied costs of a loss network.
Templated port of matlab/src/api/lossn/lossn_revsens.m.
A route-r call in progress earns revenue at rate w_r, so the long-run revenue rate is W = sum_r w_r E[n_r]. Under the product form the sensitivity of W to the offered load of route k is (Kelly 1988; Ross 1995, Sec. 6.3)
dW/dnu_k = (1 - B_k) (w_k - c_k), c_k = W(C) - W(C - A e_k),
where the implied cost c_k is the revenue lost by permanently removing the units one route-k call holds. A positive dW_k means that admitting more route-k traffic raises the revenue; a negative value means route k displaces more valuable traffic than it earns. The link implied cost clink(j,r) = W(C) - W(C - A(j,r) e_j) is the revenue lost by removing the units of one route-r call from link j alone.
Methods:
ARITHMETIC. The fixed point and the Monte Carlo estimator are transcendental, so the header is gated on num_traits<T>::has_transcendental.
References: F. P. Kelly, "Routing in circuit-switched networks: optimization, shadow prices and decentralization", Adv. Appl. Probab. 20, 1988. K. W. Ross, "Multiservice Loss Models for Broadband Telecommunication Networks", Springer, 1995, Sec. 6.3 and Table 5.1.
Definition in file lossn_revsens.h.