Keywords

1 Introduction

Energy efficiency is increasingly a target at Country level, and directives are issued to take appropriate measures to use energy more efficiently at all stages of the energy chain, from production to final consumption. Both economical aspects and environmental impact are at the basis of such initiatives. At EU level, on 30 November 2016 the Commission proposed an update to the Energy Efficiency Directive, including a new 30% energy efficiency target for 2030, and measures to update the Directive to make sure the new target is metFootnote 1.

When dealing with critical sectors such as transportation infrastructures, the trend so far has been mainly to neglect energy saving, thus affording higher energy costs, being mostly concentrated on assuring dependability properties. However, the above mentioned initiatives are going to put the development of even dependability-critical systems under a new perspective, where energy consumption will gain more attention. In fact, while priority remains on dependability and resilience requirements, these need to be reconciled with other relevant requirements as well, among which the energy consumption. To assist the designer in devising appropriate energy management strategies, it is highly beneficial to develop supports able to analyze the behavior of such strategies, especially in critical situations such as in presence of failures. The contribution of this paper goes in this direction.

In more details, the paper focuses on the railway sector, and specifically on the rail road switch heating system [10, 21]. A rail road switch is a mechanism enabling trains to be guided from one track to another. It works with a pair of linked tapering rails, known as points. These points can be moved laterally into different positions, in order to direct a train into the straight path or the diverging path. Such switches are therefore critical components in the railway domain, since their correct operation highly impacts on the reliability of the railway transportation system. Among environmental conditions that may prevent the switches to work properly there are snow and ice, which are typical in many regions in winter time. In consequence, the mechanisms that enable a train to be directed can be blocked by an excessive amount of snow or ice. To overcome this issue, rail road switches heaters are used nowadays, so that the temperature of the rail road switches can be kept above freezing. The heaters may be powered by gas or electricity [10]. In this paper, we focus on electricity and develop an approach to model and evaluate the behavior of heating policies. In particular, resorting to a stochastic model-based approach, the switch heating system and control policies are modeled and properly analyzed, to assess the impact of major factors characterizing the system components and the environment (weather conditions) it operates in, as well as failure events, on indicators representative of the energy consumption.

This paper extends previous work [2,3,4,5,6,7,8,9] recently published by a subset of the authors in two main directions: (i) a more comprehensive architectural framework of the system under analysis is targeted, starting from current practice at the Italian railway system level; (ii) more sophisticated aspects are included in the modeling and evaluation effort, such as humidity and power line communications failure, which have an impact on both energy consuming and dependability/resilience but were neglected in previous studies. The result is a more accurate modeling and analysis framework, to support heating policies definition aiming at reaching the highest energy saving, while satisfying dependability/resilience related requirements. The framework is built following a modular and compositional approach to promote further extensions, some of which are already identified and discussed as future work.

The rest of the paper is structured as follows. Section 2 overviews related work, to better position the current contribution. The logical architecture of the rail road switch heating system and related stochastic process are presented in Sect. 3. Then, the modeling framework, through which energy consumption for the target system can be assessed, is the subject of Sect. 4. The case study and the scenarios considered to exemplify the usage of the developed modeling framework are introduced in Sect. 5, and obtained results are discussed. Finally, conclusions and future research lines are briefly outlined in Sect. 6. A list of acronyms and symbols used in this paper is given at the end.

We would like to underline that this work is strictly related with Stefania’s research activities in recent years, as testified by the several publications on the topic included in the reference list of this paper. Stefania’s competences in the railway domain are outstanding; therefore, discussing with her about these new directions to energy consumption awareness and containment was very interesting, fruitful and enjoyable!

2 Related Work

Formalisms such as hybrid automata [16], hybrid Petri nets [14], Stochastic Activity Networks (SANs) [22] have been proposed for modeling and evaluating energy-saving systems. Several tools have been proposed for their modeling, evaluation and verification, as for example Uppaal [17], Kronos [24], Möbius  [12].

Previously, Stefania Gnesi et al. have analyzed the problem of energy optimization of rail-road switch heaters and the trade-off between energy consumption and reliability of the system. We briefly summarize the previous efforts in this specific domain. The adopted policy of energy consumption was an on/off strategy based on temperature thresholds (both for turning off and on the energy). The system has been initially modeled and analyzed using Möbius and SANs in [2,3,4, 6]. It was supposed that heaters have different priorities in accessing the energy resources, and so the policy of energy consumption was tuned to adapt to the different priorities of the heaters as well as the different periods of a day (warmer and colder). The presented model was equipped with both a logical part representing the energy consumption policy and a physical part modeling the temperature behavior and the weather. In [9] the same system has been modeled and analyzed with Uppaal SMC and stochastic hybrid automata. Temporal logic was used instead of Markov Reward Models to model the measures of interest, that are the energy consumption and the probability of failure. The logic of the energy policy was verified in [7] against progress of interactions, to prevent deadlocks in the communications between the different components. The two formalizations were then compared in [5] to draw pros and cons of each of these approaches. Finally, in [8] the methodology was generalized so to automatically map an automata-based model representing a qualitative verified policy of energy consumption to a stochastic Petri net dialect equipped with stochastic behavior related to phenomena such as weather conditions, to perform quantitative evaluation.

In this paper we took different steps forward in analyzing the rail road switch heating problem. A more accurate physical model is proposed, which takes into account humidity and dew points as parameters affecting the probability of failure. Moreover, the communication layer is modeled as a power line. Different topologies are analyzed that affect the relation between failures of different heaters.

Analyzing the trade-off among dependability parameters and energy consumption is a rather new research field. Hence, there is not a uniform methodology to tackle this problem but rather several techniques and formalisms have been used. The chosen formalism comes paired with specific analysis techniques. Whilst we focus on modeling the system through SANs and evaluating the measures of interest through simulations, other families of Petri net models and state machine models have also been used in the literature, and other evaluation techniques such as quantitative (e.g. probabilistic, statistical) model checking are used.

We firstly review a set of contributions using Petri net dialects and simulations for evaluating the energy consumption. An example of combining stochastic simulation and model checking is in [19], where a tool chain comprising Uppaal and Möbius is used for the proactive schedule generation for manufacturing scenarios with resource competition, stochastic resources breakdowns, and earliness/tardiness penalties. We do not model competitions in accessing the energy resource: all switches must be heated. Hence, no strategy is synthesized for scheduling the access to the energy source. Hybrid Petri Nets [14] are used for modeling the survivability of a smart house in [15], that is the probability that a house with locally generated energy (photovoltaic) and a battery storage can continuously be powered in case of a grid failure. The authors consider a randomly chosen probability of failure and fixed thresholds. Whilst a threshold-based policy is also adopted in [15], we aim at building a more comprehensive modeling framework, able to account for dependencies among components/environmental aspects and a variety of failure events.

In addition to our energy consumption policy, other aspects have been considered in the literature. For example, in [25] a dynamic voltage and frequency scaling is also studied in the context of self-organizing systems for different fields of power system control [20]. The authors study how to balance the voltage and frequencies stability of the network to meet the demand of energy. Similarly to the previous papers, these parameters are linked to reliability and safety of the system. Dynamic voltage and frequency scaling were coupled with energy consumption policies in [1] to reduce the energy consumption in multiprocessor dataflow applications by means of analyses performed through Statistical Model Checking. Energy consumption policies reduce the energy consumption of processors while they are idle, and dynamic voltage and frequency scaling reduce the energy consumption by lowering the voltage and clock frequency. Adopting sophisticated policies regulating energy consumption is certainly a valuable direction, and our framework is open to accommodate such investigations in future studies. The effort so far has been primarily directed to build an evaluation framework rich enough to account for behavioral and structural aspects of the system at hand in the addressed railway context, as well as failure and weather dynamics, to set the basis for accurate analyses.

3 System Under Analysis: Logical Architecture and Stochastic Process

The system under analysis is logically structured in three parts, as shown in Fig. 1: (i) n railroad switch heaters \(SH_{1},\ldots ,SH_{n}\), one for each switch, that heat the switches through electricity, (ii) the heater control system, that decides when to turn on or off the heaters as needed to prevent the congelation of the railway switches, and (iii) the weather conditions, i.e., the weather data, varying over time, used by the control subsystem to decide the control actions.

Fig. 1.
figure 1

Logical architecture of the system.

Each heater \(SH_{i}\) is installed close to the switch \(RS_{i}\) and is powered through power lines connected to the power system. Different heaters can be connected in series on the same power line. The state at time \(t\) of each heater \(SH_{i}\) is represented by the stochastic process \(\{X_i(t) | t \ge 0\}\) defined by

$$\begin{aligned} X_{i}(t) = {\left\{ \begin{array}{ll} 1 &{}\text { if } SH_{i} \text { is }\, on\, \text { at time }t,\\ 0 &{}\text { otherwise}. \end{array}\right. } \end{aligned}$$
(1)

A heater consumes electrical energy only when it is switched-on.

The heater control system is composed by the following logical components: (i) n Modules for Data Acquisition (MDAs) \(MDA_{1},\ldots ,MDA_{n}\), one for each heater, partitioned in m different subsets, (ii) m Coordinator Modules for Data Acquisition (CMDAs) \(CMDA_{1},\ldots ,\) \(CMDA_{m}\), one for each different subset in which the whole set of MDAs is partitioned, (iii) a Power-Line Communication (PLC), composed by n logical communication channels, \(CH_{1},\ldots ,CH_{n}\), each one connecting a MDA with the associated CMDA.

CMDAs and MDAs are in charge of switching on or off the heaters, in accordance to heating policies described later in this section.

Each \(MDA_{i}\) includes a sensor to measure the temperature of \(RS_{i}\), it is installed close to \(SH_{i}\) and is powered by the same power line as \(SH_{i}\). Each \(CMDA_{j}\) is powered by a power line connected to all the MDAs controlled by \(CMDA_{j}\).

The physical layers of the communication channels are the power lines powering the MDAs and the CMDAs. Each \(CH_{i}\) can fail, interrupting the communication between \(MDA_{i}\) and \(CMDA_{i}\), due to a fault at level of the power line. Weather conditions, especially temperature and humidity, may induce malfunctions on the power line, with direct impact on the reliability of the PLC based on the affected power line. Moreover, a physical fault that interrupts \(CH_{i}\) can also affect other communication channels, depending on the topology of the connected power lines. For example, in the case that MDAs and the associated CMDAs are connected in series through a single power line, the physical fault of \(CH_{i}\) can impact on some or all \(CH_{h}\), for \(h=i, i+1, \ldots , n\).

The list of the \(\delta _{i}\) indexes of the communication channels where the failure of \(CH_{i}\) can propagate is \(\varDelta _{i}=\{h_{1},h_{2},\ldots ,h_{\delta _{i}}\}\). The topology of interactions among the logical communication channels is given by the \(n\times n\) adjacency matrix \(\mathcal {T}=[\mathcal {T}_{i,j}]\), where \(\mathcal {T}_{i,j}=1\) if \(j \in \varDelta _{i}\), else \(\mathcal {T}_{i,j}=0\).

The time to the physical fault of \(CH_{i}\) is a random variable exponentially distributed with rate

$$\begin{aligned} \lambda _{i}(t_{k}) = c\, \cdot w^{H_{i}(t_{k})} \end{aligned}$$
(2)

where w represents the weight, i.e. the impact, over time of the humidity \(H_{i}(t_{k})\) on the fault rate, and the constant c represents the impact of all the other influencing aspects (including the characteristics of the power lines, e.g. the distance between MDAs and CMDAs, the air temperature and others) on the fault rate. The recovery time of \(CH_{i}\) is a random variable exponentially distributed with constant rate \(\mu _{i}\).

Concerning the weather aspects, to advance on previous studies also the humidity is accounted for in addition to the temperature, since they both contribute to the ice formation. Because of this particular emphasis on humidity, also the above expression of the \(CH_{i}\) failure rate explicitly accounts for it. In more detail, at each instant of time \(t_{k}\), weather conditions are represented by a stochastic process composed by a \((2n+3)\)-tuple of random variables:

$$\begin{aligned} (T_{0}(t_{k}), H_{0}(t_{k}),T^{dew}(t_{k}),T_{1}(t_{k}),\ldots ,T_{n}(t_{k}),H_{1}(t_{k}),\ldots ,H_{n}(t_{k}), \end{aligned}$$

where \(t_k=t^{w} \cdot k, t^{w} \in \mathbb R_{> 0}, k\in \mathbb {N}, T_{i}(t_{k})\in [-50,50]\) \(^\circ {\text {C}}\) and \(H_{i}(t_{k})\in [0.01,1]\). Thus, the random variables representing the weather conditions are piece-wise constants over time and change value every \(t^{w}\) units of time.

\(T_{0}(t_{k})\), \(H_{0}(t_{k})\) and \(T^{dew}(t_{k})\) are the temperature, the air relative humidity and the dew point, respectively, provided by the weather forecast service for the geographical area where the n railroad switches are installed. \(T_{i}(t_{k})\) and \(H_{i}(t_{k})\) with \(i=1,\cdots ,n\) are the temperature and the air relative humidity, respectively, close to the switch \(RS_{i}\) heated by \(SH_{i}\). The values of \(T_{i}(t_{k})\) and \(H_{i}(t_{k})\) can be different from those of \(T_{0}(t_{k})\) and \(H_{0}(t_{k})\), due to specific conditions at the position of \(RS_{i}\) (e.g., better/worse exposition to sun, or the presence of shadow, or others).

The measurement of the dew point is related to humidity. A higher dew point means that there is more moisture in the air. The dew point is defined as a function of \(T_{0}(t_{k})\) and \(H_{0}(t_{k})\), and can be computed following the Magnus-Tetens approximation as

$$\begin{aligned} T_{dew}(t_{k}) = \frac{b\,\alpha (t_k)}{a-\alpha (t_k)}, \text { with } \alpha (t_k) = \frac{a\, T_{0}(t_{k})}{b+T_{0}(t_{k})} + \ln (H_{0}(t_{k})), \end{aligned}$$
(3)

where \(a=17.27, b=237.7\,^\circ \)C [18, 23].

When the temperature is below the freezing point of water, i.e., \(T^{dew}(t_{k}) \le 0\,^\circ \)C, the dew point is called the frost point, as frost is formed rather than dew. In this case, i.e., when \(T_{i}(t_{k}) \le T^{dew}(t_{k}) \le 0\,^\circ \)C, the moisture on \(RS_{i}\) turns into ice that can prevent the switch from working correctly.

It is assumed that if \(T_{i}(t_{k})\le 0\,^\circ \)C then \(T_{i}(t_{k-1})\le 5\,^\circ \)C, i.e., the temperature cannot drop from \(5\,^\circ \)C to \(0\,^\circ \)C in less than \(t^{w}\) time units. This is a realistic assumption for the weather conditions and for the value of \(t^{w}=10\) min considered in this paper.

The relative humidity \(H_{i}(t_{k})\) is a function of the local temperature \(T_{i}(t_{k})\) and the dew point \(T^{dew}(t_{k})\), according to the formulation

$$\begin{aligned} H_{i}(t_{k}) = e^{\Big (\frac{aT^{dew}(t_{k})}{b+T^{dew}(t_{k})}-\frac{aT_{i}(t_{k})}{b+T_{i}(t_{k})}\Big )}, \end{aligned}$$
(4)

where a and b assume the same values as in Eq. (3).

After introducing the logical structure of the reference system, the control actions performed by the heater control system are now detailed. At a higher level, the behavior is the following. At each instant of time \(t_{k}\), each \(MDA_{i}\) transmits instantaneously to the associated \(CMDA_{j}\) the value of the temperature obtained from its local sensor and receives instantaneously from \(CMDA_{j}\) the command to turn on or off \(SH_{i}\) (if needed). This exchange occurs if the communication channel between \(MDA_{i}\) and \(CMDA_{j}\) is working.

Otherwise, when the communication channel between \(MDA_{i}\) and \(CMDA_{j}\) does not work, \(MDA_{i}\) turns on \(SH_{i}\) as soon as \(T_{i}(t_{k})\le 5\,^\circ \)C and turns off \(SH_{i}\) as soon as \(T_{i}(t_{k})>5\,^\circ \)C. The previous assumption that the temperature cannot drop from a value greater than \(5\,^\circ \)C to a value lower than or equal to \(0\,^\circ \)C in less than \(t^{w}\) time units, prevents the switch \(RS_{i}\) from freezing in the interval between two consecutive instants of time \(t_{k-1}\) and \(t_{k}\).

Going in more details, at each instant of time \(t_{k}\), for each working communication channel \(CH_{i}\), \(CMDA_{j}\) associated to \(SH_{i}\) receives instantaneously from \(MDA_{i}\) the measured value of \(T_{i}(t_{k})\). Then, using the temperature and humidity values received from the weather forecast service at time \(t_{k}\), \(CMDA_{j}\) sends to \(MDA_{i}\) the following command:

  • if \(T_{i}(t_{k}) \le T^{dew}(t_{k})\) and \(T_{i}(t_{k}) \le 0\,^\circ \)C, the command is to turn on \(SH_{i}\);

  • if \(T_{i}(t_{k}) > T^{dew}(t_{k})\) or \(T_{i}(t_{k}) > 0\,^\circ \)C, the command is to turn off \(SH_{i}\).

Note that this last condition, used by \(CMDA_{j}\) to turn off \(SH_{i}\), could not prevent the railway switch \(RS_{i}\) from freezing when the values of \(T_{i}(t_{k})\) and \(H_{i}(t_{k})\) are different from those of \(T_{0}(t_{k})\) and \(H_{0}(t_{k})\), respectively. In fact, \(SH_{i}\) is turned off when \(SH_{i}\) is working, \(T_{i}(t_{k}) > T^{dew}(t_{k})\) and \(T_{i}(t_{k}) < 0\,^\circ \)C, but \(T_{i}(t_{k})\) could be lower than, or equal to, the dew point local to \(RS_{i}\). In this case, \(RS_{i}\) freezes. In the weather profiles considered for this paper, the values of \(T_{i}(t_{k})\) and \(H_{i}(t_{k})\) are such that, although they differ from \(T_{0}(t_{k})\) and \(H_{0}(t_{k})\), respectively, the just described event cannot occur.

Another observation is that the values of \(H_{i}(t_{k})\), with \(i=1,\cdots ,n\), are not exploited by the control system in taking decisions on the heating of the railway switches, since humidity sensors are currently not deployed close to switches (at least considering the Italian railway system, which inspired our study). However, we used humidity values at each \(CH_{i}\), as defined by Eq. (4), to determine with higher accuracy the failure rate of each communication channel \(CH_{i}\), according to Eq. (2).

In order to evaluate the impact of the failure of \(CH_{i}\) on the energy consumption, it is assumed that all the components other than \(CH_{i}\) do not fail, i.e., they work correctly.

Let \(P^{SH}\) be the electrical power required by each switched-on heater \(SH_{i}\), i.e., when \(X_i(t)=1\). The electrical energy consumed in the interval of time \([0,t]\) by all the heaters is

$$\begin{aligned} E(t) = P^{SH}\sum _{i=1}^{n} J^{\text {on}}_i(t) dt, \end{aligned}$$
(5)

where

$$\begin{aligned} J^{\text {on}}_i(t) = \int _0^{t} X_i(t)\, dt \end{aligned}$$

is the random variable representing the total time \(X_i\) is equal to 1, i.e., the total time \(SH_{i}\) is switched on, in the time interval \([0,t]\).

4 SAN Model

A stochastic model-based approach is adopted to analyze the rail road switch heating system. In particular, the logical architecture of the system under analysis is modeled and evaluated following the DARep compositional approach, as proposed in [11], by means of the tool Möbius  [13]. The DARep approach is based on: (i) template stochastic models, each one representing a different generic component; (ii) dependency-aware State Variables (SVs), representing part of the state of a template model; (iii) a topology, associated to each dependency-aware SV; (iv) two functions Index() and Deps() that extend the template model; (v) the compositional operator \(\mathcal {D}\).

An SV defined in a template model can be: (i) local, if each instance (replica) of the SV can be accessed only by the instance of the template model where it has been generated by \(\mathcal {D}\), i.e., instances of the local SV cannot be shared among different instances of the template model, (ii) common, if it is shared among all the instances of templates, i.e., the operator \(\mathcal {D}\) merges all the instances (replicas) of the SV into one unique SV, (iii) dependency-aware, if each instance of the SV can be accessed (shared) by different instances of template models, following the topology of dependencies associated to the SV. The topology associated to each dependency-aware SV defines which different instances of the SV are generated by \(\mathcal {D}\) in each instance of the template model. The instances of a dependency-aware SV can be accessed in the template model only using the function Deps(). Moreover, the function Deps() can be used in the template model to access only to the instances of the dependency-aware SV defined by the topology for the current replica of the template. Thus, for example, and return the list of instances of the dependency-aware SV H or the \(h\)-th instance of the list (that is usually different from the \(h\)-th instance of H), respectively, as defined by the topology for each instance of the template model. The operator \(\mathcal {D}\) generates automatically the instances, replicas with identity, of each template model. Moreover, it shares, i.e. merges into one SV, all the occurrences of an instance of dependency-aware SV in different instances of the template model. The function Index() can be used to access to the index of the current instance of the template model in order to obtain a parametric definition of the template model as a function of the index of the instance.

Fig. 2.
figure 2

SAN template model for weather conditions (a) and SAN template model for \(CH_{i}\) and \(MDA_{i}\) (b). (Color figure online)

Two atomic template models TM_W and TM_DMA, shown in Fig. 2, are defined using the SAN formalism [22], a stochastic extension of Petri nets, based on the following primitives: plain and extended places (blue and orange circles, respectively), timed and instantaneous activities (hollow and solid vertical bars, respectively), input and output gates (triangles pointing left or right, respectively). The SAN primitives are defined by expressions or statements of the programming language C++. Places and activities correspond to SV and actions, respectively. Plain places represent C++ short types, whereas extended places represent primitive C++ data types (like short, int, float, double) including also structures and arrays. Input gates control when an activity is enabled. Marking changes occur when an activity completes (fires), as defined by the input and output gates.

The overall system model is obtained generating and composing automatically through the \(\mathcal {D}\) operator one instance \(TM\_W_{1}\) of the template model TM_W and n instances \(TM\_DMA_{1}, \ldots , TM\_DMA_{n}\) of the template model \(TM\_DMA\). \(TM\_W_{1}\) represents the changes of the weather conditions at each instant of time \(t_{k}\). Each instance \(TM\_DMA_{i}\) represents the failure and repair of \(CH_{i}\) and the actions of \(MDA_{i}\) turning on and off \(SH_{i}\) at each instant of time \(t_{k}\). In the template models, the function Index() represents the generic index \(i\) of an instance of template. In the \(i\)-th instance of template Index() returns the value of \(i\).

The extended places T and H are dependency-aware SVs with n instances, \(T_{1}, \ldots , T_{n}\) and \(H_{1}, \ldots , H_{n}\), respectively. The instances \(T_{i}\) and \(H_{i}\) represent the current values of \(T_{i}(t_{k})\) and \(H_{i}(t_{k})\), respectively. The topology associated to T and H in TM_DMA is defined such that the instances \(T_i\) and \(H_i\) are only generated in \(TM\_DMA_{i}\), where and . The topology associated to T and H in TM_W is defined such that in \(TM\_W_{1}\) are generated all the instances of T and H, such that and , with \(i=1,\ldots ,{n}\). The extended place DP is a common SV representing the current value of \(T^{dew}(t_{k})\) and is shared among all the instances of TM_W and TM_DMA.

In TM_W, the always enabled timed activity TWU represents the deterministic time \(t^{w}\) between two consecutive updates of the weather conditions data. The values of \(T_{i}(t_{k})\), \(H_{i}(t_{k})\) and \(T^{dew}(t_{k})\), in the interval of time \([0,t]\), are statically defined at compilation time in C++ constant arrays, one array for each different weather condition profile considered in the analysis, and can be accessed at time \(t_{k}\) using the index k. The local place NU (initialized to \(0\)) has only one instance generated in \(TM\_W_{1}\), that represents the index k of \(t_{k}\) used to access to the current weather condition data. At each completion, TWU adds \(1\) token to NU and performs the code of the output gate WU. Such code consists in assigning the current values of \(T_{i}(t_{k})\) and \(H_{i}(t_{k})\), for \(i=1,\ldots ,n\), to \(T_i\) (i.e., ) and \(H_i\) (i.e., ), respectively, and \(T^{dew}(t_{k})\) to DP, where (the marking of the place NU).

In TM_DMA, the timed activities TCF and TCR represent the exponentially distributed random time to the fault occurrence and to the recovery of the fault, respectively, in \(CH_{i}\). The rate \(\lambda _{i}(t_{k})\) is defined by the C++ expression: , being \(=H_i\) in the instance \(TM\_DMA_{i}\). TCF is enabled when there is \(1\) token in the local place NF (initialized with \(1\) token), i.e., when \(CH_{i}\) is not faulty. TCR is enabled when there is \(1\) token in the local place F (initialized with \(0\) token), i.e., when a fault occurred in \(CH_{i}\).

The place NW is a dependency-aware SV with n instances \(NW_{1}, \ldots , NW_{n}\), one for each \(TM\_DMA_{i}\). Each instance \(NW_{i}\) represents the dependency of the failure of \(CH_{i}\) on the faults occurred on other communication channels, depending on the topology \(\mathcal {T}\) associated to NW. The value of \(NW_{i}\) is the current number of faulty communication channels the failure of \(CH_{i}\) depends on. The channel \(CH_{i}\) is working when \(NW_{i}=0\), otherwise it is failed when \(NW_{i}>0\). For each \(TM\_DMA_{i}\), a subset of \(\delta _{i}\) instances of NW is automatically generated by \(\mathcal {D}\), such that with \(h_j=\varDelta _{i}[j]\), for \(j=1,\ldots ,\delta _{i}\).

At each completion in the instance \(TM\_DMA_{i}\), TCF moves the token from NF to F and propagates the failure, by executing the C++ code of the output gate IncNW that adds one token to each instance for \(j=1,\ldots ,\delta _{i}\). At each completion in the instance \(TM\_DMA_{i}\), TCR moves the token from F to NF and removes the failures propagated from the just removed fault, executing the C++ code of the output gate DecNW that remove one token from each instance for \(j=1,\ldots ,\delta _{i}\).

The places HOn or HOff are local SVs with n instances \(HOn_{1}, \ldots , HOn_{n}\) and \(HOff_{1}, \ldots , HOff_{n}\), respectively, one instance for each \(TM\_DMA_{i}\). Notice that the notation HOn and HOff, used for local SVs in the template model TM_DMA, corresponds to \(HOn_{i}\) and \(HOff_{i}\), respectively, in the instance \(TM\_DMA_{i}\) of the template model. The instances \(HOn_{i}\) and \(HOff_{i}\) represent the state of the heater \(SH_{i}\), that is on or off when there is one token in \(HOn_{i}\) or \(HOff_{i}\), respectively. In each \(TM\_DMA_{i}\), the instantaneous activities tOn and tOff represent the turning on and off, respectively, of \(SH_{i}\).

tOn is enabled when (i.e., the heater is off) and one of the following conditions defined in the input gate CanTOn is true:

  • (i.e., the channel is not working) and

    \(\le 5\) (i.e., \(T_{i}(t_{k})\le 5\,^\circ \mathrm{C}\)), or

  • (i.e., the channel is working) and

    \(\le \) (i.e., \(T_{i}(t_{k})\le T^{dew}(t_{k})\)) and

    \(\le 0\) (i.e., \(T_{i}(t_{k})\le 0\)).

tOff is enabled when (i.e., the heater is on) and one of the following conditions defined in the input gate CanTOff is true:

  • (i.e., the channel is not working) and

    \(> 5\) (i.e., \(T_{i}(t_{k})> 5\,^\circ \mathrm{C}\)), or

  • (i.e., the channel is working) and

    > (i.e., \(T_{i}(t_{k})>T^{dew}(t_{k})\)) or

    \(> 0\) (i.e., \(T_{i}(t_{k})> 0\))”.

At each completion in the instance \(TM\_DMA_{i}\), tOn moves the token from HOff to HOn, turning on \(SH_{i}\), whereas tOff moves the token from HOn to HOff, turning off \(SH_{i}\).

5 Evaluation Results

The case study introduced to demonstrate the feasibility and utility of the proposed analysis approach is based on a real-world system, namely the Lecco-Maggianico railway station in the North of Italy. In particular, it is composed by \({n}=19\) railroad switches, partitioned in two groups denoted as North and South switches, with size \(9\) and \(10\), respectively, and controlled by \(CMDA_{1}\) and \(CMDA_{2}\), also denoted as north CMDA and south CMDA, respectively, as shown in Fig. 3.

Fig. 3.
figure 3

Logical architecture of the PLC at Lecco-Maggianico railway station.

The focus of the analysis is on measuring the impact of the communication channels behavior on the consumption of the electrical power needed to heat all the railway switches in one day. To this purpose, the impact of different settings for the PLC parameters c, w, and \(\mu _{i}\), together with the failure modes of each \(SH_{i}\) (namely, either independent or correlated to the failure of one or more other \(SH_{k}\), according to a failure dependency topology) on \(\mathbb E [E\text {day}]\), the expected value of the random variable E[day] as defined in Eq. (5), is evaluated during a representative day. Different scenarios are considered, characterized by having a subgroup of the parameters discussed in Sect. 3 at a fixed value and varying the values of the other parameters, to conduct a sensitivity analysis. The measure \(\mathbb E [E\text {day}]\) is obtained solving the model presented in Sect. 4 through simulation, using the simulator of the Möbius tool and performing 10000 runs for each obtained result. When considered of particular relevance, also the Probability Density Function (PDF) of \(E^{\text {day}}\) is reported.

Fig. 4.
figure 4

Temperature \(T_i(t)\) for the North region (\(i=1,\dots ,9\)) and the South region (\(i=10,\dots ,19\)) of Lecco - Maggianico railway station during December 21, 2018. The dew point \(T^{\text {dew}}(t)\) is reported as a tick black line.

In detail, the parameters setting for the conducted evaluation is:

  • Two configurations of the logical communication architecture to connect the CMDAs and the controlled MDAs through the electrical grid, shown in Fig. 3, are considered:

    • All the MDAs communicate directly with the CMDA they are associated to, implying that each \(CH_{i}\) fails independently from the others. We call this topology of interactions \(\mathcal {T}^{p}\) as the failure-independent topology,

    • all the MDAs associated to the same CMDA are connected in series to a single electrical power line. In such configuration, the failure of \(CH_{i}\) propagates to all \(CH_{h}\) on the same power line, for \(h\ge i\). We call this topology of interactions \(\mathcal {T}^{s}\) as the failure-correlated topology.

  • The values to assign to \(H_{0}(t_{k})\) and \(T_{0}(t_{k})\) are those of weather data collected by ARPA LombardiaFootnote 2 during December 21, 2018 for the city of Lecco, where \(t_k=t^{w} \cdot k\) for \(t^{w}=10\) min and \(k=0,\dots ,143\).

  • The dew point \(T^{dew}(t_{k})\) is then computed in terms of \(H_{0}(t_{k})\) and \(T_{0}(t_{k})\), as defined in Eq. (3), and depicted (thick line) in Fig. 4.

  • Real values for \(T_{i}(t_{k})\) are not available, since it was not possible to get access to historical temperature data as detected by the sensors installed close to \(MDA_{i}\). Therefore, they have been derived from \(T_{0}(t_{k})\) through a mathematical manipulation, with the objective to take into account the geographical exposition of switches in the analyzed railway station. Namely, temperatures at the North group of heaters are considered (in mean) lower than those at the South group of heaters.

    Concerning the humidity, values of \(H_{i}(t_{k})\) are also not available, since humidity sensors are currently not adopted. Therefore, their values have been defined in terms of \(T^{dew}(t_{k})\) and \(T_{i}(t_{k})\), according to Eq. (4).

  • The constant c in the formula of the channel failure rate can vary from 1 over 5 days to 1 over 1 h.

  • The constant w in the formula of the channel failure rate can vary from 1 to 10 (representing no impact and high impact of humidity on the channel failure rate, respectively).

  • The constant \(\mu _{i}\), representing the recovery time of \(CH_{i}\), can vary from 1 over 3 h to 1 over 5 min, and has a default value of 1 over 1 h, assumed whenever not explicitly specified.

  • Each heater is supposed to consume \(P^{SH}=7.4\) kW when in state on, and 0 kW when in state off.

The performed analyses are grouped in three scenarios, where a subset of the above reported system characteristics (becoming parameters of the system model described in Sect. 4) are considered fixed and others are varied, to carry on sensitivity analysis. As already indicated, the emphasis of the evaluation is on the impact of the behavior of the communication network on power consumption, so the profiles for temperature and humidity are kept the same in all the scenarios (as in Figs. 4 and 5, respectively). In more details:

Fig. 5.
figure 5

Humidity \(H_i(t)\) for the North region (\(i=1,\dots ,9\)) and the South region (\(i=10,\dots ,19\)) of Lecco - Maggianico railway station during December 21, 2018.

Fig. 6.
figure 6

Scenario 1: expected value of E[day] at increasing of c (from one every 5 days to one every hour), and varying w (from 1, i.e., no impact of \(H_i\) on \(\lambda _i\), to 10). The failure-independent topology \(\mathcal {T}^{p}\) is considered.

 

Scenario (1) :

this scenario considers the topology \(\mathcal {T}^{p}\), varying values for the parameters c and w, and fixed values for the other parameters;

Scenario (2) :

this scenario complements the previous one by considering the other channel failure model, i.e., the failure-correlated mode through the topology \(\mathcal {T}^{s}\), and adopting the same setting as in the previous study for the other parameters;

Scenario (3) :

the third scenario explores the impact of the recovery parameter \(\mu _{i}\) in rather critical conditions for the other parameters as derived from the analysis in the previous two scenarios (namely, when the topology is \(\mathcal {T}^{s}\) and c is equal to \(3.47\cdot 10^{-4}\,(\text {minutes}^{-1})\)).

 

The minimal and maximal energy that can be consumed during the day for the considered case study, corresponding to no channels failure and continuous channels failure, respectively, are statically computed and reported in Figs. 6, 7 and 9. The maximal energy is about one order of magnitude greater than the minimal energy, so choosing the right combination of parameters and topology can have a great impact on energy consumption, and then cost and environmental footprint. Notice that in Figs. 6, 7 and 9 the ordinates are in linear scale spanning from the minimal to maximal energy, whereas the abscissas are in linear scale for Figs. 6 and 7 and in logarithmic scale for Fig. 9, so it is possible to graphically compare results from different scenarios.

5.1 Scenario 1

In this scenario, the failure-independent topology \(\mathcal {T}^{p}\) is considered and, fixing all the \(\mu _{i}\) to their default value of one over 60 min, \(\mathbb E [E(\text {day})]\) is evaluated at increasing values of c. As expected, keeping constant the relative humidity, a small c produces a small \(\lambda _{i}(t_{k})\), and then a large Mean Time Between Failures, whereas increasing c produces a small Mean Time Between Failures. Thus, at the increasing of c, \(\mathbb E [E(\text {day})]\) increases, as shown in Fig. 6. As revealed by the sensitivity analysis, \(\mathbb E [E(\text {day})]\) increases quite rapidly for c lower than \(0.4\cdot 10^{-2}\,(\text {minutes}^{-1})\), still remaining under 2000 (kWh), and then increases slowly towards the maximal energy. Of particular relevance is then studying the impact of w on \(\mathbb E [E(\text {day})]\). In Fig. 6, 10 curves, one for each w from 1 to 10, are depicted. For w equal to 1, relative humidity has no impact on \(\lambda _{i}(t_{k})\), because \(1^{H_{i}(t_{k})}=1\), otherwise, for w equal to 10, if relative humidity is equal to 1 then \(\lambda _{i}(t_{k})\) is 10 times greater than c. As depicted in Fig. 6, for c equal to \(0.4\cdot 10^{-2}\,(\text {minutes}^{-1})\), \(\mathbb E [E(\text {day})]\) can double when switching w from 1 to 10.

5.2 Scenario 2

This scenario differs from Scenario 1 only for the topology. In fact, here the failure-correlated topology \(\mathcal {T}^{s}\) is considered. Comparing Fig. 7 with Fig. 6, it is possible to appreciate the impact of correlations among channels failure. As expected, an high degree of correlation among channel failures produces values of E(day) that are in mean higher than those produced by the failure-independent topology. This means that, even with relatively small values of c, the energy consumed during one day can reach high values. For example, for c equal to \(0.4\cdot 10^{-2}\,(\text {minutes}^{-1})\) and w greater than 2, the value of \(\mathbb E[E(\text {day})]\) is already greater than 2000 (kWh).

Fig. 7.
figure 7

Scenario 2: expected value of E(day) at increasing of c (from one every 5 days to one every hour), and varying w (from 1, i.e., no impact of \(H_i\) on \(\lambda _i\), to 10). The failure-correlated topology \(\mathcal {T}^{s}\) is considered.

Fig. 8.
figure 8

Scenario 2: Frequencies at which E(day) values appear in the simulation, from which the PDF of E(day) can be estimated, when c spans from one every 5 days to one every hour, and w spans from 1 to 10. Here, the failure-correlated topology \(\mathcal {T}^{s}\) is considered.

For energy saving oriented analysis it is of particular importance to study not only the mean value of \(E(\text {day})\) but also its Probability Distribution Function, because different choices of parameters can produce the same mean value but different distribution of \(E(\text {day})\). Thus, in Fig. 8 the frequencies at which \(E(\text {day})\) appears in the simulation are reported for three representative values of c and w. Scaling the values of the frequencies by a factor of 10000 it is possible to estimate the PDF of \(E(\text {day})\).

5.3 Scenario 3

In this scenario a different perspective with respect to Scenarios 1 and 2 is considered. Here, the failure-correlated topology \(\mathcal {T}^{s}\) is adopted, but the sensitivity analysis is performed with respect to \(\mu _{i}\) and w, instead of c and w. At the increasing of \(\mu _{i}\), the Mean Time Between Failures decreases, and then \(\mathbb E[E(\text {day})]\) decreases, as shown in Fig. 9, where the abscissas axis is in logarithmic scale. As expected, if \(\mu _{i}\) is equal to 1 over 3 h then a channel failure can remain un-recovered for a long period of time, forcing all the \(MDA_{i}\) for \(h=1,\dots ,9\) (North) or \(h=10,\dots ,19\) (South) to follow the most energy consuming strategy of comparing \(T_{i}(t_{k})\) with \(5\,^\circ \mathrm{C}\). In addition, for small values of \(\mu _{i}\), switching from \(w=1\) to \(w=10\) makes a great difference, whereas for greater values of \(\mu _{i}\) the impact of w becomes less relevant.

Fig. 9.
figure 9

Scenario 3: expected value of E(day) at increasing of \(\mu _{i}\), from one every 3 h to one every 5 min, and varying w from 1, i.e., no impact of \(H_i\) on \(\lambda _i\), to 10. Here, the failure-correlated topology \(\mathcal {T}^{s}\) is considered.

6 Conclusions and Future Work

This paper presented a stochastic model-based framework for assessing energy consumption of railroad switch heating systems. The developed approach, and obtained quantitative results, advance on previous studies by introducing important aspects of the weather conditions, namely the humidity and derived dew point, and more sophisticated failure models of the communication network, which have been shown to have an impact on the analysis outcomes. Moreover, a more structured picture of the heating control policies, physical structure of the switches and the communication network has been defined, inspired by the Italian railway system.

The feasibility and utility of the developed analysis framework have been demonstrated through a case study, which represents the switch heating infrastructure of a medium-size railway station in the North of Italy. From the sensitivity analysis to varying parameters values, representing relevant aspects of the communication network behavior, it is possible to understand the impact of different phenomena on the evaluated energy consumption; this is a useful basis to devise better energy-aware heating policies. The investigations conducted in this paper are partial, since the modeling and analysis framework introduced in Sect. 4 has the powerfulness to deal with more sophisticated structures and behaviors of the involved components (e.g., in terms of population size, failure models, heating policies, and others). Therefore, the agenda of future extensions includes several items, among which:

  • generalize the correlation factor among channels failure to k out of n;

  • relax the assumption of guaranteed reliability and identify heating policies leading to satisfactory trade-offs between reliability and energy consumption;

  • address the analysis of bigger railway stations, with a variety of CMADs and communication topologies;

  • develop and evaluate more sophisticated heating policies;

  • introduce a more accurate representation of the heating physical model of the switch component (currently assumed to become warm instantaneously).

List of Main Acronyms and Symbols

 

CMDA:

Coordinator Module for Data Acquisition

MDA:

Module for Data Acquisition

PLC:

Power-Line Communication

SAN:

Stochastic Activity Network

SV:

State Variable

c :

constant parameter representing the impact of the characteristics of the power lines on the fault rate of \(CH_{i}\)

\(CH_{i}\) :

\(i\)-th communication channel

\(CMDA_{i}\) :

\(i\)-th coordinator module for data acquisition

\(\mathcal {D}\) :

DARep operator

\(\delta _{i}\) :

Number of communication channels where the failure of \(CH_{i}\) can propagate

\(\varDelta _{i}\) :

List of the indexes of the communication channels where the failure of \(CH_{i}\) can propagate

E(t):

Electrical energy consumed in the interval of time \([0,t]\) by all the heaters

\(H_{0}(t_{k})\) :

Relative humidity at time \(t_{k}\) provided by the weather forecast service

\(H_{i}(t_{k})\) :

Relative humidity at time \(t_{k}\) close to \(SH_{i}, 1 \le i \le n\)

\(\lambda _{i}(t_{k})\) :

Fault rate of \(CH_{i}\) at time \(t_{k}\)

m :

Number of CMDAS

\(MDA_{i}\) :

\(i\)-th module for data acquisition

\(\mu _{i}\) :

Recovery rate of \(CH_{i}\)

n :

Number of rail-road switch heaters

\(P^{SH}\) :

Electrical power required by a switched-on heater

\(RS_i\) :

\(i\)-th rail-road switch, heated by \(SH_{i}\)

\(SH_i\) :

\(i\)-th rail-road switch, heated

\(\mathcal {T}\) :

Topology of interactions among communication channels

\(\mathcal {T}^p\) :

Failure-independent topology of interactions among communication channels, when each \(CH_{i}\) fails independently from the others

\(\mathcal {T}^s\) :

failure-correlated topology of interactions among communication channels, when the failure of \(CH_{i}\) propagates to all \(CH_{h}\) connected in series on the same power line, for \(h \ge i\)

\(T^{dew}(t_k)\) :

Dew point at time \(t_k\) provided by the weather forecast service

\(T_{0}(t_k)\) :

Temperature at time \(t_k\) provided by the weather forecast service

\(T_{i}(t_k)\) :

Temperature of \(SH_{i}\) at time \(t_k\), \(1 \le i \le {n}\)

w :

Constant parameter representing the impact of the characteristics of the power lines on the fault rate of \(CH_{i}\)

\(X_{i}(t)\) :

Switched-on or switched-off state at time t of \(SH_{i}\)