Skip to main content

KingmanQueueScenario

Economics scenarios · Implementation: mlsysim/engine/scenario_definitions/economics.py.

Construct this scenario with keyword inputs. The fields below show the types and defaults declared by this class.

One server under Kingman’s approximation at two utilizations, with a holding price.

Notes

Equation: The result property delegates to the named solver documented below; it converts declared scenario units before passing the inputs.

Assumptions: The queue has one server with stable utilization and supplied arrival/service squared coefficients of variation.

Excludes: Tail guarantees, transient overload, and exact waiting-time distributions.

References

Derivation: the scenario composes mlsysim.physics.serving.calc_kingman_wait_ratio, mlsysim.solvers.KingmanQueueModel. Their contracts supply the underlying equations; property equations show the remaining unit conversions and accounting.

Examples

>>> from mlsysim import Scenarios
>>> scenario = Scenarios.BurstyModelServerQueuePrice
>>> value = scenario.result
>>> type(value).__name__
'KingmanQueueResult'

Attributes

Name Description
arrival_scv
high_utilization
holding_rate
low_utilization
result Return the typed accounting result from KingmanQueueModel using this scenario’s
service
service_scv

Methods

Name Description
wait_at Mean queue wait at stable utilization from Kingman’s variability factor times mean

wait_at

engine.scenario_types.KingmanQueueScenario.wait_at(utilization)

Mean queue wait at stable utilization from Kingman’s variability factor times mean service duration.

Equation: calc_kingman_wait_ratio(utilization, arrival_scv, service_scv) * service.

service

Type: Quantity.

Declared default: required.

arrival_scv

Type: float.

Declared default: required.

service_scv

Type: float.

Declared default: required.

low_utilization

Type: float.

Declared default: required.

high_utilization

Type: float.

Declared default: required.

holding_rate

Type: Quantity.

Declared default: required.

result

engine.scenario_types.KingmanQueueScenario.result

Return the typed accounting result from KingmanQueueModel using this scenario’s declared inputs; units and exclusions follow that solver contract.

Equation: KingmanQueueModel().solve(service, arrival_scv, service_scv, low_utilization, high_utilization, float(holding_rate.to('USD / second').magnitude)).

Back to top