![]() |
LINE Solver (C++)
Templated C++ port of the LINE queueing solver
|
#include <line/opt/variables.h>
Public Member Functions | |
| DecisionVariable (std::string n, std::size_t d=1) | |
| virtual | ~DecisionVariable ()=default |
| const std::string & | name () const |
| std::size_t | dimension () const |
| virtual Value | decode (const std::vector< double > &x) const =0 |
| virtual void | apply (qn::Network< double > &, const Value &) const |
| virtual void | apply (lqn::LqnModel< double > &, const Value &) const |
| virtual std::string | type () const =0 |
| virtual std::vector< std::string > | layers (const lqn::LqnModel< double > &) const |
| virtual std::optional< Value > | current_value (const lqn::LqnModel< double > &) const |
| virtual bool | supports_sensitivity () const |
| virtual std::string | sensitivity_key (const lqn::LqnModel< double > &) const |
| virtual std::map< std::string, std::string > | sensitivity_metric_targets (const lqn::LqnModel< double > &) const |
| virtual double | rate_jacobian (const Value &) const |
| virtual double | decode_jacobian (double) const |
Static Protected Member Functions | |
| static std::size_t | node (const qn::NetworkStruct< double > &s, const std::string &n) |
| static std::size_t | cls (const qn::NetworkStruct< double > &s, const std::string &n) |
Protected Attributes | |
| std::string | name_ |
| std::size_t | dimension_ |
Definition at line 34 of file variables.h.
|
inlineexplicit |
Definition at line 36 of file variables.h.
References dimension_, and name_.
Referenced by line::opt::ActivityThinkTime::ActivityThinkTime(), line::opt::ClassPriority::ClassPriority(), line::opt::ClassServiceMapping::ClassServiceMapping(), line::opt::HostDemand::HostDemand(), line::opt::JobPopulation::JobPopulation(), line::opt::ProcessorMultiplicity::ProcessorMultiplicity(), line::opt::RoutingProbabilities::RoutingProbabilities(), line::opt::ServerAllocation::ServerAllocation(), line::opt::ServiceRate::ServiceRate(), line::opt::StationReplicas::StationReplicas(), line::opt::TaskMultiplicity::TaskMultiplicity(), line::opt::TaskReplication::TaskReplication(), and line::opt::TaskThinkTime::TaskThinkTime().
|
virtualdefault |
|
inlinevirtual |
Reimplemented in line::opt::ActivityThinkTime, line::opt::HostDemand, line::opt::ProcessorMultiplicity, line::opt::TaskMultiplicity, line::opt::TaskReplication, and line::opt::TaskThinkTime.
Definition at line 43 of file variables.h.
References line::InputError::InputError(), and name_.
|
inlinevirtual |
Reimplemented in line::opt::ClassPriority, line::opt::ClassServiceMapping, line::opt::JobPopulation, line::opt::RoutingProbabilities, line::opt::ServerAllocation, line::opt::ServiceRate, and line::opt::StationReplicas.
Definition at line 40 of file variables.h.
References line::InputError::InputError(), and name_.
|
inlinestaticprotected |
Definition at line 59 of file variables.h.
References line::qn::NetworkStruct< T >::classes, and line::InputError::InputError().
Referenced by line::opt::ClassPriority::apply(), line::opt::ClassServiceMapping::apply(), line::opt::JobPopulation::apply(), line::opt::RoutingProbabilities::apply(), and line::opt::ServiceRate::apply().
|
inlinevirtual |
Reimplemented in line::opt::ActivityThinkTime, line::opt::HostDemand, line::opt::ProcessorMultiplicity, line::opt::TaskMultiplicity, line::opt::TaskReplication, and line::opt::TaskThinkTime.
Definition at line 48 of file variables.h.
|
pure virtual |
Implemented in line::opt::ActivityThinkTime, line::opt::ClassPriority, line::opt::ClassServiceMapping, line::opt::HostDemand, line::opt::JobPopulation, line::opt::ProcessorMultiplicity, line::opt::RoutingProbabilities, line::opt::ServerAllocation, line::opt::ServiceRate, line::opt::StationReplicas, line::opt::TaskMultiplicity, line::opt::TaskReplication, and line::opt::TaskThinkTime.
|
inlinevirtual |
Reimplemented in line::opt::HostDemand.
Definition at line 56 of file variables.h.
|
inline |
Definition at line 38 of file variables.h.
|
inlinevirtual |
Reimplemented in line::opt::ActivityThinkTime, line::opt::HostDemand, line::opt::ProcessorMultiplicity, line::opt::TaskMultiplicity, line::opt::TaskReplication, and line::opt::TaskThinkTime.
Definition at line 47 of file variables.h.
|
inline |
Definition at line 38 of file variables.h.
Referenced by line::opt::ActivityThinkTime::ActivityThinkTime(), line::opt::ClassServiceMapping::ClassServiceMapping(), dimension(), line::opt::HostDemand::HostDemand(), line::opt::ProcessorMultiplicity::ProcessorMultiplicity(), line::opt::TaskMultiplicity::TaskMultiplicity(), line::opt::TaskReplication::TaskReplication(), and line::opt::TaskThinkTime::TaskThinkTime().
|
inlinestaticprotected |
Definition at line 58 of file variables.h.
References line::InputError::InputError(), and line::qn::NetworkStruct< T >::nodes.
Referenced by line::opt::ClassServiceMapping::apply(), line::opt::RoutingProbabilities::apply(), line::opt::ServerAllocation::apply(), line::opt::ServiceRate::apply(), and line::opt::StationReplicas::apply().
|
inlinevirtual |
Reimplemented in line::opt::HostDemand.
Definition at line 55 of file variables.h.
|
inlinevirtual |
Reimplemented in line::opt::HostDemand.
Definition at line 52 of file variables.h.
|
inlinevirtual |
Reimplemented in line::opt::HostDemand.
Definition at line 53 of file variables.h.
|
inlinevirtual |
Reimplemented in line::opt::HostDemand.
Definition at line 51 of file variables.h.
|
pure virtual |
Implemented in line::opt::ActivityThinkTime, line::opt::ClassPriority, line::opt::ClassServiceMapping, line::opt::HostDemand, line::opt::JobPopulation, line::opt::ProcessorMultiplicity, line::opt::RoutingProbabilities, line::opt::ServerAllocation, line::opt::ServiceRate, line::opt::StationReplicas, line::opt::TaskMultiplicity, line::opt::TaskReplication, and line::opt::TaskThinkTime.
|
protected |
Definition at line 60 of file variables.h.
Referenced by DecisionVariable().
|
protected |
Definition at line 60 of file variables.h.
Referenced by apply(), apply(), DecisionVariable(), and dimension().