Optimization and Data Science
Optimization and Data Science
Adriano Masone
Veronica Dal Sasso
Valentina Morandi Editors
Optimization
and Data
Science: Trends
and Applications
5th AIROYoung Workshop and AIRO PhD
School 2021 Joint Event
AIRO Springer Series
Volume 6
Editor-in-Chief
Daniele Vigo, Dipartimento di Ingegneria dell’Energia Elettrica e dell’Informazione
“Gugliemo Marconi”, Alma Mater Studiorum Università di Bologna, Bologna, Italy
Series Editors
Alessandro Agnetis, Dipartimento di Ingegneria dell’Informazione e Scienze
Matematiche, Università degli Studi di Siena, Siena, Italy
Edoardo Amaldi, Dipartimento di Elettronica, Informazione e Bioingegneria
(DEIB), Politecnico di Milano, Milan, Italy
Francesca Guerriero, Dipartimento di Ingegneria Meccanica, Energetica e
Gestionale (DIMEG), Università della Calabria, Rende, Italy
Stefano Lucidi, Dipartimento di Ingegneria Informatica Automatica e Gestionale
“Antonio Ruberti” (DIAG), Università di Roma “La Sapienza”, Rome, Italy
Enza Messina, Dipartimento di Informatica Sistemistica e Comunicazione,
Università degli Studi di Milano-Bicocca, Milan, Italy
Antonio Sforza, Dipartimento di Ingegneria Elettrica e Tecnologie
dell’Informazione, Università degli Studi di Napoli Federico II, Naples, Italy
The AIRO Springer Series focuses on the relevance of operations research (OR) in
the scientific world and in real life applications.
The series publishes peer-reviewed only works, such as contributed volumes,
lectures notes, and monographs in English language resulting from workshops,
conferences, courses, schools, seminars, and research activities carried out by
AIRO, Associazione Italiana di Ricerca Operativa - Optimization and Decision
Sciences: http://www.airo.org/index.php/it/.
The books in the series will discuss recent results and analyze new trends
focusing on the following areas: Optimization and Operation Research, including
Continuous, Discrete and Network Optimization, and related industrial and terri-
torial applications. Interdisciplinary contributions, showing a fruitful collaboration
of scientists with researchers from other fields to address complex applications, are
welcome.
The series is aimed at providing useful reference material to students, academic
and industrial researchers at an international level.
Should an author wish to submit a manuscript, please note that this can be done
by directly contacting the series Editorial Board, which is in charge of the peer-
review process.
THE SERIES IS INDEXED IN SCOPUS
Valentina Morandi
Faculty of Science and Technology
Free University of Bozen
Bolzano, Italy
© The Editor(s) (if applicable) and The Author(s), under exclusive license to Springer Nature Switzerland
AG 2021
This work is subject to copyright. All rights are solely and exclusively licensed by the Publisher, whether
the whole or part of the material is concerned, specifically the rights of translation, reprinting, reuse
of illustrations, recitation, broadcasting, reproduction on microfilms or in any other physical way, and
transmission or information storage and retrieval, electronic adaptation, computer software, or by similar
or dissimilar methodology now known or hereafter developed.
The use of general descriptive names, registered names, trademarks, service marks, etc. in this publication
does not imply, even in the absence of a specific statement, that such names are exempt from the relevant
protective laws and regulations and therefore free for general use.
The publisher, the authors, and the editors are safe to assume that the advice and information in this book
are believed to be true and accurate at the date of publication. Neither the publisher nor the authors or
the editors give a warranty, expressed or implied, with respect to the material contained herein or for any
errors or omissions that may have been made. The publisher remains neutral with regard to jurisdictional
claims in published maps and institutional affiliations.
This Springer imprint is published by the registered company Springer Nature Switzerland AG.
The registered company address is: Gewerbestrasse 11, 6330 Cham, Switzerland
Preface
This book contains the proceedings of the 5th AIRO Young Workshop and AIRO
PhD School 2021 joint event on “Optimization and Data Science: Trends and
Applications,” held online, from February 8 to 12, 2021.
This volume presents methodological and application-oriented contributions
relating to optimization and data science methods, as well as a large variety of
applications in computer science, healthcare, logistics, and transportation. The 14
accepted contributions are organized in 5 topical parts: Data Science and Machine
Learning, Healthcare, Logistics, Optimization for Control Systems, and OR in
Industry. In each part, the contributions are listed alphabetically by the last name
of the first author.
In the first part, “Data Science and Machine Learning”, the reader will find the
following contributions.
• Reinforcement learning for the Knapsack Problem, by Pierotti et al. The
complexity of combinatorial optimization (CO) problems makes it difficult to
find the optimal solution via an exact solution method. In recent years, machine
learning (ML) has brought immense benefits in many research areas, including
heuristic solution methods for CO problems. Among ML methods, reinforcement
learning (RL) seems to be the most promising method. In this work, the authors
investigate an RL framework to achieve solutions for the knapsack problem.
The presented algorithm finds close to optimal solutions for instances up to one
hundred items, which leads to the conjecture that RL and self-attention may be
major building blocks for future state-of-the-art heuristics for other CO problems.
• Potential sales estimates of a new store, by Tozzi and Guarino. This work
describes a real application consisting in the estimation of new point of sales
(PoS) potential. The potential of a PoS is measured in terms of estimated sales
in its second year of activity with respect to the opening date of the contract.
The authors propose an original approach based on the combined use of gradient
boosting and convolutional neural network. The aim is to support sales managers
with an automatic tool returning the most promising PoS.
v
vi Preface
The goal is to minimize the time slot between inspections and, hence, to find
the minimum cost maintenance plan. Different techniques for the optimization
process are employed such as a Monte Carlo simulation and meta-heuristic
algorithms.
• Metal additive manufacturing: Nesting vs. scheduling, by Kucukkoc. In
additive manufacturing (AM), parts are produced through a layer-by-layer
production process. Selective laser melting (SLM) is a popular AM technology
used to build metal components. Although it may seem a high-cost process at first
glance, it can be compensated with efficient planning and scheduling systems. In
this chapter, the author aims to investigate the relationship between nesting and
scheduling when planning and scheduling SLM machines.
• System and methods for blockchain-inspired digital game asset manage-
ment, by Ragnoni. In this chapter, the optimal design of a fully managed ledger
database providing a transparent, immutable, and cryptographically verifiable
platform for managing the creation of digital assets (e.g., game ticket) and
the transfer of asset’s ownership between users is described. The aim of this
contribution is to present the usefulness of the resulting platform, its features,
and its functioning mechanism.
As editors of the volume, we thank AIRO and AIROYoung, the invited lecturers,
the authors, and the researchers who spent their time for the review process,
contributing to improve the quality of the selected contributions. A special thanks
should be addressed to the AIROYoung representatives and the Operations Research
Group of the Department of Electrical Engineering and Information Technology of
the University “Federico II” of Naples who organized the joint event.
Finally, we express our gratitude to Springer for its strong support and coopera-
tion during the event and the publishing process.
Part II Healthcare
Gathering Avoiding Centralized Pedestrian Advice Framework:
An Application for Covid-19 Outbreak Restrictions . . . . .. . . . . . . . . . . . . . . . . . . . 39
Veronica Dal Sasso and Valentina Morandi
A MILP Formulation for the Reorganization of the Blood Supply
Chain in Italian Regions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. . . . . . . . . . . . . . . . . . . . 51
Antonio Diglio, Andrea Mancuso, Adriano Masone, Carmela Piccolo,
and Claudio Sterle
ix
x Contents
Part V OR in Industry
Optimizing and Evaluating a Maintenance Strategy for
Multi-Component Systems .. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. . . . . . . . . . . . . . . . . . . . 157
Lucía Bautista Bárcena and Inmaculada T. Castro
Metal Additive Manufacturing: Nesting vs. Scheduling . . . . . . . . . . . . . . . . . . . . . 169
Ibrahim Kucukkoc
System and Methods for Blockchain-Inspired Digital Game Asset
Management . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. . . . . . . . . . . . . . . . . . . . 181
Gianluca Ragnoni
About the Editors
xi
Part I
Data Science and Machine Learning
Reinforcement Learning for the
Knapsack Problem
1 Introduction
a heuristic by hand, one can also use ML to train a neural network to predict an
almost optimal solution for given or randomly generated CO instances [3]. This
way heuristics can be learned without expert knowledge of the problem domain,
which is also called end-to-end training. Reinforcement learning (RL) seems to be
the most promising end-to-end method to solve combinatorial problems [2]. In fact,
in difference to supervised ML, RL does not need to know the solutions to given
training instances to learn a good heuristic. This way one can learn a heuristic
without any domain knowledge and, in principle, one could find a heuristic that
works better than any a human would be able to design. RL has been used to train the
neural networks used by heuristics designed to solve CO problems [9–11], including
the knapsack problem (KP) [2]. The aim of this paper is to develop an RL end-
to-end algorithm for the knapsack problem based on attention [16], in difference
to prior work that used either recurring neural networks (RNN) or convolutional
neural networks (CNN) [4, 12] (which are popular NN for end-to-end methods). By
developing such an algorithm for a relatively easy CO problem (the KP) [13], we
want to assess if RL with attention can be a fruitful method to tackle other, more
complex, CO problems, which will be the focus of future research.
The remainder of the paper is organized as follows. The formulation of the KP,
our motivations on how and why we use attention and not RNNs or CNNs, and
model architecture are presented in Sect. 2. The training distributions (i.e. bench-
marks of instances) used for testing and evaluating as well as the computational
results are detailed in Sect. 3. Finally, in Sect. 4, we illustrate our conclusions.
The knapsack problem (KP) is one of the most studied CO problems [13]. As input,
we have a set of objects (denoted by set N) and a knapsack of capacity W . Each
object i ∈ N has a positive profit pi and a positive weight wi . The objective of
the problem is to maximize the sum of the profits of the collected objects without
violating the capacity constraint. Introducing binary variables xi , which assume
value one if object i ∈ N is selected and zero otherwise, we can write the problem
as follows:
max xi pi (1)
i∈N
xi wi ≤ W (2)
i∈N
xi ∈ {0, 1} ∀i ∈ N. (3)
The objective function (1) maximizes the total profit of the selected objects,
constraint (2) acts as the capacity constraint, and constraints (3) force the variables
to be binary. This integer linear program (ILP) belongs to the class of NP-hard
Reinforcement Learning for the Knapsack Problem 5
problems [13], which means that the computation time for obtaining optimal
solutions with known exact solution methods grows exponentially with the number
of objects. A simple yet very powerful heuristic is to sort the objects in non-
pi
increasing order of their ratio, i.e., qi = for i ∈ N, and collect them in order as
wi
long as constraint (2) is respected (collecting non-consecutive objects is allowed).
In the following, we refer to this as the simple heuristic.
Table 1 Summary of the definitions needed for our reinforcement learning framework
Name Definition
Task An instance of the KP
Multi-task RL RL algorithm to solve a family of tasks (virtually any
KP problem in our case)
Action The selection of an object
State The available information (profits, weights, which objects have
been selected and which have not,..) at a given time moment
Initial state State where no objects have been selected yet
Final state State where no more objects can been selected
Episode Series of visited states from the initial state to the final state
Masking The removal of the unselectable actions
Reward The profit of the selected object
Transition A sequence of an old state, a chosen action, an observed
reward, and a new state
Minibatch A set of non-consecutive1 transitions
Training distribution Distribution from which we draw the instances to train
the algorithm
scenario, they terminate in |N| steps); so, there is no need to discount the future
rewards. We call the sequence of old state s, chosen action a, observed reward r,
and new state s a transition. A set (of fixed size, in our case) of non-consecutive1
transitions is called a minibatch. The transitions in the minibatches are used to
compute the loss (which is needed in order to learn) in the learning step (Sect. 2.1.2).
Finally, we train and evaluate the algorithm by solving randomly drawn tasks from
the so called training distribution. Table 1 summarizes the introduced definitions.
Our RL algorithm falls under the general umbrella of Q-learning [18]. Given a
state s, and a set of possible actions A, the idea of Q-learning is to estimate
the expected future cumulative rewards for each possible action (called Q-values
Q(s, a), ∀a ∈ A) and select one action based on an exploration/exploitation
strategy. On one hand, exploration is fundamental to search the state-action space.
In fact, in (non-deep) Q-learning, if one could explore for an infinite amount of
time, the optimal Q-values would be retrieved. On the other hand, the agent should
concentrate more on promising actions to improve convergence to an optimal policy.
As exploration/exploitation strategy, we use -greedy, which greedily chooses the
best action (i.e. the action with the highest Q-value) with probability 1- or a random
action with probability . Often the Q-learning algorithm can be too optimistic while
estimating the Q-values. One common solution to this problem is to adopt double
Q-learning [7]. In deep RL, double Q-learning is enforced by having two identically
structured neural networks. The current network is used to select the best action at
the next state while the other one (called the target network) is used to compute
the Q-value of the next state. In this work, we use a similar method which helps
stabilizing our results. The difference being that the Q-values are always computed
via the current network and the target network is used to determine the action.
Naming Q the function to compute the Q-values associated with the target network,
our revised Bellman equation becomes (see also Sect. 2.1.2):
Equation (4) is needed in the learning step (see Sect. 2.1.2), where the parameters
of the Q function are tuned in such a way that the distance between Q(s, a) and
r(s, a) + Q (s , arg maxa (Q(s , a))) is minimized.
Our algorithm works by generating and solving new tasks of different dimensions
(i.e. |N| is not a constant between two different tasks). Let us assume that we train
our algorithm to solve instances of k different sizes. Every time a new instance
is generated and solved, all the transitions are stored in a replay buffer [20]. Our
algorithm has k different fixed-size replay buffers (one for each possible dimension
of |N|) where transitions are stored with a FIFO (first in first out) strategy. A FIFO
policy guarantees that the algorithm always keeps in memory the newest generated
information. Transitions of instances with the same dimensions are stored in the
same buffer. When a minibatch is needed, we randomly choose one of the k replay
buffers and extract a minibatch from there. Given the multiple replay buffers, each
state in the minibatch has the same dimension and, thus, can be stack together,
easing the computation. It is important to note that different tasks have different
gradient magnitude: a task with 100 objects is likely to have a different gradient
than a task with 2 objects. In fact, we are using a NN to approximate the Q-values
and, reasonably, the approximation becomes more and more difficult (thus less
and less accurate) with an increasing number of objects. A less accurate Q-value
approximation would likely lead to greater gradient magnitudes; thus, different
tasks present different gradient magnitude. However, since each time we choose the
replay buffer uniformly at random, we are averaging the gradients; thus, we are not
introducing any bias. When the algorithm has accumulated enough transitions in the
replay buffers, it begins to learn. We do so by selecting, uniformly at random, from
one random replay buffer, t transitions (or all the transitions if less than t transitions
are present in that replay buffer). Transitions which have never been selected before
8 J. Pierotti et al.
have priority over transitions that were. We call these t transitions a minibatch. For
generic transition i (si , ai , ri , si ) in the minibatch, we compute the loss as:
2
lossi = Q(si , ai ) − ri + Q(si , arg max(Q (si , a)) (5)
a
Then, we backpropagate the average of the t losses. Sometimes, the loss function
is so steep that blindly following its gradient would lead outside of the region where
the gradient is meaningful. To prevent this, we clip the gradient [19] to a maximum
length of 0.1. The parameters of the agent are updated via the RMSprop method2
[5]. Finally, the target network is updated via a soft-update [6], i.e., naming p any
generic parameter of the agent, pt its corresponding one in the target network and τ
(constant equal to 0.05 in our case) the soft-update parameter: pt ← (1−τ )pt +τp.
The agent receives the observations of the states and outputs the Q-values. It is
composed by three main blocks, all using ReLU as activation function. The first
and last block are composed of two fully connected linear layers of dimension 512
each. The first block enlarges the feature space of each object vector from five to
512 and the last block reduces the features to one (the Q-value). The second block
is a transformer (Sect. 2.2.1). In most CO problems, there is no clear ordered object
structure. Even if we introduce an arbitrary order, the problem would be permutation
invariant. In the KP, a permutation of the elements would neither change the optimal
solution of the problem nor its structure. For this reason, we decide to base our
agent on self-attention, which is permutation invariant (unlike CNNs or RNNs).
While most agents for end-to-end approaches involve CNNs and/or RNNs [11], we
conjecture that, for the KP and other CO problems, the effectiveness of an algorithm
does not lie within those structures. In fact, CNNs are an excellent tool to extract
local features [12], but they are only useful when there is a clear ordered object
structure (such as pixels in an image). RNNs sequentially embed a sequence of
inputs, where each output depends also on the sequence of previous inputs. This
is very useful when states are partially observable [4]; however, the KP satisfies
the Markov property, i.e., the distribution of future states depends only on the
current state. This memoryless property makes the problem Markovian. Thus, given
the Markovian property of our problem and the absence of an underlying ordered
structure, we decide to base our implementation on a variation of the transformer
[16] without CNNs or RNNs. The transformer accepts as input a variable-length
(dt ) tuple of objects (where all objects have the same dimension do ) and returns
a tuple of same length and dimension (do for each single output, dt for the whole
2 http://www.cs.toronto.edu/~tijmen/csc321/slides/lecture_slides_lec6.pdf.
Reinforcement Learning for the Knapsack Problem 9
where headi = Attention(S̄WiQ , S̄WiK , S̄WiV ) and WiQ , WiK , WiV are all learnable
matrices for all i ∈ [1, . . . , h]. This multi-head self-attention mechanism is repeated
for L layers. Each layer is composed of two units which both produce outputs of the
same dimension as their input, i.e., dn . The first unit is indeed the multi-head self-
attention mechanism, the second unit is a fully connected feed-forward network with
ReLUs. Both these units adopt also a residual connection and a layer normalization
[1]. The residual connection was proven to facilitate learning [8].
10 J. Pierotti et al.
In each instance, all objects are normalized such that the maximum profit and weight
is one. The agent has a two layer fully connected neural network to expand the 5
features of a vector into 512 features. The resulting vector is fed to a transformer
encoder3 with six layers and eight heads per layer. Normalization is applied after
each layer. After the transformer, another two fully connected neural network layers
are used to reduce the 512 features to a single one (the Q-value associated with
the action of selecting the corresponding object). The learning rate of the optimizer
is set to 10−6 and linearly decreases with the episode number from one to 0.05.
Each replay buffer can store up to a maximum of 105 transitions, the minibatch size
is set to 512, and the soft update parameter τ is set to 0.05. The overall structure
of the algorithm is given in Algorithm 1. For a total of 105 times, the algorithm
generates and solves one instance. Its transitions are saved in the replay buffer and
the algorithm takes a learning step. In order to partially fill the replay buffers,
the algorithm starts to learn only after the 512th iteration. During the training,
ten equally spaced greedy test evaluations over one hundred randomly generated
instances are conducted in order to assess the algorithm progress.
3 Computational Results
Two different training distributions are used to generate the tasks. In the first
distribution, |N| is chosen uniformly at random between 2 and 100 every time
a new instance is generated. Moreover, the profit and weight of each object are
also chosen uniformly at random in the closed interval [10−6, 1]. A lower bound
of 10−6 is enforced to avoid numerical errors. We call this distribution random.
The second distribution (named Pisinger) are some of the small, large, and hard
instances taken from [13]. These Pisinger instances were generated in order to be
difficult to be solved via a MILP solver. These small, large, and hard instances are
further subdivided in six, six, and five groups, respectively. From these groups, we
select instances with 20, 50, and 100 objects. Each pair group-number of objects
contains one hundred instances, for a total of 3200 instances (because not all groups
have the 20 objects instances).
We train our algorithm twice from scratch, thus obtaining two different versions
of the same model. We train the first version exclusively on the random instances
while we train the second one exclusively on the Pisinger instances. We evaluate the
trained algorithms both on random instances and on Pisinger’s. When evaluating
and testing, we compare our results with the simple heuristic (see Sect. 2) which
achieves, on average, 99% of the optimal solution’s value (hence, it is a good
measure for comparison). In Figs. 1 and 2, every result is normalized with respect to
(a) (b)
1.0 1.0
0.8 0.8
0.6 0.6
0.4 0.4
Fig. 1 During training evaluation on 100 random instances. On the x-axis, the number of iterations
and on the y-axis, the averaged normalized cumulative reward are shown. The blue dots indicate
the average cumulative reward, the vertical lines indicate the standard deviation. (a) Training on
the random distribution. (b) Training on the Pisinger distribution
(a) (b)
0.6 RL RL
simple heurisc 0.14 simple heurisc
0.5 0.12
0.4 0.10
0.08
0.3
0.06
0.2
0.04
0.1 0.02
0.0 0.00
0 1 2 3 4 5 0 1 2 3 4 5
Fig. 2 Evaluation on the hard, 100 objects Pisinger instances. Green lines for the RL and purple
lines for the simple heuristic. On the x-axis, different groups of instances, on the y-axis, the gaps
to optimality are displayed. Please note the different scale of the y-axis. (a) Training on random
distribution. (b) Training on Pisinger distribution
12 J. Pierotti et al.
the optimal solutions (in the Pisinger distribution) or with respect to the heuristic
solution. Figure 1 displays the evaluations of the algorithm during training on
one hundred random instances. For the sake of brevity, we report only the most
meaningful results, i.e., the hard Pisinger instances with one hundred objects.
Figure 2a shows the boxplot of the gap to the optimal solution for the hard Pisinger
instances of the algorithm trained on the random distribution. Although the results
are overall satisfactory, the algorithm trained on random instances performs badly
on some types of Pisinger instances. The most likely reason is that the algorithm
trained on random instances has an extremely small probability of seeing some
Pisinger instances (which have been handcrafted), thus it does not generalize over
those particularly complex instances. On the other hand, when the algorithm is
evaluated on randomly generated instances (Fig. 1a), results are very close to
the heuristic solution, thus, to the optimal solution. Figure 2b displays the same
gap for the algorithm trained on the Pisinger distribution. In this case, results are
very satisfactory since the algorithm consistently achieves near-optimal solutions.
Also while evaluating on randomly generated instances (Fig. 1b), results are very
close to the heuristic solution, thus to the optimal solution; however, results are
slightly worse than the results obtained by the algorithm trained on the random
distribution. As expected, we conclude that training the algorithm on randomly
generated instances boosts performance in the average case, but it is less effective
to complex instances, while training the algorithm on the Pisinger distribution
performs (slightly) worse on the average case, but is much more robust (both on
the random and on the complex Pisinger instances).
4 Conclusion
Acknowledgments This research was supported in part by Ahold Delhaize. All content represents
the opinion of the author(s), which is not necessarily shared or endorsed by their respective
employers and/or sponsors.
Reinforcement Learning for the Knapsack Problem 13
References
1. Ba, J.L., Kiros, J.R., Hinton, G.E.: Layer normalization. Preprint (2016). arXiv:1607.06450
2. Bello, I., Pham, H., Le, Q.V., Norouzi, M., Bengio, S.: Neural combinatorial optimization with
reinforcement learning. Preprint (2016). arXiv:1611.09940
3. Bengio, Y., Lodi, A., Prouvost, A.: Machine learning for combinatorial optimization: a
methodological tour d’horizon. Eur. J. Oper. Res. 290, 405–421 (2021)
4. Bontemps, L., McDermott, J., Le-Khac, N.-A.: Collective anomaly detection based on long
short-term memory recurrent neural networks. In: International Conference on Future Data
and Security Engineering, pp. 141–152. Springer (2016)
5. Duchi, J., Hazan, E., Singer, Y.: Adaptive subgradient methods for online learning and
stochastic optimization. J. Mach. Learn. Res. 12(7), (2011)
6. Fox, R., Pakman, A., Tishby, N.: Taming the noise in reinforcement learning via soft updates.
Preprint (2015). arXiv:1512.08562
7. Hasselt, H.: Double q-learning. Adv. Neural Inf. Process. Syst. 23, 2613–2621 (2010)
8. He, K., Zhang, X., Ren, S., Sun, J.: Deep residual learning for image recognition. In:
Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition, pp. 770–
778 (2016)
9. Joshi, C.K., Cappart, Q., Rousseau, L.-M., Laurent, T., Bresson, X.: Learning TSP requires
rethinking generalization. Preprint (2020). arXiv:2006.07054
10. La Maire, B.F., Mladenov, V.M.: Comparison of neural networks for solving the travelling
salesman problem. In: 11th Symposium on Neural Network Applications in Electrical
Engineering, pp. 21–24. IEEE (2012)
11. Nazari, M., Oroojlooy, A., Snyder, L.V., Takáč, M.: Reinforcement learning for solving the
vehicle routing problem. Preprint (2018). arXiv:1802.04240
12. O’Shea, K., Nash, R.: An introduction to convolutional neural networks. Preprint (2015).
arXiv:1511.08458
13. Pisinger, D.: Where are the hard knapsack problems? Comput. Oper. Res. 32(9), 2271–2284
(2005)
14. Sutton, R.S., Barto, A.G.: Reinforcement Learning: An Introduction. MIT Press (2018)
15. Torabi, F., Warnell, G., Stone, P.: Behavioral cloning from observation. Preprint (2018).
arXiv:1805.01954
16. Vaswani, A., Shazeer, N., Parmar, N., Uszkoreit, J., Jones, L., Gomez, A.N., Kaiser, L.,
Polosukhin, I.: Attention is all you need. Preprint (2017). arXiv:1706.03762
17. Vithayathil Varghese, N., Mahmoud, Q.H.: A survey of multi-task deep reinforcement learning.
Electronics 9(9), 1363 (2020)
18. Watkins, C.J., Dayan, P.: Q-learning. Machine Learning 8(3-4), 279–292 (1992)
19. Zhang, J., He, T., Sra, S., Jadbabaie, A.: Why gradient clipping accelerates training: A
theoretical justification for adaptivity. Preprint (2019). arXiv:1905.11881
20. Zhang, S., Sutton, R.S.: A deeper look at experience replay. Preprint (2017). arXiv:1712.01275
Potential Sales Estimates of a New Store
Abstract This work describes a real use cases of a Machine Learning (ML)
application in the business context.
The use case concerns the estimation of the potential of new Point of Sale (PoS),
where for potential we mean the sales volumes from the second year with respect to
the opening date of the contract. For this project, both a Gradient Boosting model
and a Convolutional Neural Network, are used together.
The aim is to support the sales managers engaging new PoS with an automatic
tool, which in each year’s quarter examines all the Italian active commercial
activities and returns the most promising ones.
To define a Point of Sale (PoS) potential, we introduce first the concept of expected
value. The PoS sales expected value is defined as the yearly average sales of a
group of similar PoS which have certain common features (walkability, population,
position, etc.).
Once we identify the variables conditioning the PoS sales, we can use them to
cluster the entire PoS network. Each cluster is then characterized by PoS groups with
very similar features. It is reasonable to think the sales variation within the cluster
as the inner sales skill of the seller. It turns out that the potential can be defined as
the sales volume of a PoS in the case the seller has very good selling skills in the
same neighbourhood’s condition of other PoS.
As we said in the earlier paragraph, to define similar PoS and identify the variables
which most contribute to the sales, we need to describe the area and the demography
in the proximity of a PoS. For this reason, we created a geospatial database where
we store the coordinates of all Italian activities and points of interest (POI) as
underground stops, fuel stations, etc.
To describe a new PoS area, we need first its geographic coordinates. Once we
localize the PoS, the goal is to understand the peculiarities of the proximity area.
We define two ranges within two radii of 750 m (meter) and 1500 m respectively
(Fig. 1). The former is used to depict the nearest features of the PoS, while the
second to evaluate the greater area around the immediate PoS proximity. In Table 1
there is a summary of all the variables involved.
For the training we use 20,000 PoS opened in the last years and for each PoS we
have associated the features described previously. The activities and POI localized
are about 9.7 million. To identify the proximity features we should compute 194
billion distances, so we adopt another strategy.
We choose the Haversine distance between two points which consider the Earth
curvature in the calculation. Since we must compute the distances from commercial
activities and POIs within a maximum area of 1500 m of radius centred on the
potential PoS, we implement a strategy which allows us to calculate a considerably
smaller number of distances.
The idea is to use n centres C1 , C2 , . . . , Cn (not necessarily PoS), where
n 9.7 million, on which compute the distances. At this point we must associate
at each PoS its nearest centre. We compute only the distances between the PoS and
all activities and POI at a distance from the centre less or equal than:
In this way we calculate all the distances less or equal of 1500 m from the PoS,
excluding the majority a priori. The consequent number of distances depends on
two factors: the number and position of centres.
For what concerns the number of centres, we need to balance two effects.
Specifically, increasing the number of centres, the average distance D∗ decreases,
consequently there are less distances for activities and POI to compute. On the other
side, as the number of centres grows the server memory is closer to its saturation
as the number of distances in storage is dim(C) ∗ TotPOI , where TotPOI is the total
number of activities and POI.
The optimal number of centres found is 8, as one can see in Table 2. In this
way we are able to balance the memory usage, the lower number of distances to
compute and the computation time. If we add too many centres, the cons, in terms
of computation time, are higher than pros.
To choose the best position for each centre we used the clustering algorithm K-
means on all the 9.7 million activities and POI coordinates. The idea is that the best
positioning of the centres is given by the density of the activities and POI. Thus, the
average distance D∗ becomes smaller.
Table 2 Results of different configurations in centres calculation. The best number of centres is
equal to 8, where there is a good balance between memory storage and computation time
4 centres 8 centres 10 centres 12 centres
Size [GB] 1.8 3.6 4.56 5.38
Computation time [min] 138 95 115 143
Potential Sales Estimates of a New Store 19
Machine learning techniques are largely used to extract information from large sets
and then transforming the information into a comprehensible and compact structure
for further use, at the basis of decision support tools dealing with complex decision
problems, as shown in [8–11].
The objective is to estimate the PoS sales potential through a model trained
over 20,000 PoS already active on the Italian soil. For each PoS we build all
proximity variables described previously when the contract has been stipulated with
the company. The target variable assigned is the sales volume at the second year
from the contract beginning.
To maximize the predictions accuracy, we decide to use, alongside the proximity
features, the satellite pictures of the areas around the potential PoS. We take the
pictures through the Google “maps static” API [12].
Due to the different nature of data for what concerns the satellite pictures, we
implement two different models, one stacked with the other, for the two different
datasets. The proximity features have been treated as input for a Gradient Boosting
Machine (GBM) while the pictures as input of a Convolutional Neural Network
(CNN).
The pictures size shape is (300, 300, 3), where the first two dimensions indicate
the number of pixels while the third one the image channels.
We use the transfer learning technique in four different configurations in the
final layers summarised in Table 3. The best result in terms of R2 (8.5%) has been
achieved with one last layer of 128 neurons with Relu as the activation function.
Moreover, when we implement two final layers, we adopt a middle dropout layer.
The dropout rate is equal to 35%. We choose to maximize this metric to understand
how much influence the pictures features have on the sales volumes. The R2 is
consistent with the results of CNN applied to the house price challenge [15]. We
Potential Sales Estimates of a New Store 21
also apply a decay learning rate (Fig. 4) to train the neural network faster in the first
steps and exponentially slower as the number of steps increases.
To train the CNN a mean squared loss function has been minimized using the
Adam optimizer.
Once the CNN is trained, we concatenate the last dense layer to the proximity
features. Thus, we can synthesize the image features and use them as input to the
gradient boosting model. The target variable is the stores sales, as in the CNN model.
The challenge of this use case is related to the highly unbalanced target
distribution (the mean is much greater than the median). To tackle the problem,
we minimize the following quantity [16]:
Y is the target variable vector, X is the vector of real predictor variables and f is the
fitting function. I (Y ≤ f (X)) and I (Y > f (X)) are mutually exclusive indicator
variables. The number α is a symmetry factor between 0 and 1, which is used to
22 J. Tozzi and F. Guarino
0.010
0.008
0.006
lr
0.004
0.002
0.000
Fig. 4 Plot of the learning rate strategy used in the CNN training
After a tenfold cross validation with the caret library [17], an R software package
[18], we trained a gradient boosting model with 1800 trees, a shrinkage of 0.002, an
interaction depth of 5 and 50 as minimum number of observations in the terminal
nodes of the trees.
The best R2 is 52% and we have a MAPE of 0.6. In Fig. 5 we can see the plot
of the predicted versus real sales, where we decide to obscure the values on the axis
for privacy reasons. For higher values, except for some outliers, the predicted values
are more distributed along the bisector.
However, the model is not able to predict values too high, penalising the fewer
PoS which perform better. For lower values, we can see that the model basically
overestimates the real sales. This is exactly the hard part of this use-case, in which
the endogenous variables play a critical role.
Potential Sales Estimates of a New Store 23
Predicted sales
Real sales
5 Conclusions
This use case shows several characteristics that make the analysis challenging. The
R2 obtained indicates that all exogenous variables used explain the 52% of the
yearly sales variance. The endogenous variables have still a crucial part in the sales
contribution.
A solution might be trying to extract more variables from PoS marketing surveys,
which could be good candidates to model the problem endogeneity. We are confident
that a good set of surveys variables can improve the R2 of a certain amount. The
endogeneity of the problem would probably continue to take a conspicuous part of
the target explanation, but we might reduce its impact in the predictions’ accuracy.
The CCN can be improved by training all the weights of a smaller and
simpler custom neural network. We used the transfer learning technique because
of infrastructure issues, which we count to solve in short times.
References
1. Ahmed, M., Seraj, R., Islam, S.M.S.: The k-means algorithm: a comprehensive survey and
performance evaluation. Electronics. 9, 1295 (2020)
2. Fortunato, S., Hric, D.: Community detection in networks: a user guide. Phys. Rep. 659, 1–44
(2016)
3. Yang, Y., Wang, H.: Multi-view clustering: a survey. Big Data Min. Anal. 1(2), 83–107 (2018)
24 J. Tozzi and F. Guarino
4. Masone, A., Sforza, A., Sterle, C., Vasilyev, I.: A graph clustering based decomposition
approach for large scale p-median problems. Int. J. Artif. Intell. 13, 229–242 (2018)
5. Masone, A., Sterle, C., Vasilyev, I., Ushakov, A.: A three-stage p-median based exact method
for the optimal diversity management problem. Networks. 74, 174–189 (2019)
6. OpenStreetMap contributors. Taken from https://www.openstreetmap.org (2017)
7. ISTAT. Taken from https://www.istat.it/it/archivio/104317 (2011)
8. Olafsson, S., Li, X., Wu, S.: Operations research and data mining. Eur. J. Oper. Res. 187(3),
1429–1448 (2008)
9. Meisel, S., Mattfeld, D.: Synergies of operations research and data mining. Eur. J. Oper. Res.
206(1), 1–10 (2010)
10. Boccia, M., Sforza, A., Sterle, C.: Simple pattern minimality problems: integer linear program-
ming formulations and covering-based heuristic solving approaches. INFORMS J. Comput.
32(4), 1049–1060 (2020)
11. Boccia, M., Masone, A., Sforza, A., Sterle, C.: A partitioning based heuristic for a variant
of the simple pattern minimality problem. In: International Conference on Optimization and
Decision Science, pp. 93–102. Springer, Cham, September 2017
12. Google Inc. Maps static API. Taken from https://developers.google.com/maps/documentation/
maps-static/overview (2021)
13. Chollet, F., et al.: keras. Taken from https://keras.io (2015)
14. Deng, J., Dong, W., Socher, R., Li, L.-J., Li, K., Fei-Fei, L.: Imagenet: a large-scale hierarchical
image database. In: 2009 IEEE Conference on Computer Vision and Pattern Recognition, pp.
248–255 (2009)
15. Law, S., Paige, B., Russell, C.: Take a look around: using street view and satellite images to
estimate house prices. arXiv. (2019). https://doi.org/10.1145/3342240
16. Kriegler, B., Berk, R.: Small area estimation of the homeless in Los Angeles, an application of
cost-sensitive stochastic gradient boosting. Ann. Appl. Stat. 4, 1234–1255 (2010)
17. Kuhn, M.: Building predictive models in R using the caret package. J. Stat. Software. 28(5),
1–26 (2008)
18. R Core Team. R: a language and environment for statistical computing. Tratto da. http://
www.R-project.org/ (2020)
Sells Optimization Through Product
Rotation
The company goal is to maximize the vending machines (VMs) sales volume within
the network of points of sale (PoS), each VM delivers only one type of product.
The business evidence is that as the number of days that the VM remains in the
store increases, (and therefore of the same product), sales decrease.
A “novelty effect” is assumed within the store, which leads the customer having
a greater propensity to purchase the product in the first period of exposure in the
PoS.
An initial approach of increasing sales through the rotation of VMs is already
carried out by the manager of the physical machine. From the analysis of the data,
is possible to see an actual increase in sales volumes in the first n days, the data of
all past rotations will be used for training the ML model.
The goal is to create an automated tool that advises managers on optimal
rotations, which maximize product sales.
This tool must also provide constraints on movements, for example, from a PoS
it cannot be moved more than half of the machines or a maximum of X movements
can be carried out.
The first step is to quantify the increase in sales (or the loss in case of still) and
analyse the duration of the novelty effect on the PoS.
Assuming not all products suffer the same decline, it has been decided to analyse
different curves, each corresponding to a producer (each producer makes products
that are very similar to each other). In the data the confirmation of the different
effects has been found. In Fig. 1 are three graphs, each belonging to the products of
a single producer:
For each graph the average product sales are analysed in the following 100 days
after the rotation, the averages sales have been calculated on approximately 3500
movements in the last 2 years, to mitigate any seasonal or distorting effects.
As you can see from the graphs, for the different manufacturers, there are
different effects. On one hand some producers suffer a more pronounced decline
(20%), on the other hand on different producers the time series is almost stationary.
The effect of the decline in overall sales calculated on the first 100 days is about
14%.
Studying the curves in detail, a first slowdown in the decrease in sales occurs
after 35 days and in any case most of the decline is concentrated in the first 50 days.
In agreement with the business, the decision was therefore taken to make a VM
activated for rotation, after the 35th day of parking in the PoS.
The average effect of the 14% decline can give us an indication of the increase
in sales that this model can bring. In fact, in the event of the absence of estimation
errors and the “ideal” purchasing behaviour of the customer i.e.: that the customer
responds in a positive and constant way to the frequent rotation of the products, a
maximum increase in sales of 14% is expected.
Further analyses were carried out to evaluate the effects of rotations on different
types of PoS (square meters, position, other products / services inside the PoS).
The differences in the novelty effect of the product in the PoS, are not conditioned
only by the type of product / producer, but also by the characteristics of the PoS and
its geographical position.
To make a prediction of the sales of a product, moved to a new PoS, a model
is needed to consider the interaction between a multitude of variables, which is the
reason of using an ML model to make these predictions.
The model has been built to be customized by users according to their require-
ments or constraints.
First, it provides two series of main constraints, the first is the one that prohibits
the movement of VMs, within the same PoS, the second series of constraints,
prohibits the movement of a VM containing a specific product on PoS that already
has that product, as these shifts would not create the novelty effect.
In addition, there are other more operational constraints, which allow you to
configure the total number of VM movements and the maximum number of VMs
that can be moved by a single PoS. An additional component is given by adding the
calculation of the distances for the movement of VM between PoS in the objective
function. In fact, the movement of the physical machine produces logistical costs,
so by adding in the objective function a quantity that is a function of the distances
between two PoS, this will decrease the gain in relation to the distance, in the case
of the choice of the movement.
28 J. Tozzi and F. Guarino
2 Solution Approach
After the collection of data and information, it has been decided to use two ML
models: one for the prediction of sales in case of moving the VM to a new PoS P ,
(the target variable represents the sum of sales in the first 35 days after moving); the
second model will be used to estimate sales in the same 35 days, in the case that the
VM already present in P is not moved.
The difference between these two quantities represents the estimated gain from
moving the VM to the new store. In the case of a not profitable shift, the difference
between these quantities will assume negative values.
After the calculation of all the possible gains, represented by the deltas of all
the possible combinations of displacement of a VM with respect to its stationing, a
graph is created where each arc represents the displacement of VM i instead of VM
j, the weight associated with arc is equal to the estimated gain in the displacement,
therefore a VM will correspond to each vertex. The project is divided into the two
phases described below.
The phase 1 is focused on estimating the difference between the sales obtained if
the product would be moved in the new PoS (point of sales) in the first n weeks, and
the sales which the product would have guaranteed if in the next n weeks, it would
not be moved.
Identifying R as the revenue of a vending machine and ΔR as the sales difference
in case of VMs exchange, the equation (1) describes the expected revenue in case of
moving VMs:
• A ML model has been built (Random Forest) which estimates the product sales
in the new PoS, where the transfer is possible. For the estimation, different
information is used, as the product features and the target PoS features (see Sect.
3).
• For each possible product transfer towards a new PoS, the model calculates the
sales prediction in the next n weeks.
j,v∗
Rt,t +n estimation (Vending machines still)
• Also, for this indicator a ML model has been implemented, which uses the
historical information on the PoS sales, seasonal variables and PoS features (see
Sect. 3).
• For each product and PoS, the model calculates the prediction of sales in the case
the product is still.
i,j
ΔRt,t +n calculation
Sells Optimization Through Product Rotation 29
i,v∗ j,v∗
• Estimation, through the same logics described before, of Rt,t +n and Rt,t +n for
the vending machines which are potentially rotated
i,j
• All the possible combinations of ΔRt,t +n are calculated.
i,v∗
In the phase 2, the ΔRt,t +n estimated, are used in an optimization model, to
select the optimal transfers net on business constraints (each PoS must have always
the same number of machines, the same product must not be already present in the
target PoS, etc.), the model structure is shown in Fig. 2.
The optimization result is, for each vending machine, the target PoS (which could
be also the starting one if the transfer is not convenient).
The model optimizes the vending machines rotations among PoS, basing on two
drivers:
• Maximize the sales after a transfer, i.e., the convenience of rotation is assured.
The maximization is estimated considering all possible swaps, for which the best
solution is feasible together with each available machine
• A series of business constraints has been considered, see constraints from (4) to
(11).
30 J. Tozzi and F. Guarino
Fig. 3 Example of difference between real and predicted value of VMs sales. The model R-
squared is equal to 76%, average error 2400 A
C
– Square meters
– Latitude and longitude of the store
– Average number of VMs within the PoS
– Median monthly sales of a VM
– Sales from other businesses within the PoS
– The characteristics of the population around the PoS
• The variables relating to the characteristics of the product contained in the VM
that will be moved
• Calendar variables (i.e. the month in which the exchange takes place)
• Holidays in the considered period
• Variables relating to the “saleability” of the product, for example the average
sales within all the PoS and the positioning with respect to the other products
sales.
A Random Forest model has also been used for this prediction.
The model has been tested on approximately 500 VMs moved with the aim of
predicting the harvest of the first 35 days.
Comparing the real values with the expected ones (Fig. 4), the model has an
average error of about 2600 A C going to predict about 64% of the variability of the
target variable.
32 J. Tozzi and F. Guarino
Fig. 4 On the left an example of VMs sales predicted and real sales values in the case of moved
VMs, on the right the residuals of estimation errors. The R-squared is equal to 64% and the average
prediction error is about 2600 A
C
4 Problem Formulation
After estimating the sales predictions in the case of moving or stationary VMs, the
goal is to make the optimal movements of the VMs within the PoS network, meaning
the ones that maximize the sales in the following 35 days.
The problem is thought as an optimization model on directed graph and adapted
for the modelling of the movement of goods within a network of PoS.
In the graph G(V, E) the set of vertices V represents the VMs within the network
of PoS, therefore |V| will be equal to the number of VMs considered.
The generic arc e which belongs to the set E, represents the displacement of the
VM u in v with u, v ∈ V.
Since the displacement of the VM u in the position of the VM v is not
symmetrical with respect to the exchange of u and v, a directed graph is considered.
The weight to be attributed to each arc ai, j , which corresponds to the displace-
ment of VM i in j, will be equal to the following formula:
i,j j
ΔRt,t +n = Rt,t
i
+n − Rt,t +n (2)
where R in (2) represents the estimated sales of the VM in the PoS, i = i-th vending
machine position, j = j-th vending machine position, n = number of weeks.
Since a store can contain several VMs inside it, and only VM movements to other
PoS are foreseen, a Z partition of the vertices Z1 , . . . , Zn is therefore performed,
where the generic partition Zi includes all the vertices (VM) within a PoS, with
Zi ∩ Zj = 0 ∀ i, j. The cardinality of Z will therefore be equal to the number of PoS
in the network.
A further partition of the set V is carried out according to the type of product
within the VM. A partition S of the vertices S1 , . . . , Sm has been performed, where
the generic partition Sk includes all vertices (VM) that sell the same product k, with
Sells Optimization Through Product Rotation 33
N
xij ≤ 1 ∀i = 1, . . . , N (4)
j =1
N N
xij = xj i ∀j = 1, . . . , N (5)
i=1 i=1
N
xij ≤ B ∀i, j = 1, . . . , N (6)
i,j =1
xij = 0 ∀h = 1, . . . , H (7)
i ∈ Sh
j ∈ Sh
xij = 0 ∀k = 1, . . . , K (8)
i ∈ Zk
j ∈ Zk
|Zk |
xij ≤ ∀k = 1, . . . , K (9)
i ∈ Zk 2
j∈/ Zk
xij ≤ 1 ∀k = 1, . . . , K
(10)
i ∈ Sh ∀h = 1, . . . , H
j ∈ Zk
The binary variable Xij is a decision variable, which takes the value 1 if VM i is
moved to the position of VM j, 0 otherwise.
Model constraints are the followings: (4) a maximum of 1 VM can be moved
from its position, (5) the flow conservation constraint, guarantees that the solution
maintains the initial configuration of the number of machines per PoS, using this
constraint, the only possible operations for the movement are the exchange between
two VMs, or a circular exchange chain, (6) this constraint assures us that a maximum
of B exchanges are possible on the PoS network, (7) VMs containing the same
product cannot be swapped, (8) exchanges in the same PoS are not allowed, (9)
a maximum of half of the VM present in a PoS can be moved (configurable
parameter), (10) more than one product of the same type cannot be moved to a
new PoS.
To consider the distances between the movements of VM between PoS and
penalize the movements between two far PoS, it is possible to modify the objective
function (3) in the following way:
N
maximize Rij ∗ xij − α ∗ Dij ∗ xij (12)
i,j =1
Dij are the distances between two VMs, by setting the parameter α it is possible to
increase or decrease the penalty on the moving distances.
In the following results (12) is used as maximization function.
A review of routing problems is out of the scope of this work, therefore the
interested reader is addressed to [1–4] for some of the most recent surveys and
applications.
5 Computational Results
The data used for training the ML models and the optimization model are collected
in HDFS [5], the distributed file system in the Big data architecture.
A first processing is carried out through Spark, running the ETL (extract,
transform, load) processes on millions of records, to process the aggregates that
will be input to the models listed above.
Machine learning models (Random Forest) have been trained using R software
[6], the package caret [7] has been used. The optimization model has also been
implemented through R, for the construction of the constraints and the objective
function the package ompr [8] has been used, as the solver instead the package
linux Symphony [9], which can be directly called from R.
The model is run quarterly and choose the optimal movement chains, which
maximize the total revenue on the PoS network, in Fig. 5 there is an example of
the optimal exchange chains suggested by the model.
Table 1 is an example of a model run, on a sub-sample of PoS and VM.
Sells Optimization Through Product Rotation 35
6 Conclusions
References
1. Archetti, C., Speranza, M.G.: A survey on matheuristics for routing problems. EURO J. Comput.
Optim. 2, 223–246 (2014)
2. Boccia, M., Masone, A., Sforza, A., Sterle, C.: A column-and-row generation approach for the
flying sidekick travelling salesman problem. Transp. Res. Part C. 124, 102913 (2021)
3. Castillo-Salazar, J., Landa-Silva, D., Qu, R.: Workforce scheduling and routing problems:
literature survey and computational study. Ann. Oper. Res. 1–29 (2014)
4. Sinha Roy, D., Masone, A., Golden, B., Wasil, E.: Modeling and solving the intersection
inspection rural postman problem. INFORMS J. Comput. (2021). https://doi.org/10.1287/
ijoc.2020.1013
5. Apache Software Foundation. Apache Hadoop. Taken from https://hadoop.apache.org
6. R Core Team. R: A language and environment for statistical computing. Taken from http://
www.R-project.org/ (2020)
7. Kuhn, M.: Building predictive models in R using the caret package. J. Stat. Software. 28(5),
1–26 (2008)
8. Schumacher, D. OMPR: R package to model mixed integer linear programs. Taken from https:/
/github.com/dirkschumacher/ompr (2020)
9. Symphony Contributors. Symphony MIP Solver. Taken from https://projects.coin-or.org/
SYMPHONY (2019)
Part II
Healthcare
Gathering Avoiding Centralized
Pedestrian Advice Framework: An
Application for Covid-19 Outbreak
Restrictions
Abstract Due to the COVID-19 pandemic, the focus on everydays mobility has
been shifted from traditional means of transport to how to safely commute for
work and/or move around the neighbourhood. Maintaining the safe distance among
pedestrians becomes crucial in big pedestrian networks. Looking at personal goals,
such as walking through the shortest path, could lead to congestion phenomena
on both roads and crossroads, violating the imposed regulations. We suggest a
centralized multi-objective approach able to assign alternative fair paths for users
while maintaining the congestion level as low as possible. Computational results
show that, even considering paths that are not longer than 1% with respect to the
shortest path for each pedestrian, the congestion phenomena are reduced of more
than 50%.
1 Introduction
The steady progress towards a globalized world has, in the last decades, reduced
the impact of distances. While, in the past, people were born, grew and spent all
their lives in the same city, travelling has recently become more popular. The need
to commute to reach the workplace consistently increased. As a consequence, the
use of public and private means of transportation also increased, before the sudden
drop due to the COVID-19 pandemic at the beginning of 2020. Before that, it was
common to spend a lot of time travelling, ending up in traffic jams as every car
The centralized traffic assignment idea was already mentioned by [18], where,
speaking about vehicular traffic, the author makes the distinction between user
equilibrium and system optimum. User equilibrium is a traffic assignment in which
each user decides on its own the best route to follow. Conversely, the system
optimum is the traffic assignment in which the total travel time is minimized,
without considerations on the behaviour and fairness among users. The deterioration
of the overall solution in implementing the user equilibrium versus the system
optimum is known in literature as the price of anarchy (see [12] and [14] for
details and mathematical background). A compromise solution between these two
principles can offer interesting insights, leading to a win-win situation for all people
Gathering Avoiding Centralized Pedestrian Advice Framework: An Application. . . 41
involved. In fact, a myopic view of the problem from the perspective of the single
user can lead to choices which, once put into practise, prove to be sub-optimal. As
an example, let’s consider drivers commuting every day to and from the workplace.
Each of them is prone to choose the shortest path, in terms of distance, travelling
times or both. But, if their paths intersect, the level of congestion on the streets
will increase the travelling times, reducing the effectiveness of the user’s choice.
Even using real-time information on traffic, users’ decisions simply result in a shift
of congestion from previously congested roads to other roads. On the contrary, by
choosing a different and at first sight less favourable path, the gain for the user
may be substantial. As highlighted in [6], however, the majority of users is not
willing to act socially but instead selfishly, especially if the cost of acting socially is
high [9]. Different approaches for balancing user equilibrium and system optimum
have been investigated (see [17] and [13] for comprehensive reviews), spanning
different ways of transportation. The bounded rational user equilibrium differs from
the user equilibrium in the fact that the users are not completely free to choose their
best route. In fact, a number of paths for each user can be considered according
to the so-called indifference travel time band (i.e. a collection of paths such that,
picked one, the users would not feel the desire to change it). Details on the bounded
rational user equilibrium can be found in [11] and in [19]. On the other hand,
the constrained system optimum minimizes the total travel time trying to limit the
unfairness among users by limiting the set of eligible paths only to those that are
not longer than a small percentage with respect to the best choice. This centralized
approach inspired this work. The first attempt to formulate the constrained system
optimum, as a convex non-linear problem, can be found in [10]. For theoretical
bounds on the price of anarchy we refer to [15]. Given the difficulty of handling
non-linear latency functions, a first attempt to use a linear programming model
to solve the constrained system optimum traffic assignment problem is proposed
in [1] and later in [4]. Since the number of eligible paths is exponential, in [2]
a fast and reliable heuristic algorithm to solve big road networks is proposed. In
all presented approaches the set of eligible paths is generated a priori. Once the
flow is routed on paths, it could happen that the experienced unfairness is much
higher than the one evaluated a priori. To overcome the issue, in [5] two constrained
system optimum formulations directly controlling the real experienced unfairness
are presented. None of the presented approaches take into account the arc congestion
level as a penalty for the system objective. The first attempt to embed arc congestion
reduction techniques has been proposed in [3], where a constrained system optimum
with the aim of lowering congestion on worst congested arcs is proposed.
A different approach which can be pursued to combine user equilibrium and
system optimum is to formulate the problem as a multi-objective model. An example
in the context of Air Traffic Management can be found in [8], where the authors
assess the viability of incorporating single airlines preferences within a collaborative
European framework. The main goal of the model presented is to ensure that
air space capacity over Europe is never exceeded, while trying to accommodate
stakeholders’ requirements. Indeed, airlines request to the Air Traffic Manager
trajectories and departure times for their flights, but usually they are not willing to
42 V. Dal Sasso and V. Morandi
share which policies lead to such choices. Hence, the requests may be disguised and
may vary from one airline to the other, on the basis of the airlines’ target. In order to
adapt each airline’s demand to the global objective of reducing costs, while ensuring
the congestion level of air space sectors is below a set capacity, the model tries to
minimize the deviation from the preferred trajectories, both in terms of delays and
routing, and to minimize the total costs of traversing air sectors. The outcome of
the model is a set of Pareto optimal solutions, among which one solution may be
selected by further considerations on the fairness between the different stakeholders.
φ
has value 1 if path k ∈ Kc traverses arc (i, j ) ∈ A, while it has value 0 otherwise.
Details on the generating paths algorithm are discussed and provided in [1].
Variables xij represent the total pedestrian flow on arc (i, j ) ∈ A, while variables
σij represent the excess of flow with respect to arc capacity on arc (i, j ). Similarly,
variables δh indicate the excess of flow traversing a certain vertex h ∈ V and
variables zh indicate the excess of flow traversing a certain arc (i, j ) ∈ A. Moreover,
a number of variables are related to each path. Variables yck represent the pedestrian
flow of OD pair c ∈ C routed on path k ∈ Kc .
The objective functions of the GA-CPR model are denoted by
tck
τ (φ) = yck (1)
t
φ cSP
c∈C k∈K
c
tij th
η(φ) = σij + δh (2)
capij caph
(i,j )∈A h∈V
Objective (1) records the total relative increase in walking time of pedestrians
on paths with respect to the shortest one. It depends on the walking time unfairness
parameter φ. Objective (2), also depending on φ, records the total relative excess of
capacity for arcs and nodes weighted by the traversing time.
The GA-CPR bi-objective model follows:
.
In Sect. 3, we will also analyze the impact of the choice of α parameter on the
optimal solution. The aim is to give an overview of the impact of the two objective
functions on different policy maker choices.
3 Computational Results
cities, namely Brescia, Bolzano, Rome and Vicenza. Arc walking times are obtained
using Graphhopper and arc capacities are obtained by dividing the real distance
on map by the safety walking distance of 2m imposed by Covid-19 regulations.
Vertices’ capacity is obtained as a percentage of the entering arcs capacity and
vertices’ traversing time is obtained randomly within a short time windows. OD
pairs’ demands are generated as a percentage of the capacity of the arcs exiting the
origin. The 4 tested networks have 50 nodes with approximately 2500 arcs and 25
OD pairs, each one with a different demand. All instances can be found at: https://
valentinamorandi.it/research-outcomes/. For each instance, a traffic assignment has
been found using a restricted path set with φ values in {0.01, 0.05, 0.1, 0.15, 0.2}
and α values in {1, 0.9, 0.7, 0.5, 0.3, 0.1, 0}. For each instance, we compute also the
user equilibrium (in which each passenger goes on their shortest route) as a matter
of comparison. It is obtained by setting α = 1 and φ = 0. In total, we obtain 36
traffic assignments for each instance. The model is solved using CPLEX 12.6.0 on
a Windows 64-bit computer with Intel Xeon processor E5-1650, 3.50 GHz, and 64
GB RAM. Results for the GA-CPR model are presented and discussed in Sect. 3.1.
In the following all the computed and collected statistics are defined.
• Congestion distribution
– σ̄ : average relative excess of flow with respect to the arc capacity, i.e.
1 σij
|A| capij .
(i,j )∈A
– δ̄: average relative excess of flow with respect to the node capacity, i.e.
1 δh
|V | caph .
h∈V
σ δh
– λ=0 : Percentage of arcs and nodes with capijij = 0 or cap h
= 0 w.r.t. the total
number of arcs and nodes.
σ
– λ0<...<0.25 : Percentage of arcs and nodes with 0 < capijij < 0.25 or 0 <
δh
caph < 0.25 w.r.t. the total number of arcs and nodes.
σij δh
– λ≥0.25 : Percentage of arcs and nodes with capij ≥ 0.25 or caph ≥ 0.25 w.r.t.
the total number of arcs and nodes.
• User experience for each OD pair c ∈ C
tck −tSP
– U ck = tSP : user walking unfairness with respect to fastest path for the OD
pair.
– Ū = 1
dc
yck U ck : weighted user walking unfairness.
c∈C c∈C φ
k∈Kc
• Network statistics
– T : percentage increase of total walking time with respect to user equilibrium
(UE).
– : reduction of the total walking time with exceeded capacity on arcs with
respect to UE.
– : reduction of the total walking time with exceeded capacity on nodes with
respect to UE.
46 V. Dal Sasso and V. Morandi
Fig. 2 Decrease of walking time with exceeded capacity on nodes (on the left) and on arcs
(on the right), as a function of φ
Fig. 4 Average node congestion δ̄ (on the left) and arc congestion σ̄ (on the right), as a function
of φ
increase in walking time is minimized is very low, while it arises to almost 70%
when total increase in walking time is neglected and all the focus is on minimizing
congestion. As noted also above, just a small increase on the length of the allowed
paths gives a high reduction of congestion.
References
1. Angelelli, E., et al.: Proactive route guidance to avoid congestion. Transport. Res. B Methodol.
94, 1–21 (2016)
2. Angelelli, E., et al.: Congestion avoiding heuristic path generation for the proactive route
guidance. Comput. Oper. Res. 99, 234–248 (2018)
3. Angelelli, E., et al.: A trade-off between average and maximum arc congestion minimization
in traffic assignment with user constraints. Comput. Oper. Res. 110, 88–100 (2019)
4. Angelelli, E., et al.: System optimal routing of traffic flows with user constraints using linear
programming. Eur. J. Oper. Res. (In press, 2020)
5. Angelelli, E., et al.: Minimizing the total travel time with limited unfairness in traffic networks.
Comput. Oper. Res., 123 (2020)
6. Avineri, E.: Social value orientation and the efficiency of traffic networks. Emerald (2009)
7. Chiandussi, G., et al.: Comparison of multi-objective optimization methodologies for engineer-
ing applications. Comput. Math. Appl. 63, 912–942 (2012)
8. Dal Sasso, V., et al.: Incorporating Stakeholders’ priorities and preferences in 4D trajectory
optimization. Transport. Res. B Methodol. 117, 594–609 (2018)
9. Fehr, E., et al.: The nature of human altruism. Nature, 425 (2003)
10. Jahn, O., et al.: System-optimal routing of traffic flows with user constraints in networks with
congestion. Operations Research 53, 600–616 (2005)
11. Mahmassani, H.S., et al.: On boundedly rational user equilibrium in transportation systems.
Transportation Science 21, 89–99 (1987)
12. Mahmassani, H.S., et al.: Network performance under system optimal and user equilibrium
dynamic assignments: implications for advanced traveler information systems. Transport. Res.
Rec. (1993)
13. Morandi, V.: Bridging the user equilibrium and the system optimum in static traffic assignment:
how the cooperation among drivers can solve the congestion problem in city networks (2020).
Available as working paper in https://valentinamorandi.it/research-outcomes/
14. Roughgarden, T., et al.: How bad is selfish routing? J. ACM (JACM), 49 (2002)
15. Schulz, A.S., et al.: Efficiency and fairness of system-optimal routing with user constraints.
Networks 48, 223–234 (2006)
16. Sheffi, Y.: Urban transportation network. Equilibrium Analysis with Mathematical Program-
ming Methods. Prentice Hall (1985)
17. Van Essen, M., et al.: From user equilibrium to system optimum: a literature review on the
role of travel information, bounded rationality and non-selfish behaviour at the network and
individual levels. Transport Reviews 36, 527–548 (2016)
18. Wardrop, J.G., et al.: Road paper. Some theoretical aspects of road traffic research. Proc. Inst.
Civil Eng. 1, 325–362 (1952)
19. Zhang, L.: Behavioral foundation of route choice and traffic assignment: comparison of
principles of user equilibrium traffic assignment under different behavioral assumptions.
Transport. Res. Rec. 254, 1–10 (2011)
A MILP Formulation for
the Reorganization of the Blood Supply
Chain in Italian Regions
Abstract Blood is a vital resource for human being since its unavailability may
cause deaths and complications for patients. For this reason, in the last 20 years
great interest has been addressed worldwide to the blood supply chain management,
in terms of efficient and effective policy making and system design.
In answer to this raising need, the Italian Healthcare Ministry issued a decree
aimed at improving the blood supply chain at regional level in terms of costs,
accessibility and shortage, providing also several indications and restrictions to
be accounted for. In this context, this chapter presents a mixed-integer linear pro-
gramming formulation to determine the optimal location and the number of blood
facilities at regional scale, with the aim of minimizing system costs meanwhile
guaranteeing good standard service level requirements.
The proposed formulation tackles the problem in a multi-echelon and multi-
objective perspective. It has been solved by Gurobi 9.0.1 solver and validated on
real like test cases related to Campania and Puglia regions. Finally, the impacts of
the different parameters involved in the formulation are analyzed in order to provide
managerial insights to decision makers and healthcare stakeholders.
A. Diglio · C. Piccolo
Department of Industrial Engineering (DII), Università degli studi di Napoli Federico II, Napoli,
Italy
e-mail: [email protected]; [email protected]
A. Mancuso () · A. Masone · C. Sterle
Department of Electrical Engineering and Information Technology (DIETI), Università degli
studi di Napoli Federico II, Napoli, Italy
e-mail: [email protected]; [email protected]; [email protected]
1 Introduction
Blood has several functions, including transporting oxygen and nutrients to the
lungs and tissues [1]. When extracted from the human body, it becomes a per-
ishable product that can be used for medical treatments, such as surgery, organ
transplantation, and treatments for cancer and blood disorders. No substitute of
human blood is currently available and, in many countries, blood itself is considered
a scarce resource, whose waste is unacceptable as a harbinger of postponed surgery,
untreated patients and deaths [2]. Voluntary donation is the main source of blood,
suffering from some drawbacks such as the limited number of donors, test delays
and high perishability [3]. Some blood substitutes, such as artificial blood or blood
components with in vitro stem cells, may become alternatives only in the future [4].
In this context, the blood supply chain (BSC) management is a crucial activity.
It is devoted to the management of the six main processes associated with blood
flow: collection, testing, component processing, storage, distribution, and trans-
fusion. These activities develop through five interacting levels to be opportunely
coordinated: donors, mobile collection sites (CSs), blood centers (BCs), demand
nodes (hospitals, clinics, or other transfusion points), and patients [5].
Optimal decisions making in the BSC is thus necessary to minimize the
shortages, the wastes and to design a more efficient, effective and robust system.
In Italy the BSC is managed by the Transfusion System, which is a public
body part of the Italian National Health Service (NHS) established in 1978. Unlike
other countries, the Italian BSC is fully based on voluntary and unpaid donations,
currently involving around 1.7 million donors, 1.3 million of which are periodic and
over 370,000 are occasional first donors. On average, a blood donation occurs every
10 s, which enables approximately 1745 patients to be transfused and thousands of
people to be treated with plasma-derived medicinal products per day [6].
In 2012, the Italian government, following the European Directive 2002/98/EC,
issued a series of national guidelines for regional authorities related to the accred-
itation of transfusion units dedicated to the collection and processing of blood
and its components [7]. In particular, some efficiency measures have been intro-
duced, according to which a consolidation of processing activities (blood analysis,
separation of blood components and transformation into plasma-derived products)
must be performed at a limited number of Blood Centers (BCs). Based on this
recommendation, a minimum of 40,000 units per year and for each BC should be
guaranteed. This target is significantly higher than the average BC productivity in
all the Italian regions. Indeed, the average BC productivity in Italy is of 9981 units
per year and, in the regions objective of our experimentation, namely Campania and
Puglia, this value is of 6890 and 7682 units per year, respectively [6].
Therefore, a reorganization of Italian regional BSC is required with the aim
of rationalizing its structure and guaranteeing the regional self-sufficiency. The
regional authorities recognize two main intervention strategies to increase the BC
productivity until the imposed threshold value: decreasing the number of available
BCs, choosing the ones to be left open among the already existing ones; increasing
A MILP Formulation for the Reorganization of the Blood Supply Chain. . . 53
the blood units assigned to each BC by employing mobile units to reach isolated
blood donation points. In addition to these strategies, as proposed in [8], we consider
also the possibility of performing a downgrade of the existing BCs to the so called
Blood Stations (BS), where only collection activities are carried out. The blood
collected at the BSs is then transferred to the BCs for the processing. Since the
propensity to donation is highly affected by the distance between the donors and
the collection facility, the introduction of such BSs should allow to further increase
the collected blood units per year. In the following we refer BC and BS as Blood
Facilities (BF).
As widely known, Operations Research methodologies represent a valuable
solution tool for decision problems arising in healthcare planning and management.
As a matter of fact, optimization problems in healthcare have received considerable
attention for over three decades, as shown in [9–11]. In particular, the literature
concerning BSC management is very ample and deals with many different strategic,
tactical and operational problems, differing for the time horizon, the nature of the
available data, the envisaged processes and the structure (number of levels) of the
system.
This work focuses on a strategic single period decision problem for the reorga-
nization of a multi-echelon BSC system. This problem falls within the classes of
covering and facility location problems (FLP). For the sake of the brevity, in the
following, we just give a brief overview of the literature dealing with strategic BSC
management problems coherent with the problem tackled in this work.
Several contributions deal with BSC management problems arising in specific
regions. Indeed, in [12] the authors tackle the problem of allocating health resources
throughout the area of Burgos, in the north of Spain. It is modeled and solved as
a variant of the p-center and maximal covering problems. In [13] a FLP related
to the blood services of Turkish Red Crescent at a regional scale is addressed.
The authors considered the problem as a hierarchical system in which we define
two echelons in the hierarchy of services. In [14] a capacitated maximal covering
problem is proposed to locate healthcare facilities in one of the districts in the state
of Selangor, Malaysia. Recently, in [15] the authors analyzed a strategic problem
concerning the territorial reorganization of regional blood management systems
envisaging two kind of blood facilities. The study was aimed at closing/reconverting
a set of operating BFs, already located in a region, to find a good trade-off solution
to attract donors and contain the management costs. The model was tested on the
real case study of Campania Region.
Other contributions, instead deal with more general problems and introduce new
requirements related to accessibility and quality of service. In [16] the authors
investigate the problem of locating several different facilities (e.g., hospitals,
universities, police workstations) in an urban area. Different optimization models
are proposed in dependence of the specific kind of facility and targets. The models
are then validated on several test cases so showing that they can represent a
valuable support tool for quantitative decision making. The concept of accessibility
is introduced in [15], where the authors provide a review of the main methodological
advancements dealing with the inequality issue in healthcare services. Various
54 A. Diglio et al.
The reorganization of the regional BSC involves two strategic decisions, one
related to the employed facilities and the other related to the donor assignments.
In particular, concerning the decisions regarding the blood facilities, each existing
structure can be:
• Held open as BC;
• Downgraded to be a BS, disabling blood processing and allowing only the
collection activity, which obviously implies lower running costs;
• Closed and no longer used.
In terms of assignment, we have to decide the one-to-one assignment of each
donor to the available BS, BC or mobile unit.
To model the problem, it is made reference to a localization space corresponding
to a generic region associated with an annual demand D for blood to be collected.
A MILP Formulation for the Reorganization of the Blood Supply Chain. . . 55
It is assumed that there is a set J of BCs located in the area to carry out both blood
collection and processing activities and a set I of discrete nodes, where potential
donors are concentrated. On the basis of these sets, we define dij as the distance
from a node i, i ∈ I, and a facility j, j ∈ J, and djj as the distance between the pair of
facilities (j, j ), j, j ∈ J, respectively. More precisely, dij represents the distance each
donor is willing to travel and it has to be lower than or equal to a maximum radius
r. The blood collected in each BS must be transported to an active BC in order
to be processed. Due to some technical constraints, related to the phenomenon of
blood degradation, it is assumed that this allocation is possible if the distance djj
is equal to or lower than a maximum radius dmax . Furthermore, it is assumed that
each BS can be assigned to a single BC, thus avoiding the possibility of dividing its
blood collection among different BCs; this hypothesis is justified by the fact that,
from a managerial point of view, it is desirable to define a group of BSs under the
competence of a single BC in order to better coordinate the associated flows of
materials and information. Based on previous notation, three more additional sets
are needed to model the problem: Ni , set of nodes j, j ∈ J, whose distance from the
i, i ∈ I, is less than or equal to r; Mj , set of nodes j , j ∈ J, whose distance from j,
j ∈ J is less than or equal to dmax ; Oi , set of nodes j, j ∈ J, whose distance from the
i, i ∈ I, is less than or equal to dmax .
Each BS is characterized by a collection capacity C, which indicates the
maximum number of units of whole blood it is able to collect each year. It is
also assumed that in each node i, i ∈ I, we have quantity of potential donors
equal to ai (α ∗ pi ), where α is the donation rate and pi the population of the
node i, respectively. Facilities carrying out processing activities are required to
achieve a minimum productivity target Pmin in terms of whole blood produced
per year, according to the guidelines issued by the national government. Assuming
that the regional transfusion system does not meet this requirement in the current
configuration, the reorganization is aimed at consolidating the processing activities
in a smaller number of facilities while maintaining a capillary collection in the area
under investigation. To this aim, it is assumed that the region is equipped with a set
of mobile units, in a number equal to n, which, unlike the fixed structures, are able
to collect the blood units at the donors location. Each mobile unit has a maximum
annual collection capacity t, and that it transports the collected units to a BC for
subsequent processing steps. As previously explained, it is assumed that the transfer
of the blood units collected in a generic node is carried out towards a single BC
located within the maximum radius dmax .
Therefore, the problem consists in choosing the right combination of BC and
BS among the existing BFs, with the aim of minimizing the associated costs, that
is, the costs necessary to move the blood units collected by the BS and mobile
units to the BCs (these costs are assumed to be proportional to the amount of blood
collected and the distances traveled), while satisfying a series of requirements in
terms of total blood collected (self-sufficiency goal) and productivity for each BC
(efficiency goal, i.e., reaching the minimum productivity avoiding the BF capacity
overrunning). These requirements are to be understood as soft requirements, since
56 A. Diglio et al.
s. t.
xij = 0 ∀i ∈ I (4)
j ∈(J −Ni )
A MILP Formulation for the Reorganization of the Blood Supply Chain. . . 57
Fig. 1 Representation of the problem setting, parameters and variables for a region under
investigation
| Ni | xij ≥ yj(s) + yj(c) ∀i ∈ I (5)
j ∈Ni j ∈Ni
dij xij + F − dij yj(s) + yj(c) ≤ F ∀i ∈ I, ∀j ∈ Ni (6)
j ∈Ni
∀j ∈ J, ∀j ∈ J
(c)
qjj ≤ yj (7)
(s) (c)
qjj = yj + yj ∀j ∈ J (8)
j ∈Mj
qjj = 0 ∀j ∈ J (9)
j ∈(J −Mj )
xij + zij ≤ 1 ∀i ∈ I (11)
j ∈J
(c)
zij ≤ yj ∀i ∈ I, ∀j ∈ Oi (12)
zij = 0 ∀i ∈ I (13)
j ∈(J −Oi )
zij ≤ 1 ∀i ∈ I (14)
j ∈J
tijj ≤ xij ∀i ∈ I, ∀j ∈ J (15)
j ∈J
58 A. Diglio et al.
∀i ∈ I, ∀j, j ∈ J
(c)
tijj ≤ yj (16)
ai xij + ai zij + δ ≥ D (17)
i∈I j ∈J i∈I j ∈J
ai xij − ai tijj − ψj ≤ C ∀j ∈ J (18)
i∈I i∈I j ∈J
i∈I j ∈J ai wij j − tij j − i∈I j =j ∈J ai tijj +
(c) (19)
i∈I j ∈J ai tij j + i∈I ai zij + ϕj ≥ Pmin yj ∀j ∈ J
ai zij + ai tijj ≤ tn (20)
i∈I j ∈J i∈I j ∈J j ∈J
yj(s), yj(c) , xij , qjj , wijj , zij , tijj ∈ {0, 1} ∀i ∈ I, ∀j, j ∈ J (24)
ϕj , ψj ≥ 0 ∀j ∈ J
δ≥0
The objective function (1) minimizes four components. The first two components
concern the transportation costs from BS to BC and from donors to BC (using
mobile unit), respectively. The third component considers the cost for the reallo-
cation of a donor node from the nearest BC to a different one in case of capacity
overrun. Finally, the fourth component includes a penalty cost linked to the non-
compliance with the requirements of efficiency, self-sufficiency and the exceeding
of the maximum collection capacity. The constraints (2) ensure that a single type of
BF can be located in each node j, j ∈ J. Constraints (3) are consistency constraints
between assignment and node variables. Constraints (4) avoid the allocation of any
node i, i ∈ I, to BF j, j ∈ J, furthest away from the coverage radius r. The constraints
(5) impose that each node i, i ∈ I, must be assigned to at least one structure within
its coverage radius. The constraints (6) require the node i, i ∈ I, to be allocated,
within the radius r, to the nearest active structure. As a matter of fact, by setting
F = maxi ∈ I, j ∈ J {dij} the conditions become redundant for all those nodes where no
structure is found while, in relation to the active BF, they assign each node i, i ∈ I, to
node j , j ∈ J, at the minimum distance. The constraints (7) ensure that the node j,
j ∈ J, can be assigned only to structures j , j ∈ J, where a BC is open. Constraints (8)
dictate that any node j, j ∈ J, in which a BF is active in the final configuration must
A MILP Formulation for the Reorganization of the Blood Supply Chain. . . 59
be assigned to a single structure within the maximum allowable distance dmax . The
constraints (9) avoid the allocation of any BS j, j ∈ J, to the BC j , j ∈ J, farthest
from the coverage radius dmax . Constraints (10) ensure that each BC is assigned
to itself. The constraints (11) ensure that each node i, i ∈ I, can be allocated to a
single structure j, j ∈ J, located within the radius r or less. In other words, these
constraints establish that the potential donors offered by each node can be collected
by direct transfer to an active BF or using mobile units. The constraints (12) impose
that donors at nodes i, i ∈ I, allocated through mobile units and not covered by any
active BF within the radius r, can be conferred for processing to an active BC j,
j ∈ J, located within the covering radius dmax from node i, i ∈ I. This condition
is strengthened by the constraints (13) which avoid the allocation to BC j, j ∈ J,
placed further than the radius dmax from node i, i ∈ I. Furthermore, the constraints
(14) ensure that donors in each node i, i ∈ I, allocated through mobile units can
be assigned to only one BC. The constraints (15) establish that the reallocation of
a node i, i ∈ I, or the allocation through mobile units of the donors offered by a
node i, i ∈ I, located at a radius less than r from at least one active center can
be only carried out if this node has already been assigned to a structure j, j ∈ J.
Constraints (16) impose that these reallocations can occur only in correspondence
with active BCs in j , j ∈ J. Constraint (17) ensures that the amount of whole blood
collected is at least equal to the total regional blood demand D (self-sufficiency
goal). Constraints (18) define an upper limit to the capacity for the collection service
at each facility (efficiency goal). The constraints (19) require that the total amount
of whole blood processed in each BC, collected by the latter, by the BS and by the
mobile units assigned to it, exceeds the minimum productivity target Pmin (efficiency
goal). Constraint (20) ensure that the total amount of blood collected through the
mobile units does not exceed the maximum available capacity (tn). Constraints (21),
(22) and (23) ensure that the new binary variables wijj , introduced to linearize the
proposed model, are equal to 1 if donors from node i, i ∈ I are allocated to structure
j , j ∈ J and worked in j, j ∈ J. Finally, the constraints (24) define the nature of the
decision variables introduced.
It is useful to clarify that the decision variable tijj has a twofold utility: on the
one hand it allows to extend the coverage radius by assigning nodes out of the
maximum coverage radii r and dmax , when the model requires it; on the other hand
it allows the model to choose whether to reassign the nodes or pay the penalty cost
for exceeding the maximum capacity C.
In this section we validate the proposed MILP formulation on two test cases
related to two Italian regions, namely Campania and Puglia. In particular, Sect.
3.1 describes the problem setting and used parameters; Sect. 3.2 is devoted to the
presentation and discussion of the obtained experimental results.
60 A. Diglio et al.
Among all the Italian regions the chapter refers to Campania and Puglia for two
main reasons. The first reason is of geographical/topological nature, since Campania
has a compact shape while Puglia has an elongated one. The second reason is
the presence in Campania of the city of Naples acting as a very strong center of
gravity for the BCs, since its number of inhabitants and population density is largely
higher than the other provinces of the same region. These two different regions
are considered to investigate if the aforementioned conditions have a significant
effect on the solution returned by the proposed model. For both areas under
investigation a discretization based on the pre-exiting territorial division of the
region in municipalities is adopted. Donations are considered to be proportional
to population in each municipality by a coefficient α (donation rate) equal to the
percentage of population that donates blood according to historical data. It has
been assumed that every person donates once every year and that coefficient α is
uniformly distributed within the region. According to historical data provided by the
regional authority, it has been observed that, on average, in Italy almost 35 donations
every 1000 inhabitants have been carried out in the last 5 years (α = 0.0350).
Campania is currently characterized by the presence of 22 BCs, while Puglia has
21 opened ones. Both the regions have an average level of productivity significantly
lower than the minimum threshold Pmin imposed by EU and national regulation.
Furthermore, as far as the Campania region is considered, due to the presence of
the municipality of Naples, characterized by a largely higher population level than
the other cities of the region (almost 962,000 inhabitants) and by the presence of
nine BCs, the municipal territory has been divided into ten sub-areas in order to
obtain experiments of greater accuracy. In addition, the λ penalty value, based on a
calibration stage, has been set to a very large value (λ = 105), since not achieving the
requirements of self-sufficiency and efficiency is allowed but it should be strongly
avoided.
The three calibration parameters (r, dmax , α) have been varied to assess the
stability of the optimal solution.
In particular:
• The coverage radius r of a center reproduces the willingness of people to travel
longer distances following regional or national awareness-raising campaigns of
sensitization (r = 20 and 30 km);
• The coverage radius dmax evaluates the effects of the different blood transport
strategies collected by BS to the assigned BC and mobile units to the centers
(dmax = 40, 50 and 60 km);
• The donation rate α simulates the effects of potential regional campaigns of
awareness aimed at increasing the propensity of the population to donate blood,
or the decrease of this rate from its present value to simulate a stressful situation
for regional BMS (α = 0.030, 0.035 and 0.040).
A MILP Formulation for the Reorganization of the Blood Supply Chain. . . 61
All the experiments carried out will be evaluated in terms of open BC and BS,
objective function value and average accessibility value (a), defined as the sum of
minimum Euclidian distances of a node i where the donators ∗areconcentrated to an
d
open BC or BS in the considered scenario from a = i∈I |Iij| [19].
This section will provide extensive results for both the regions. Furthermore,
graphical representations of several experienced scenarios are provided.
The test problems, generated for each combination of the above parameters, were
solved using Gurobi 9.0.1 solver on an Intel Core i7 (with 2.60 GigaHertz and 16.00
GigaBytes of RAM).
Table 1 shows the value of objective function (column 2), the average accessi-
bility (column 3) and the number of BCs and BSs opened in the scenario (column
7, 8) for every possible combination of the calibration parameters (column 4, 5, 6)
considered in the study for the Campania region (we will refer to every possible
configuration of the parameter as an instance, indicated by letter C followed by the
number of the scenario, note that the C19 represent the value for the as is scenario).
Table 2 is referred to the Puglia region (we will refer to every possible configuration
Table 1 Results for the Campania region varying the α,dmax and a parameters
Scenario Z a dmax α r BCs BSs Time (s)
C1 1.73 E+09 25.94 40 0.035 30 1 3 917
C2 1.23 E+09 24.93 50 0.035 30 2 3 956
C3 1.23 E+09 24.93 60 0.035 30 2 3 902
C4 8.02 E+08 32.99 40 0.04 30 1 3 481
C5 1.20 E+09 27.63 40 0.03 30 2 6 998
C6 8.06 E+08 26.62 50 0.03 30 2 3 1522
C7 7.65 E+08 27.19 50 0.04 30 2 2 632
C8 8.05 E+08 26.62 60 0.03 30 2 3 1270
C9 7.64 E+08 27.19 60 0.04 30 2 2 654
C10 9.14 E+08 29.77 40 0.035 20 2 3 342
C11 2.61 E+09 27.55 40 0.03 20 2 6 550
C12 2.68 E+09 28.40 40 0.04 20 1 4 307
C13 9.14 E+08 26.83 50 0.035 20 2 4 598
C14 2.19 E+09 24.59 50 0.03 20 1 6 519
C15 2.93 E+07 25.55 50 0.04 20 1 4 565
C16 9.14 E+08 26.83 60 0.035 20 2 5 541
C17 2.19 E+09 24.59 60 0.03 20 1 6 491
C18 2.85 E+07 25.55 60 0.04 20 2 4 254
C19 (as-is) 6.83 E+11 16.48 40 0.035 30 22 0 23
62 A. Diglio et al.
Table 2 Results for the Puglia region varying the α,dmax and a parameters
Scenario Z a dmax α r BCs BSs Time (s)
P1 3.28 E+06 46.08 40 0.035 30 2 2 52
P2 2.09 E+06 39.33 50 0.035 30 2 4 55
P3 1.75 E+06 38.78 60 0.035 30 2 4 61
P4 4.27 E+05 53.39 40 0.04 30 2 2 24
P5 8.07 E+08 32.33 40 0.03 30 2 2 49
P6 5.41 E+06 29.47 50 0.03 30 2 4 63
P7 4.27 E+05 53.39 50 0.04 30 2 4 46
P8 4.81 E+06 35.91 60 0.03 30 2 4 70
P9 4.27 E+05 53.39 60 0.04 30 2 4 54
P10 2.79 E+08 32.45 40 0.035 20 2 4 13
P11 1.80 E+09 26.94 40 0.03 20 2 4 12
P12 2.71 E+06 46.06 40 0.04 20 2 4 14
P13 6.41 E+06 41.09 50 0.035 20 2 4 10
P14 1.31 E+09 38.81 50 0.03 20 2 4 16
P15 2.71 E+06 46.06 50 0.04 20 2 4 12
P16 5.02 E+06 36.28 60 0.035 20 2 4 11
P17 7.65 E+08 33.5 60 0.03 20 2 4 18
P18 1.14 E+06 38.78 60 0.04 20 2 4 11
P19 (as-is) 7.28 E+14 17.75 40 0.035 30 21 0 7
Fig. 2 Representation of the solutions of the “as-is” scenarios: (a) solution for Campania region;
(b) solution for Puglia region
Fig. 3 Representations of the solutions obtained for Campania Region: (a) solution with “as-is”
parameters; (b) solution of the a worst case scenario; (c) solution of the z worst case scenario
Fig. 4 Representations of the solutions obtained for Puglia Region: (a) solution with “as-is”
parameters; (b) solution of the a worst case scenario ; (c) solution of the z worst case scenario
1. The “as-is” scenario, in which we constrained the model to let open all the
BCs to simulate the situation currently running in Italy, using as combination
of parameters α = 0.035, r = 30, dmax = 40, which are given by the regional
authority, in order to have a benchmark to compare the solutions proposed by
our experimentation (Fig. 2a for Campania, Fig. 2b for Puglia);
64 A. Diglio et al.
4 Conclusions
This work analyzes the strategic problem concerning the reorganization of regional
blood management systems. It is aimed at closing or reconverting the facilities
already operating in a region and find a good compromise solution between the
objective of attracting donors (objective of self-sufficiency) and the need of reducing
the management costs (objective of efficiency). To this end, an optimization model
is proposed and developed, taking inspiration from the literature on multi-echelon
facility location. The main objective of this work is to provide an insight of the
impact of possible strategies on the regional BSC in order to support the competent
authorities in its reorganization, and to evaluate the sensitivity of the proposed
solutions to the variation of several parameters, in order to assess the impact of
certain policies on the proposed strategies. The model was tested on two real case
A MILP Formulation for the Reorganization of the Blood Supply Chain. . . 65
for the Campania and Puglia regions generating several scenarios. Varying some
key parameters to simulate a wide range of real situations allowed to investigate
the model robustness to the changing conditions, which is a very important factor
when locating healthcare facilities. Furthermore, a possible future development of
the problem is represented by the introduction of stochasticity in the problem, in line
with what is happening in the literature [20–22]. In this context, the model should
reallocate part of the donors to other centers to avoid stress scenarios caused by
unforeseen situations.
References
21. Govindan, K., Fattahi, M., Keyvanshokooh, E.: Supply chain network design under uncer-
tainty: a comprehensive review and future research directions. Eur. J. Oper. Res. 263(1),
108–141 (2017)
22. Zhairi B., Mousazadeh M., Bozorgi-Amiri A.: A robust stochastic programming approach for
blood collection and distribution network design. Int. J. Res. Ind. Eng. 3(2), 1–11 (2014)
Part III
Logistics
Instance Generation Framework for
Green Vehicle Routing
Abstract This paper proposes a framework for generating relevant sets of instances
for Green-Vehicle Routing Problems (G-VRP). In the G-VRP, electric vehicles with
limited autonomy can recharge at Alternative Fuel Stations (AFSs) to keep visiting
customers. To the best of our knowledge the G-VRP scientific literature accounts
with only two sets of instances. Our instance generation framework is based on
solving a maximum leaf spanning tree problem to address the location of AFSs, and
it guarantees that the generated instances are feasible (as opposed to the procedure
previously proposed). Two G-VRP variants are considered, (i) where consecutive
AFSs visits are not allowed, and (ii) where consecutive AFSs visits are allowed.
The results are analyzed and discussed, and conclusions on the benefits of the
contributions are presented.
1 Introduction
The Vehicle Routing Problem (VRP) has been extensively studied in the literature,
and many variants covering additional constraints related to scheduling, budget,
fleet heterogeneity, and others are considered [24]. Another research field that
has gained traction in the past decades is green logistics, which emerged like a
Supported by FAPESP (proc. 2015/11937-9, and 2018/25950-5), and CNPq (proc. 134616/2018-9,
314384/2018-9, and 435520/2018-0).
discipline focused on the planning and operation of logistic systems with high
energy efficiency and low levels of carbon emission [20].
The environmental, geopolitical, and financial costs of the world’s dependence on
gasoline-powered vehicles are becoming increasingly worrisome [19]. The transport
sector is responsible for high levels of CO2 emissions. For example, the transport
sector in 2018 accounted for 28.2% of CO2 emission in the United States [14], and
in 2014 it accounted for 20.45% of CO2 emission worldwide [23]. Recognizing
the environmental impacts, logistic companies are making their operations greener
[17]. Furthermore, technological breakthroughs have enabled the development of
clean motor vehicles, that do not emit harmful substances in their exhaust fumes
and which create less noise without causing other types of pollution [12]. The
adoption of Alternative Fuel Vehicles (AFVs) has been regarded as one of the most
promising strategies to address the issues of fossil fuel dependence, air quality, and,
more recently, climate change [26]. However, there are still several major barriers to
broaden the adoption of AFVs. One of them is the maximum driving range that may
be insufficient to complete some delivery tours [17], forcing the AFVs to stop in
Alternative Fuel Stations (AFSs) in order to refuel. Thus, efficient methods that
locate AFSs are essential to guarantee the routing decision feasibility. Locating
AFSs to serve the maximum demand possible is the key to the early efforts in the
design of new infrastructures composed of AFVs [19].
Among VRP variants dealing with green logistics, there is the Green Vehicle
Routing Problem (G-VRP) [3]. The G-VRP has additional challenges associated
with operating a fleet of AFV and incorporating stops at AFS [15]. One of the
biggest challenges modeled by G-VRP is the reduced number of AFSs and the low
autonomy of AFVs.
The current G-VRP literature lacks a more general set of instances (as far as
we know, accounts for two sets [1, 15]) as well as a customizable framework to
generate relevant sets of instances. In this paper, we will introduce such a framework
to generate feasible G-VRP instances by solving a variant of the Maximum Leaf
Spanning Tree (MLST) problem. The MLST consists of finding a spanning tree on
a connected graph with the maximum number of leaves. We consider the leaves as
customers and the internal vertices as AFSs and the depot.
This paper is organized as follows. Section 2 gives a literature review concerning
the available G-VRP instances sets. Section 3 provides a formal definition of the
problem. Section 4 describes the instance generation procedure. Section 5 presents
the computational experiments and the generated instances sets. And finally, Sect. 6
presents the final remarks and possible future works.
2 Literature Review
Plenty of works have approached the G-VRP [1–3, 5, 9, 10, 15, 18, 20], as well as
its variants for example, the Multiple Technologies and Partial Recharges (GVRP-
Instance Generation Framework for Green Vehicle Routing 71
MTPR) [16], the Recharging VRP (RVRP) [11, 25], the Electric Capacitated
Covering Tour Problem (ECCTP) [6], and many others [7, 13, 21].
The first G-VRP instances set was proposed by [15] and comprises 52 instances
with 20 to 500 customers and 3 to 28 AFSs. Each instance was randomly generated
assuming a grid of 330 by 300 miles. The majority of the instances in this set contain
20 customers and have been randomly generated to simulate different scenarios in
terms of customer and AFSs distribution. The depot location was fixed and assumed
to be located near the center of the grid in all scenarios. The larger instances [15]
were created by using a medical textile supply company depot location in Virginia
and a customer pool based on hospital locations in Virginia, and the District of
Columbia. The refueling stations correspond to actual biodiesel stations located in
the region. The number of customers in these larger instances ranges from 111
to 500. It should be mentioned that these instances may contain some infeasible
customers. According to [15], a customer is infeasible if it cannot be visited by a
route making at most one refueling stop. Motivated by the fact that most of these
instances are small, and the five larger instances with 111 customers only differ
in the number of refueling stations (ranging from 21 to 28), [1] proposed a new
set of G-VRP instances. This set contains four additional instances by extracting
the first 75 and 100 customers from the two 111-customer instances having 21 and
28 stations. Moreover, [1] created another set of instances by extracting customers
from the larger instances of [15]. The set AB [1] contains 40 instances with several
customers ranging from 50 to 100, split into two subsets AB1 and AB2. To solve
the AB1 instances, [1] assumed that all of the infeasible customers are removed a
priori. Concerning the AB2 instances, they have the same customers and refueling
stations as those in AB1, that is, AB2 instances contain customers that cannot be
served with a single refueling stop. Reference [1] solve the AB2 instances by an
exact approach that deals with consecutive refueling stops.
3 Problem Definition
In the G-VRP proposed by [15], a set of customers with known services times must
be attended by a set of homogeneous alternative fuel vehicles, which operate from a
common depot. These vehicles have a lower autonomy in terms of traveled distance,
forcing them to stop and refuel in AFSs. Each customer must be visited once by
exactly one vehicle and the time spent by a vehicle in a route cannot exceed a
maximum operation time. The objective is to reduce the total traveled distance.
Consider a complete directed graph G(V , E), where V = C ∪ F ∪ {v0 }, where
C is the set of customers, and F is the set of AFSs. The si 0 is the customer
vi service time, and sf 0 is the AFS vf refueling time. Vertex v0 ∈ V is the
depot and E is the set of edges. Edges (i, j ) ∈ E have metric costs cij > 0. The
ρ > 0 is the vehicle energy consumption rate, and eij = cij ρ is the required energy
c
to traverse edge (i, j ). The ξ > 0 is the vehicle average speed, and tij = ξij is the
required time to traverse the edge (i, j ). In the depot, there is a set M = {1, . . . , |C|}
72 M.D. Andrade and F. L. Usberti
We consider two types of instances, the first (I1 ) not allowing consecutive AFS
visits to serve a customer (as considered by [15]), and the second (I2 ) allowing
such property (as considered by the [1]’s instances set AB2). These instances are
generated as solutions to a variant of the MLST.
Figure 1 contains three subfigures, Fig. 1a shows an example of an MLST
instance, and the two remaining subfigures present examples of valid solutions for
that instance, where the nodes in grey are the leaves. Figure 1b shows a non-optimal
solution, whereas Fig. 1c shows the optimal solution.
In our context, an MLST instance is given by a graph with a distinct vertex
(root) representing the depot. In the MLST solution, the leaves correspond to the
Fig. 1 An MLST instance and two examples of solutions. (a) An MLST instance with six nodes
and seven edges. (b) An MLST solution with three leaves. (c) The MLST optimal solution with
five leaves
Instance Generation Framework for Green Vehicle Routing 73
G-VRP customers and the remaining nodes are the AFSs and depot. There are three
main reasons to use the MLST problem as the framework to generate the set of
instances. (i) the generated instances ensure that every customer can be reached by
a vehicle starting at the depot and visiting one or more AFSs, (ii) the generated
instances maximize the number of customers that can be served while maintaining
feasibility, and (iii) despite the MLST being NP-hard, the literature provides fast
exact approaches based on ILP.
In the flow-based model proposed by [22] the MLST is reduced to the Maximum
Leaf Spanning Arborescence (MLSA) problem by replacing each edge (u, v) from
the original graph G(V , E) by two oppositely directed arcs (u, v) and (v, u)
obtaining a digraph D = (V , A). In this case, V contains the customers with
the depot, and A the set of oppositely directed arcs between all the nodes in V .
The model considers a new vertex vt (terminal) along with a set of artificial arcs
{(i, t) : vi ∈ V \{vr }} where vr is the root, which in our case is v0 (the depot). Let
D = (V , A ) be the resulting digraph, and let cij > 0 : (i, j ) ∈ E be the cost of
edge (i, j ) ∈ E.
Below is presented the MILP formulation FMLSA used to generate the set of
instances I1 . The decision variable fij represents a flow in arc (i, j ) ∈ A : vi =
vt ∧ vj = vt , and fit = 1 if vertex vi ∈ V \{v0 } is a leaf in the solution. The
user-defined parameter r represents the number of AFSs (internal vertices) of the
solution.
Max s = fit (1)
vi ∈V \{v0 }
s.t.
s |V | − 1 − r (2)
f0j = |V | − 1 + s (3)
vj ∈V
fj i − fij = 1 vi ∈ V \{v0 } (4)
vj ∈V vj ∈V \{v0 }
fij + 2(|V | − 2)fit 2(|V | − 2) vi ∈ V \{v0 } (5)
vj ∈V \{v0 }
β
1 − fj t fit ∀vi ∈ V \{v0 } : ci0 > (7)
2
vj ∈V :cij β2 ∧cj0 β
Constraint (2) forces the number of leaves (customers) to be less than or equal to
|V | − 1 − r. Constraint (3) ensures that the root outgoing flow is equal to |V | − 1 (to
attend all the demand of V \{v0 }) plus the number of leaves s, since each leaf sends
one unit of flow to the terminal. Constraint (4) says that each vertex distinct from v0
and vt consumes one unit of flow. Constraint (5) implies that if vi is a leaf, then it can
only send flow to the terminal. Constraint (6) forbids flow in arcs with cost greater
then β. Constraint (7) prohibits any leaf (customer) to be served after two or more
consecutive AFS visits. Constraints (8) state that flows are positive and bounded by
2|V | − 2. Constraints (9) define the domain constraints for fit : (i, t) ∈ A . The set
of instance I2 was generated by replacing the constraints (7) by the constraints (10),
that guarantees for every customer that there will be at least one AFS in the range
of half the autonomy of a fully charged vehicle:
β
1 − fj t fit ∀vi ∈ V \{v0 } : ci0 > (10)
2
vj ∈V :cij β2
Suitable choices were made for the values of the parameters, as shown below. It
is worth pointing out that the instance generation framework allows adjusting these
parameters to conform with the underlying application. The vehicle average speed
was defined as being the value necessary to traverse in one unit of time the instance
longest edge:
The AFS service time was defined as equal to one unit of time:
maxvi ,vj ∈V cij
sf = =1 ∀vf ∈ F (12)
ξ
That is, an AFSs service time is equals to the traversing time of the longest graph
edge, since we want the refueling time to be relatively high. The customer’s service
time was defined as:
randomvi ,vj ∈V cij
si = ∀vi ∈ F (13)
ξ
That is, a customer service time is equals to a random graph edge traversing time,
since we want to include diversity in the customers service time. It is noteworthy that
the services times of every node and traversing time of every edge are normalized
in the interval (0, 1].
The route time limit T was defined as:
T = 2α (14)
Instance Generation Framework for Green Vehicle Routing 75
The above algorithm does a binary search in [0, a∈A ca ] to find the smallest
integer value for β that produces a MLSA feasible solution. The steps (1–2) declare
and initialize the binary search leftmost and rightmost pointers i and j . In step (4)
we have the binary search base case condition. Step (5) declares and initializes β
as the ceil of the value at the middle of the rightmost and leftmost pointers. In the
steps (11) and (15) the pointer j is updated to β − 1 if r = r, and the leftmost
pointer i is updated to β + 1 if there is no feasible solution or if r > r.
The proposed framework is very customizable to other configurations, allowing
straightforward changes to the graph structure (by changing the input graph), the
AFSs rate r, the β binary search bounds (steps (1–2) of Algorithm 1), the vertices
service times (12–13), and the vehicle time limit T (14).
76 M.D. Andrade and F. L. Usberti
5 Computational Experiments
The set P of VRP instances [8] were adopted as the instances for the MLST. These
instances define their edges weight as cij = x + 12 , i.e., the closest integer to x,
for each edge (i, j ), where x is the Euclidean distance between vertices vi and vj .
The machine used to execute the experiments was an Intel(R) Xeon(R) CPU
E5-2420 @1.90GHz, with 32 GB of RAM, and with 1TB of HD. The operational
system used was the Ubuntu 18.04.4 LTS (bionic) 64 bits. The programming
language used to generate the instances and to run the proposed models was C++.
The source code is available at [4]. The MILP solver used was CPLEX 12.10 with
ILOG Concert Technology using the Academic license.
Table 1 shows the G-VRP generated instances. As we can see the proposed
framework is very fast, resulting in execution times of at most six seconds for every
instance. An interesting observation is that in Augerat’s VRP instances [8] with the
same number of customers, the trade-offs among parameters β, |F | and T become
apparent. In particular, as more AFSs are allocated, the smaller β becomes, forcing
the vehicles to make more stops to refuel. These trade-offs analysis could assist
in the decision making process of AFS allocation of a city, for example, given the
estimates of the average vehicles autonomies.
Table 1 (continued)
I1 I2
[8] ’s instance |C| |F | β T CPU(s) |C| |F | β T CPU(s)
P-n40-k5 35 4 51 7 0,63 35 4 51 7 0,62
31 8 27 11 0,68 32 7 32 7 0,64
27 12 23 11 0,56 27 12 27 6 0,58
P-n45-k5 40 4 42 7 0,73 40 4 42 7 0,8
35 9 25 11 0,78 35 9 30 6 0,73
29 15 21 20 1,15 30 14 27 6 1,04
P-n50-k7 45 4 42 7 0,86 45 4 42 7 0,96
39 10 25 11 0,9 39 10 27 7 0,86
32 17 19 15 0,9 33 16 25 7 0,93
P-n51-k10 45 5 36 7 0,9 45 5 36 7 0,91
37 13 23 11 0,92 40 10 30 6 0,97
31 19 19 19 0,96 33 17 25 6 0,84
P-n55-k7 49 5 32 7 1,05 49 5 32 7 1,13
43 11 23 16 1,13 40 14 25 7 0,99
33 21 17 15 0,96 38 16 25 7 1,09
P-n60-k10 54 5 36 7 1,67 54 5 36 7 2,06
47 12 23 13 1,49 47 12 27 6 1,38
42 17 19 15 1,55 42 17 25 6 1,36
P-n65-k10 58 6 36 7 1,87 58 6 36 7 1,94
50 14 23 16 1,63 50 14 27 6 1,38
40 24 17 15 1,96 45 19 25 6 1,77
P-n70-k10 63 6 36 7 2,28 63 6 36 7 2,24
54 15 23 25 2,01 54 15 27 6 1,8
48 21 19 20 2,06 48 21 25 6 1,87
P-n76-k4 68 7 32 12 2,6 68 7 32 7 2,42
58 17 21 13 2,8 59 16 27 6 1,99
51 24 17 19 2,72 52 23 25 6 2,41
P-n101-k4 88 12 25 11 5,23 90 10 32 7 5,06
78 22 19 15 5,35 80 20 25 6 4,42
65 35 15 19 4,97 68 32 23 6 4,17
6 Conclusions
The presented work addresses the lack of G-VRP instances in the literature by
proposing an effective framework to generate feasible G-VRP instances. The
proposed method is highly customizable, allowing the generated instances to
conform with the underlying application and to easily change the minimum number
of AFSs, the vehicle properties (11), (14), and the vertices service times (12–13).
As future research, we consider generalizing the proposed framework to other
variants of VRP, by including other constraints such as time windows, vehicle
78 M.D. Andrade and F. L. Usberti
References
1. Andelmin, J., Bartolini, E.: An exact algorithm for the green vehicle routing problem.
Transportation Science (2017). https://doi.org/10.1287/trsc.2016.0734
2. Andelmin, J., Bartolini, E.: A multi-start local search heuristic for the Green Vehicle Routing
Problem based on a multigraph reformulation. Comput. Oper. Res. (2019). https://doi.org/10.
1016/j.cor.2019.04.018
3. Andrade, M.D.: Formulations for the green vehicle routing problem. Institute of Computing,
University of Campinas, Campinas, São Paulo, Brazil (2020)
4. Andrade, M.D.: Framework for GVRP instance generation. In: GitHub (2020). https://github.
com/My-phd-degree/G-VRP-instance-generation. Cited 01 Apr 2021
5. Andrade, M.D., Usberti, F.L.: Valid Inequalities for the Green Vehicle Routing Problem. Anais
do V Encontro de Teoria da Computação (2020). https://doi.org/10.5753/etc.2020.11086
6. Arakaki, R.K., Maziero, L.P., Andrade, M.D., Hama, V.M.F., Usberti, F.L.: Routing electric
vehicles with remote servicing. Model. Optim. Green Logist. (2020). https://doi.org/10.1007/
978-3-030-45308-4_8
7. Asghari, M., Mirzapour Al-e-hashem, S. M. J.: Green vehicle routing problem: A state-of-the-
art review. Int. J. Prod. Econ. (2021). https://doi.org/10.1016/j.ijpe.2020.107899
8. Augerat, P.: Polyhedral approach of the vehicle routing problem. Institut National Polytech-
nique de Grenoble - INPG (1995). https://tel.archives-ouvertes.fr/tel-00005026. Cited 01 Apr
2021
9. Bo, P., Yuan, Z., Yuvraj, G., Xiding, C.: A memetic algorithm for the green vehicle routing
problem. Sustainability (2019). https://doi.org/10.3390/su11216055
10. Bruglieri, M., Mancini, S., Pezzella, F., Pisacane, O.: A path-based solution approach for the
green vehicle routing problem. Comput. Oper. Res. (2019). https://doi.org/10.1016/j.cor.2018.
10.019
11. Conrad, R.G., Figliozzi, M.A.: The recharging vehicle routing problem. In: Proceedings of the
2011 Industrial Engineering Research Conference (2011). https://doi.org/10.1016/j.cor.2016.
03.013
12. Ćirović, G., Pamuz̧ar, D., Božanić, D.: Green logistic vehicle routing problem: Routing light
delivery vehicles in urban areas using a neuro-fuzzy model. Expert Syst. Appl. (2014). https://
doi.org/10.1016/j.eswa.2014.01.005
13. Das, K., Das, R.: Green vehicle routing problem: A critical survey. Intell. Tech. Appl. Sci.
Technol., 736–745 (2020)
14. Dod, J.: Sources of greenhouse gas emissions. In: The Dictionary of Substances and
Their Effects. United States Environmental Protection Agency (2020). https://www.epa.gov/
ghgemissions/sources-greenhouse-gas-emissions. Cited 01 Apr 2021
15. Erdoǧan, S., Miller-Hooks, E.: A green vehicle routing problem. Transport. Res. E Logist.
Transport. Rev. (2012). https://doi.org/10.1016/j.tre.2011.08.001
16. Felipe, A., Ortuño, M.T., Righini, G., Tirado, G.: A heuristic approach for the green vehicle
routing problem with multiple technologies and partial recharges. Transport. Res. E Logist.
Transport. Rev. (2014). https://doi.org/10.1016/j.tre.2014.09.003
17. Jun, Y., Hao, S.: Battery swap station location-routing problem with capacitated electric
vehicles. Comput. Oper. Res. (2015). https://doi.org/10.1016/j.cor.2014.07.003
18. Koç, Ç., Karaoglan, I.: The green vehicle routing problem: A heuristic based exact solution
approach. Appl. Soft Comput. (2016). https://doi.org/10.1016/j.asoc.2015.10.064
Instance Generation Framework for Green Vehicle Routing 79
19. Kuby, M., Lim, S.: Location of alternative-fuel stations using the flow-refueling location model
and dispersion of candidate sites on arcs. Netw. Spat. Econ. (2007). https://doi.org/10.1007/
s11067-006-9003-6
20. Leggieri, V., Haouari, M.: A practical solution approach for the green vehicle routing problem.
Transport. Res. E Logist. Transport. Rev. (2017). https://doi.org/10.1016/j.tre.2017.06.003
21. Lin, C., Choy, K.L., Ho, G.T.S., Chung, S.H., Lam, H.Y.: Survey of green vehicle routing
problem: Past and future trends. Expert Syst. Appl. (2014). https://doi.org/10.1016/j.eswa.
2013.07.107
22. Reis, M.F., Lee, O., Usberti, F.L.: Flow-based formulation for the maximum leaf spanning tree
problem. Electron. Notes Discrete Math. (2015). https://doi.org/10.1016/j.endm.2015.07.035
23. Ritchie, H., Roser, M.: CO2 and other greenhouse gas emissions. In: The Dictionary of
Substances and Their Effects. United States Environmental Protection Agency (2016). https://
ourworldindata.org/co2-and-other-greenhouse-gas-emissions Cited 01 Apr 2021
24. Toth, P., Vigo, D.: Vehicle routing: problems, methods, and applications (2014)
25. Wang, Y.-W., Lin, C.-C., Lee, T.-J.: Electric vehicle tour planning. Transport. Res. D Transport
Environ. (2018). https://doi.org/10.1016/j.trd.2018.04.016
26. Yeh, S.: An empirical analysis on the adoption of alternative fuel vehicles: The case of natural
gas vehicles. Energy Policy (2007). https://doi.org/10.1016/j.enpol.2007.06.012
An Optimization Model for Service
Requests Management in a 5G Network
Architecture
1 Introduction
In the last years the impact of 5G technologies is revolutionizing all social and
economic sectors. Therefore, several studies have focused on mobile networks and
the basic idea is to create virtual logical networks, called “Network Slices”, which
share the same physical access and transport infrastructure, to support different
application cases with particular characteristics and requirements. The same net-
work can have multiple slices, each dedicated to specific services or customers.
This infrastructure guarantees greater flexibility, efficient use of resources and
greater business opportunities. In this paper we consider some users and devices
on the ground which require different application or network services (see [9] for
an example based on Video Monitoring). Such service requests are managed and
executed by a fleet of Unmanned Aerial Vehicles (UAVs) organized as a Flying Ad
hoc Network (FANET) whose purpose is to provide 5G network slices (see [10]),
reaching also remote rural areas (see [3] and [1] for a UAV-Based Cellular Networks
managing problem in rural areas and in which authors propose a spatial and a
temporal decomposition). Particularly, we suppose that the UAVs are distributed
in two different layers: the controller layer and the execution layer. The controller
UAVs acquire service requests from users and devices on the ground and send them
to the UAVs of the fleet on the upper level, where the services are performed.
In this paper we suppose also the possibility of the provider to add additional
drones to perform the services requested on demand and we also take into account
the quality of the network in providing services.
So, the purpose of this paper is to propose a constrained optimization model,
aimed at maximizing the provider’s profit, given by the total revenue obtained from
the sale of services to users and devices on the ground to which all transmission
and execution costs are subtracted, as well as the costs for additional UAVs are
subtracted while the quality in terms of profit is summed (see [4] for an optimization
model of IaaS provider). Of course, the model proposed in this paper takes into
account the managing and execution capabilities of each UAV, the conservation laws
related to the supply chain network and, a budget and a Quality of Service (QoS)
constraints (see [8]).
Therefore, the proposed optimization model allows us to determine the equilib-
rium flows of the quantity of services requested by each user or device to each
controller UAV, the quantity of service requests that each controller UAV sent to
each UAV of the fleet, the quantity of executed services by each UAV, if and which
additional UAVs to activate.
The rest of this paper is organized as follows. In Sect. 2 we present the
mathematical model and derive the optimality conditions of the provider, who
desires to maximize its profit. In Sect. 3 we provide a variational formulation of
the problem and qualitative properties in terms of existence and uniqueness of
the solution. To validate the effectiveness of the model, in Sect. 4 we perform an
illustrative numerical example. Section 5 is dedicated to the conclusions.
2 The Model
The supply chain network, consisting of a fleet of UAVs, controller UAVs and
users or devices on the ground, is depicted in Fig. 1. The typical user or device
on the ground is denoted by g, g = 1, . . . , G, and could require K types of
services (network services or application services). The requests for service k,
k = 1, . . . , K, from users and devices are received by the controller UAVs which
are spatially distributed in the considered geographical area. Each controller UAV
u, u = 1, . . . , U, sends the requests for execution of the services to the fleet of
UAVs at the higher level.
An Optimization Model for Service Requests Management in a 5G Network. . . 83
The fleet of UAVs consists of F̂1 pre-existing UAVs (the typical one is denoted
by fˆ), to which the provider can join F̃2 additional UAVs. Therefore, we consider
the following sets:
• F̂1 = {1̂, . . . , fˆ, . . . , F̂1 }, the set of pre-existing UAVs;
• F̃2 = {1̃, . . . , f˜, . . . , F̃2 }, the set of possible additional UAVs.
Each UAV of the upper level receives the service requests from the controller
UAVs and performs the executions.
In this paper we analyze the supply chain network using a system-optimization
approach in order to find the global optimization problem. Therefore, the purpose
of this paper is to determine a model that aims to maximize the total profit (defined
by the difference between the revenue and the sum of costs) and the quality.
The variables and the parameters of the model are described in Tables 1 and 2,
respectively.
Now, we present the cost and quality functions. Let:
• cgu be the transmission cost of the service requests from user or device g to
K
controller UAV u and let us assume cgu is a function of xguk :
k=1
K
cgu = cgu xguk = cgu (Xgu ), ∀g = 1, . . . , G, ∀u = 1, . . . , U.
k=1
note that the parameter αk enables distinct services to have different profits
associated to their quality, based on their importance and needs
Qk The minimum quality of the service (QoS) k, ∀k = 1, . . . , K, previously
established in a service-level agreement (SLA), that the provider has to
guarantee
ρk The revenue obtained for a unit of service k executed, ∀k = 1, . . . , K
• cufˆ and cuf˜ be the transmission cost of the service requests from controller UAV
u to any pre-existing UAV f ∈ F̂1 and any additional UAV f ∈ F̃2 , respectively,
K
K
and let us assume cufˆ is a function of yufˆk and cuf˜ is a function of zuf˜k
k=1 k=1
:
K
K
cufˆ = cufˆ yufˆk , cuf˜ = cuf˜ zuf˜k ∀u, ∀fˆ ∈ F̂1 , ∀f˜ ∈ F̃2
k=1 k=1
86 G. Colajanni and D. Sciacca
that is cufˆ = cufˆ (Yufˆ ), ∀u = 1, . . . , U, ∀fˆ ∈ F̂1 and cuf˜ = cuf˜ (Zuf˜ ), ∀u =
1, . . . , U, ∀f˜ ∈ F̃2 . For the aforementioned functions, the following general
quadratic expression is assumed:
2
K
K
cufˆ (Yufˆ ) = κufˆ yufˆk + κ yufˆk , ∀u, fˆ ∈ F̂1 ,
ufˆ
k=1 k=1
2
K
K
cuf˜ (Zuf˜ ) = μuf˜ zuf˜k + μuf˜ zufˆk , ∀u, f˜ ∈ F̃2 ,
k=1 k=1
(E) (E)
• c and c ˜ be the execution costs of requested services to the pre-existing
fˆ f
UAV fˆ ∈ F̂1 and to the additional UAV f˜ ∈ F̃2 , respectively, and let us assume
(E)
c ˆ is a function of the total amount of executed services by pre-existing UAVs,
f
U
K
yufˆk and c(E)
˜ is a function of the total amount of executed services by
f
u=1 k=1
U
K
additional UAVs, zuf˜k :
u=1 k=1
U
K
c(E) = c(E) yufˆk = c(E) Yfˆ , ∀fˆ ∈ F̂1 ,
fˆ fˆ ˆ
f
u=1 k=1
U
K
∀f˜ ∈ F̃2 .
(E) (E) (E)
c˜ = c˜ zuf˜k =c˜ Zf˜ ,
f f f
u=1 k=1
2
U
K
U
K
(E)
c˜ Zf˜ = zuf˜k + zuf˜k ;
f
u=1 k=1 u=1 k=1
An Optimization Model for Service Requests Management in a 5G Network. . . 87
• cf˜ be the cost due to add a new UAV f˜ ∈ F̃2 at the highest level of the network
and let us assume cf˜ is a function of the flow of requests received:
U
K
cf˜ zuf˜k = cf˜ Zf˜ , ∀f˜ ∈ F̃2 ,
u=1 k=1
we will assume this function in such a way that it is null in the event that
no service request is sent to the UAV f˜ (cf˜ (0) = 0). The generic quadratic
expression for these functions is as follows:
2
U
K
U
K
cf˜ (Zf˜ ) = β zuf˜k +β
zuf˜k , ∀f˜ ∈ F̃2 ,
u=1 k=1 u=1 k=1
⎛ ⎞
U U
qk = qk ⎝ yufˆk + zuf˜k ⎠ = qk Yfˆ , Zf˜ , ∀k = 1, . . . , K.
u=1 fˆ∈F1 u=1 f˜∈F2
U
U
G
We observe that if yufˆk + zuf˜k = Rgk , i.e. the total demand
u=1 fˆ∈F1 u=1 f˜∈F2 g=1
for service k that all users and devices require its equal to the amount of executed
service k that they receive from all UAVs belonging to the fleet, then the quality
G U U
reaches the maximum value ( Rgk ). If, instead, yufˆk + zuf˜k =
g=1 u=1 fˆ∈F1 u=1 f˜∈F2
0, i.e. the amount of executed service k that users and devices receive from all
UAVs belonging to the fleet is null, but G g=1 Rgk > 0, then the quality of services
U U
provider reaches the minimum value 0. Finally, if yufˆk + zuf˜k <
u=1 fˆ∈F1 u=1 f˜∈F2
G U
Rgk , the function quality increases with the executed services yufˆk +
g=1 u=1 fˆ∈F1
U
zuf˜k , as supposed before.
u=1 f˜∈F2
Note that in this paper we also take into account the limitation that distinguishes
UAVs, that is the limited flight duration due to the consumption of batteries and that
we integrated in the maximum capacity of each UAV and in the execution cost of
requested services, indeed we are assuming that each execution has a cost in terms
of battery power because this causes a reduction of the flight duration. No cost of
handling requests, at the level of controller UAVs, is considered in this paper, since
we consider them negligible and we assume the cost to keep the UAVs u in flight
constant and therefore we do not include it in our model, but extension to a more
general case is easy.
As previously mentioned, we provide a system-optimization perspective for
the entire supply chain network, then, we analyze the system from the point of
view of the network and service provider. Therefore, the presented model aims
at determining the optimal distributions of services requests flows. The objective
function consists of the profit to maximize and is given by the total revenue
obtained from the sale of services to users and devices on the ground, to which all
transmission and execution costs are subtracted, as well as the costs for additional
UAVs, while the quality in terms of profit is summed.
An Optimization Model for Service Requests Management in a 5G Network. . . 89
U
K
U
K
U
K
− cuf˜ zuf˜k − c(E)
ˆ
yufˆk − c(E)
˜ zuf˜k
f f
f ∈F̃2 fˆ∈F̂1 f˜∈F̃2
u=1 ˜ k=1 u=1 k=1 u=1 k=1
⎛ ⎞
U
K
K U U
− cf˜ zuf˜k + αk qk ⎝ yufˆk + zuf˜k ⎠ (1)
u=1 fˆ∈F1 u=1 f˜∈F2
f˜∈F̃2
u=1 k=1 k=1
subject to
U
xguk = Rgk ∀g = 1, . . . , G, ∀k = 1, . . . , K, (2)
u=1
K
G
xguk ≤ S u ∀u = 1, . . . , U, (3)
k=1 g=1
G
yufˆk + zuf˜k ≤ xguk ∀u = 1, . . . , U, ∀k = 1, . . . , K, (4)
fˆ∈F̂1 f˜∈F̃2
g=1
U
K
sk yufˆk ≤ Sfˆ ∀fˆ ∈ F̂1 , (5)
u=1 k=1
U
K
sk zuf˜k ≤ Sf˜ ∀f˜ ∈ F̃2 , (6)
u=1 k=1
U
K
cf˜ zuf˜k ≤ B, (7)
f˜∈F̃2
u=1 k=1
⎛ ⎞
U
U
qk ⎝ yufˆk + zuf˜k ⎠ ≥ Qk ∀k = 1, . . . , K, (8)
u=1 fˆ∈F1 u=1 f˜∈F2
The first constraint, (2), represents the conservation law, according to which the
quantity of service k requested by user or device g on the ground to all controller
UAVs equals the demand Rgk .
Constraint (4) establishes that the quantity of service requests that the controller
UAV u can receive is less than or equal to the maximum capacity. Observe that
constraint (2) must be verified, therefore, the total capacity of controller UAVs are
such as to satisfy the demand for services from all users and devices.
Constraint (4) states that the quantity of service k requests sent by the controller
UAV u to all the pre-existing and additional UAVs is less than or equal to the
quantity of service k requested by all users or devices on the ground to the controller
UAV u.
The requests of services that each pre-existing and additional UAV fˆ and f˜,
∀fˆ ∈ F̂1 and ∀f˜ ∈ F̃2 , can receive must satisfy the capacity constraints (5) and (6)
which establishes that the execution space must not exceed the maximum allowed.
Constraint (7) means that there is a budget limit, B, which represents the
maximum available budget for adding new UAVs at the highest level of the network.
Constraint (8) affirms that the QoS defined in the SLA is guaranteed.
The latest constraint family defines the domain of the variables of the problem.
3 Variational Formulation
that the vector (X, Y, Z, λ1∗ , λ2∗ ) ∈ K × R+ × RK+ is a solution to the variational
inequality:
Find (X, Y, Z, λ1∗ , λ2∗ ) ∈ K × R+ × RK + such that:
G K
U ∗ )
∂cgu (Xgu ∗
× (xguk − xguk )
∂xguk
g=1 u=1 k=1
⎡
U K ∂c (Y ) ∂c (E)
Y ∗ˆ ∂qk (Y ∗ , Z ∗ )
⎢ ufˆ ufˆ fˆ f
+ ⎣ + − ρk − αk
∂yufˆk ∂yufˆk ∂yufˆk
f ∈F̂1
u=1 ˆ k=1
∗ ∗
2∗ ∂qk (Y , Z )
−λk × (yufˆk − y ∗ ˆ )
∂yufˆk uf k
⎡
∂cuf˜ (Z ∗ ˜ ) ∂c ˜ Z ∗˜ ∂cf˜ (Z ∗˜ )
(E)
U K
∂qk (Y ∗ , Z ∗ )
+ ⎣ uf
+
f f
+
f
− αk − ρk
∂zuf˜k ∂zuf˜k ∂zuf˜k ∂zuf˜k
f ∈F̃2
u=1 ˜ k=1
∂cf˜ (Z ∗˜ ) ∂qk (Y ∗ , Z ∗ )
× (zuf˜k − zu∗f˜k )
f
+λ 1∗
− λ2∗
k
∂zuf˜k ∂zuf˜k
⎡ ⎤
⎢ ⎥
+ ⎣B − cf˜ Zf∗˜ ⎦ × (λ1 − λ1∗ )
f˜∈F̃2
K
+ qk Y ∗ , Z ∗ − Qk × (λ2k − λ2∗
k ) ≥ 0,
k=1
∀(X, Y, Z, λ1 , λ2 ) ∈ K × R+ × RK
+. (10)
where
!
K := (X, Y, Z) ∈ RGU
+
K+U F̂1 K+U F̃2 K
: (2) − (6) hold true . (11)
We now put variational inequality (10) into standard form, that is: determine
X∗ ∈ K such that:
F (X∗ ), X − X∗ ≥ 0, ∀X ∈ K (12)
from K to RGU +
K+U F̂1 K+U F̃2 K+1+K
and K is a closed and convex set. We
put N = GU K + U F̂1 K + U F̃2 K + 1 + K and we define the N-dimensional
column vector X = (X1 , X2 , X3 , λ1 , λ2 ) and the N-dimensional column
vector F (X) = (F 1 (X), F 2 (X), F 3 (X), F 4 (X), F 5 (X)), where the (g, u, k)-th
1 , of F 1 (X) is given by
component, Fguk
∂cgu (Xgu )
1
Fguk = ,
∂xguk
Fk5 = qk (Y, Z) − Qk ,
then variational inequality (12) or, equivalently, variational inequality (10), admits
a unique solution.
ρ1 = 17, α1 = 5, Q1 = 60, ; R11 = 10, R21 = R31 = 15, R41 = 12, R51 = 10;
The parameters of the transmission cost of the service requests from users or
devices to controller UAVs, from controller UAVs to any pre-existing UAV and any
additional UAV functions are reported in Table 3 and we also assume:
η = κ = μ = 1; δ = = 0.3; δ = = 1.
Reminding that the cost due to add a new UAV at the highest level of the network
is given by:
2
2
2
cf˜ (Xf3˜ ) = β xuf˜1 + β xuf˜1 , ∀f˜ ∈ F̃2 ,
u=1 u=1
— —
8 z111, B = 60 z211, B = 60
— —
z111, B = 45 z211, B = 45
— —
z111, B = 30 z211, B = 30
— —
z121, B = 60 z221, B = 60
6 — —
z121, B = 45 z221, B = 45
— —
z121, B = 30 z221, B = 30
20
10
00 5 10 15 20 25 30 35
b1
b
objective function concerning the cost due to add new UAVs at the highest level of
the network (that must be less than or equal to B, the maximum available budget for
adding new UAVs, as established by constraint (7)), and the computational time (in
seconds) required to solve the scenario.
The optimal solutions, shown in Table 4 and in Fig. 2, clearly express a
decreasing trend as the parameters of the cost functions increase. Particularly, at
β = β = 0, we obtain maximum values of zuf˜k , while at β = 35 and β = 20, we
obtain that no additional UAVs are used because to add new UAVs is too expensive.
Note that the trend of the curves is the same as the maximum budget varies and the
budget constraint is always respected.
5 Conclusion
In this paper, we presented a supply chain network optimization model for the
providing 5G network slices on demand to users and devices on the ground. We
considered a three-tier supply chain consisting of a fleet of UAVs organized as a
FANET, managed by the UAVs controllers, with the possibility to add additional
UAVs to pre-existing ones. We proposed a system optimization perspective for the
An Optimization Model for Service Requests Management in a 5G Network. . . 97
entire supply chain network in which services provider solves a maximization profit
problem. We obtained a constrained optimization problem for which we derive the
associated variational inequality formulation. Also, qualitative properties in terms
of existence and uniqueness of the solution were provided. Finally, an illustrative
numerical example was performed to validate the effectiveness of the model.
The model previously described can certainly be extended. In our future work,
we are considering a closed-loop network in which users or devices on the ground
receive the performed services, introducing the reliability level of the entire network
and the related damage in case of services not performed. Furthermore, we are
working on a more comprehensive model, in which we introduce a set of Time
Slots, a bigger area to be covered and, therefore, a new heuristic to solve numerical
examples on large instances.
Acknowledgments The research was partially supported by the research project “Programma
ricerca di ateneo UNICT 2020-22 linea 2-OMNIA” of Catania. This support is gratefully
acknowledged.
References
1. Amorosi, L., Chiaraviglio, L., Galan-Jimenez, J.: Optimal energy management of UAV-based
cellular networks powered by solar panels and batteries: Formulation and solutions. IEEE
Access 7, 53698–53717 (2019)
2. Caruso, V., Daniele, P.: A network model for minimizing the total organ transplant costs. Eur.
J. Oper. Res. 266(2), 652–662 (2018)
3. Chiaraviglio, L., Amorosi, L., Blefari-Melazzi, N., Dell’Olmo, P., Lo Mastro, A., Natalino, C.,
Monti, P.: Minimum cost design of cellular networks in rural areas with UAVs, optical rings,
solar panels, and batteries. IEEE Trans. Green Commun. Netw. 3(4), 901–918 (2019)
4. Colajanni, G., Daniele, P.: A mathematical network model and a solution algorithm for IaaS
cloud computing. Netw. Spat. Econ., 1–21 (2019)
5. Colajanni, G., Daniele, P., Sciacca, D.: A projected dynamic system associated with
a cybersecurity investment model with budget constraints and fixed demands. J. Non-
linear Var. Anal. 4(1), 45–61 (2019/2020). Available online at http://jnva.biemdas.com.
10.23952/jnva.4.2020.1.05
6. Daniele, P., Sciacca D.: An optimization model for the management of green areas. Intl. Trans.
Oper. Res. 0, 1–23 (2021)
7. Dupuis, P., Nagurney, A.: Dynamical systems and variational inequalities. Ann. Oper. Res. 44,
9–42 (1993)
8. Galluccio, L., Grasso, C., Grasso, M., Raftopoulos, R., Schembra, G.: Measuring QoS and QoE
for a Softwarized Video Surveillance System in a 5G Network. In: 2019 IEEE International
Symposium on Measurements & Networking (M&N), pp. 1–6. IEEE (2019)
9. Grasso, C., Schembra, G.: A fleet of MEC UAVs to extend a 5G network slice for video
monitoring with low-latency constraints. J. Sens. Actuator Netw. 8(1), 3 (2019)
10. Khan, M.F., Yau, K.L.A.: Route selection in 5G-based flying ad-hoc networks using reinforce-
ment learning. In: 2020 10th IEEE International Conference on Control System, Computing
and Engineering (ICCSCE), pp. 23–28. IEEE (2020)
98 G. Colajanni and D. Sciacca
11. Nagurney, A.: Network Economics: A Variational Inequality Approach. Kluwer Academic
Publishers, Boston, MA (1993)
12. Nagurney, A.: Supply Chain Network Economics: Dynamics of Prices, Flows, and Profits.
Edward Elgar Publishing, Cheltenham, England (2006)
13. Nagurney, A., Daniele, P., Shukla, S.: A supply chain network game theory model of
cybersecurity investments with nonlinear budget constraints. Ann. Oper. Res. 248(1), 405–427
(2017)
A MIP Model for Freight Consolidation
in Road Transportation Considering
Outsourced Fleet
Abstract We address the freight consolidation problem under the context of road
transportation with outsourced fleet, motivated by the real-life situation faced by a
major manufacturer of school supplies located in Brazil. Given a set of shipments
scheduled for the next few days, and a set of available vehicles at the carriers,
the company has to determine how to best assign shipments to vehicles in a way
to minimize the total transportation cost. This is a challenging case of vehicle
consolidation, in which each carrier has a complex pricing table that follows
particular rules, rates and taxes. Prices are defined according to the vehicle type
(heterogeneous fleet), number of deliveries (visits to redispatching points) and the
individual price and weight of items in the shipments consolidated in the truck.
These components cause a piecewise linear behavior of the cost function, which
makes the consolidation even more difficult. To aid this decision-making process,
we propose a mixed-integer linear programming (MIP) model that fully represents
the problem. We are not aware of any other model or solution strategy that includes
all the features observed in the addressed situation. The results of computational
experiments using real-life instances provided by the manufacturer show the benefits
of using the proposed model in practice, as we observed reductions of more than
44% in comparison to the freight consolidation policy of the company.
1 Introduction
extension of the Variable Sized Bin-Packing Problem (VSBPP) [8], which is an NP-
hard combinatorial optimization problem that consists of determining the optimal
arrangement of smaller units (items) within larger units (bins) [7]. The proposed
model and the analyses presented in this paper can benefit companies with a similar
situation, as well as be extended to other situations related to freight consolidation
using outsourced fleet and a nonlinear cost structure.
The remainder of this paper is structured as follows. In Sect. 2 we describe the
problem and in Sect. 3 we introduce a new MIP formulation. In Sect. 4, we show
the results of computational experiments using real-life data and, lastly, in Sect. 5
we present our conclusions and the next steps.
2 Problem Description
in an order (defined by WL and WU), and for each subrange there is an associated
price (Cost A , Cost B , . . . ). Let us assume that the values in bold in column Cost A
are rates based on the weight of an order, whereas the remaining values in this
column and in column Cost B are fixed costs (i.e., they do not depend on weights).
This definition of ranges and subranges cause the piecewise linear behavior of the
transportation cost. For example, if we assign a vehicle of type Box Truck 14-ton to
execute a route with 5 deliveries, it falls in the price range 7 (1 to 6 visits). Then, the
cost applied to each order assigned to this vehicle is 0.13wi + 57.22 + . . . , where
wi is the weight of order i. Observe that in this price range, wi is unbounded (as
W U = ∞). However, if we assign a vehicle type Semitrailer 24-ton to a route in
which the number of deliveries falls between 7 and 20 (price range 10), then the cost
of an order is computed based on its total weight: if it has 50 Kg or less, then we
apply the cost 26.95 + 57.22 + . . . ; whereas if it has more than 50 Kg, but not more
than 100 Kg, we apply 32.60 + 55.00 + . . . ; and finally, if it has more than 100 Kg,
we apply 0.24wi + 57.22 + . . . .
To effectively include these costs in the MIP model, we propose in the next
section a way to linearize the transportation cost function. This is done by
incorporating one additional index into variables and parameters, to explicitly state
the price subrange that is chosen for a vehicle. Finally, to avoid the risk of a possible
reformulation of the contract, disinterest in the provision of service by any carrier,
or even for the total break of the partnership, the company has to ensure a minimum
occupancy volume factor for each vehicle, i.e., OC = loading/capacity.
3 Mathematical Formulation
Consider a set of n orders, denoted as N = {1, . . . , n}, and the set of time periods
T representing the time horizon considered in the problem. The orders have to be
dispatched from the company’s DC to the DCs of m redispatch carriers denoted by
the set M = {1, . . . , m}. Let V be the set of available vehicles at the collection
carriers. We define Ij ⊂ N as the subset of orders whose destination is the DC of
A MIP Model for Freight Consolidation in Road Transportation Considering. . . 103
the redispatch carrier j ∈ M. Additionally, let Fv be the set of price ranges that
applies for vehicle v ∈ V, according to the pricing table of the collection carrier
that owns this vehicle. To guarantee a satisfactory occupation level in the vehicles,
we allow orders to be rejected in a solution of the model, as an artifice to postpone
such orders to a subsequent planning (e.g., a next run of the model, using a forward
time horizon). To prevent the rejection of orders with short due dates, we define the
subset NR ⊂ N of orders that cannot be rejected in a solution of the model. We
further define the following input parameters:
– wi : weight of order i (in kilograms);
– T C if : total unit transportation cost for order i and price range f ;
– P Ccol: processing capacity of company’s DC in Kg/day;
– P Cred j : processing capacity of the redispatch carrier j in Kg/day;
– W LC v : weight capacity of vehicle v in (in kilograms);
– OC: minimum occupancy volume factor of the vehicles, given in percentage;
– DLf : minimum number of deliveries allowed when choosing price range f ;
– DU f : maximum number of deliveries allowed when choosing price range f ;
– Due i : maximum period for shipping the order i.
Since consolidation represents the total loading assigned to a vehicle, according
to a certain price range, the following decision variables are defined:
"
1, if order i is assigned to price range f of vehicle v in period t;
– xif vt =
0, otherwise.
"
1, if price range f of vehicle v in period t is activated;
– uf vt =
0, otherwise.
⎧
⎪
⎪
⎨1, if the redispatch carrier j is visited by vehicle v with price
– zjf vt = range f in period t;
⎪
⎪
⎩0, otherwise.
– si : continuous variable that assumes the value of 1 if order i is not allocated to
any vehicle (allowing postponement of orders for subsequent planning), and 0
otherwise.
The optimization criterion of this approach seeks to minimize the total transporta-
tion cost. Moreover, we define T Cmax i = 2 maxf {T C if } in a way to penalize
each rejected order. This definition is an artificial cost that, in practice, should be
estimated empirically. Using the defined parameters and decision variables, we state
the following MIP model for the addressed freight consolidation problem:
min T C if xif vt + T Cmax i si (3.1)
t ∈T v∈V f ∈Fv i∈N i∈N
s.t. xif vt + si = 1; ∀ i ∈ N ; (3.2)
t ∈T v∈V f ∈Fv
104 T. Vieira and P. Munari
uf vt ≤ 1; ∀ v ∈ V; t ∈ T ; (3.3)
f ∈Fv
wi xif vt ≤ P Ccol; ∀ t ∈ T ; (3.4)
v∈V f ∈Fv i∈N
wi xif vt ≤ P Cred j ; ∀ j ∈ M; t ∈ T ; (3.5)
v∈V f ∈Fv i∈Ij
(OC.W LC v )uf vt ≤ wi xif vt ≤ W LC v uf vt ;
i∈N
∀ f ∈ Fv ; v ∈ V; t ∈ T ; (3.6)
xif vt ≤ zjf vt ; ∀ i ∈ Ij ; j ∈ M; f ∈ Fv ; v ∈ V; t ∈ T ; (3.7)
zjf vt ≤ xif vt ; ∀ j ∈ M; f ∈ Fv ; v ∈ V; t ∈ T ; (3.8)
i∈Ij
DLf uf vt ≤ zjf vt ≤ DU f ; ∀ f ∈ Fv ; v ∈ V; t ∈ T ; (3.9)
j ∈M
wi xif v,t −1 ≥ wi xif vt ; ∀ t ∈ T | t > 1; (3.10)
v∈V f ∈Fv i∈N v∈V f ∈Fv i∈N
The objective function (3.1) represents the trade-off between minimizing the
total transportation cost and maximizing of the occupancy volume of a vehicle
by penalizing orders rejections. If the problem was originally feasible in relation
to a complete assignment of orders to vehicles, in an optimal solution we have
n
i=1 T Cmax i si = 0. As mentioned before, a feasible solution with rejected orders
means that these orders were not allocated to a vehicle in this particular solution,
and hence they should be included in a future planning, in another execution of
the model. Constraints (3.2) ensure that an order i is allocated to at most one price
range f of vehicle v in time period t. The use of si enables the rejection of an
order if the satisfactory occupation of the vehicles cannot be achieved, meaning the
this order will be considered in a subsequent run of the model. Constraints (3.3)
guarantee that only a single price range f can be associated with each vehicle v in
period t, activating variable uf vt if i∈N xif vt > 0. Constraints (3.4) and (3.5)
A MIP Model for Freight Consolidation in Road Transportation Considering. . . 105
enforce the processing capacities of the company’s DC (90 ton/day) and of the
DCs of redispatch carriers (36 ton/day per carrier), and constraints (3.6) enforce the
minimum occupation and maximum capacity of each vehicle v. Constraints (3.7)–
(3.9) concern the number of visits of a vehicle, given by the number of different
redispatch carriers in a consolidation, where constraints (3.7) and (3.8) ensure that
i∈Ij xif vt > 0 if, and only if, zjf vt = 1, whereas constraints (3.9) relate the
number of visits with the price ranges. Constraints (3.10) prevent solution symmetry
in the model, as there is no difference in the assignment of orders in relation to
periods of time. Constraints (3.11) and (3.12) guarantee that no order is allocated
after the delivery due date and that orders that cannot be rejected must be fulfilled
in the planning in question, respectively. Finally, constraints (3.13)–(3.16) impose
the domain of decision variables. Note that we do not need to define variable si
as binary, as constraints (3.2) and (3.13) preserve its domain in a feasible solution.
The usage of the index f to differentiate the price ranges and of variable uf vt in
the bounds of constraints (3.6) and (3.9), allowed us to completely linearize the
transportation cost function that was originally piecewise linear [2, 19].
4 Computational Experiments
The proposed MIP model was coded in C++ language, using the API Concert
Technology of the IBM CPLEX Optimization Studio v.12.9. We ran computational
experiments using data provided by the company, based on their operation history
of a month with high demand of goods (September). We created three independent
classes of instances, named hereafter as Classes 1, 3 and 5. Instances in Class 1 are
defined by orders dispatched on a single day, resulting in 30 different instances in
which T = {1}; instances in Class 3 comprises orders of three consecutive days
of operation and thus we obtained 10 instances with T = {1, 2, 3}; and Class
5 has six instances with T = {1, . . . , 5}. We considered a total of 25 available
vehicles (|V|) from three different collection carriers, and an occupancy volume
factor OC = 90%. All experiments were performed on a PC with an Intel(R) Core
i7 4790K 3.6 GHz CPU and 16 GB of RAM. We imposed a time limit of 1 hour and
kept the default tolerance of CPLEX for the relative optimality gap (0.01%).
Table 2 presents the results of solving the proposed model using the general-
purpose MIP solver of CPLEX. The first two columns show the instance name and
its total number of orders (|N |). The third column presents the actual company’s
transportation cost to dispatch the accepted orders in the instance (CostnA ). The
remaining nine columns refer to the solution obtained by the model and show
the number of accepted orders in the solution (nA), number of rejected orders
(nR), the lower (OFlb ) and upper (OFub ) bounds, the relative gap computed as
100%.(OFub -OFlb )/(OFub +10−10 ), objective function value for accepted orders of
the instance (OFnA ), the percentage of cost reduction in the objective function with
respected to the company’s cost (RD), computed as 100%.(OFnA-CostnA )/CostnA ,
computational time in seconds (CPUt) and the average vehicle’s occupancy volume
Table 2 Computational results of the proposed model
106
09_16-20 679 113,668.80 500 179 75,831.27 1.42E+08 99.947 62,474.83 −45.04 3,605.45 94.09
09_21-25 786 132,915.59 439 347 79,712.96 208,061.22 61.688 57,446.64 −56.78 3,604.91 98.45
09_26-30 617 117,909.96 448 169 73,946.11 1.29E+08 99.943 62,078.60 −47.35 3,604.95 95.54
Avg 711.5 120,609.72 464 247.5 77,303.19 6.16E+07 79.871 62,301.96 −48.12 3,603.65 95.94
107
108 T. Vieira and P. Munari
(AOC). In addition to the results for each instance, Table 2 shows at the end of each
class the average values for the instances in the class. It is worth mentioning that the
rejected orders are those not allocated to a vehicle in the solution obtained for the
instance. This means that the solver could not find a solution in which all orders are
assigned to vehicles and, therefore, these orders are not fulfilled in this solution. In
our experiments, this situation appears in solutions with large optimality gaps only,
as the solver was not able to find a relatively good solution when the time limit was
reached. For solutions with small gaps, we do not see any rejection, thus all orders
are fulfilled in the time horizon of the instance.
For instances in Class 1, on average, we observe a reduction in the transportation
costs of 44.05%, with an execution time of 463.02 seconds and an occupation of
95.82%. Also, the solution obtained using the model resulted in a reduction greater
than 60% for two instances, namely 09_09 and 09_21. There were no rejected orders
in the instances of this class. Only in two instances CPLEX achieved the time limit
of one hour.
In Class 3, only two instances had a gap below 3%. Although the average gap
was 6.22%, there were no rejected orders and the economy was 47.04% with an
occupancy factor of 96.03%. Note that CPLEX reached the time limit in all instances
in this class. Finally, in Class 5, the difficulty significantly increased, as the average
gap was greater than 50% when CPLEX reached the time limit, and the average
number of rejected orders was 247.5 (34.78% of the total), given that these solutions
have a large optimality gap. Despite that, the corresponding savings were high
(48.12%, on average), and the average occupancy was around 95.94%.
In summary, we notice that the computational difficulty of solving the model with
a larger number of time periods increased significantly. Nevertheless, the solutions
resulted in consolidations that were considerably less costly than the consolidation
carried out by the company.
5 Concluding Remarks
Acknowledgments The authors are thankful to the company involved in this study and for
the financial support provided by the Coordenação de Aperfeiçoamento de Pessoal de Nível
Superior—Brasil (CAPES) [Finance code 001], the National Council for Scientific and Technolog-
ical Development (CNPq) [grant number 313220/2020-4], and the São Paulo Research Foundation
(FAPESP) [grant numbers 20/11602-5, 19/23596-2 and 16/01860-1].
References
1. Ahuja, R., Magnanti, T.L., Orlin, J.B.: Network Flows: Theory, Algorithms and Applications.
Rentice-Hall, New Jersey (1993)
2. Croxton, K.L., Gendron, B., Magnanti, T.L.: A comparison of mixed-integer programming
models for nonconvex piecewise linear cost minimization problems. Management Science
49(9), 1268–1273 (2003a)
3. Croxton, K.L., Gendron, B., Magnanti, T.L.: Models and methods for merge-in-transit
operations. Transportation Science 37(1), 1–22 (2003b)
4. Cruz, C.A., Munari, P., Morabito, R.: A branch-and-price method for the vehicle allocation
problem. Comput. Ind. Eng. 149, 106745 (2020)
5. Cunha, C.B., Silva, M.R.: A genetic algorithm for the problem of configuring a hub-and-spoke
network for a ltl trucking company in brazil. Eur. J. Oper. Res. 179(3), 747–758 (2007)
6. Dror, M., Hartman, B.C.: Shipment consolidation: Who pays for it and how much? Manage-
ment Science 53(1), 78–87 (2007)
7. Dyckhoff, H., Finke, U.: Cutting and Packing in Production and Distribution: A Typology and
Bibliography. Springer Science & Business Media (2012)
8. Friesen, D.K., Langston, M.A.: Variable sized bin packing. SIAM J. Comput. 15(1), 222–230
(1986)
9. Ghiani, G., Laporte, G., Musmanno, R.: Introduction to Logistics Systems Planning and
Control. Wiley (2004)
10. Hall, R.W.: Consolidation strategy: inventory, vehicles and terminals. J. Bus. Logist. 8(2), 57
(1987)
11. Higginson, J., Bookbinder, J.H.: Policy recommendations for a shipment-consolidation pro-
gram. J. Bus. Logist. 15(1), (1994)
12. Martín, J.C., Román, C.: Analyzing competition for hub location in intercontinental aviation
markets. Transport. Res. E Logist. Transport. Rev. 40(2), 135–150 (2004)
13. Nguyen, C., Dessouky, M., Toriello, A.: Consolidation strategies for the delivery of perishable
products. Transport. Res. E Logist. Transport. Rev. 69, 108–121 (2014)
14. Popken, D.A.: An algorithm for the multiattribute, multicommodity flow problem with freight
consolidation and inventory costs. Operations Research 42(2), 274–286 (1994)
15. Qin, H., Zhang, Z., Qi, Z., Lim, A.: The freight consolidation and containerization problem.
Eur. J. Oper. Res. 234(1), 37–48 (2014)
16. Song, H., Hsu, V.N., Cheung, R.K.: Distribution coordination between suppliers and customers
with a consolidation center. Operations Research 56(5), 1264–1277 (2008)
17. Tyan, J.C., Wang, F.K., Du, T.C.: An evaluation of freight consolidation policies in global third
party logistics. Omega 31(1), 55–62 (2003)
18. Ülkü, M.A.: Dare to care: Shipment consolidation reduces not only costs, but also environmen-
tal damage. Int. J. Prod. Econ. 139(2), 438–446 (2012)
19. Vielma, J.P., Ahmed, S., Nemhauser, G.: Mixed-integer models for nonseparable piecewise-
linear optimization: Unifying framework and extensions. Operations Research 58(2), 303–315
(2010)
Part IV
Optimization for Control Systems
Energy-Oriented Inter-Vehicle Distance
Optimization for Heterogeneous
E-Platoons
© The Author(s), under exclusive license to Springer Nature Switzerland AG 2021 113
A. Masone et al. (eds.), Optimization and Data Science: Trends and Applications,
AIRO Springer Series 6, https://doi.org/10.1007/978-3-030-86286-2_9
114 B. Caiazzo et al.
1 Introduction
2 Problem Statement
where pi (t) [m] ∈ R and vi (t) [m/s] ∈ R are the position and the speed of the
i-th vehicle, respectively; ui (t) [N m] is the control input that represents the vehicle
propulsion torque, i.e. the driving/braking torque; mi (t) [kg] is the vehicle mass;
ηi (t) is the drive-train mechanical efficiency; Ri (t) [m] is the wheel radius; Cr , c1
and c2 are the rolling resistance parameters that vary as a function of the road surface
type, road condition, and vehicle tire type; ρ [kg/m3 ] is the air density; CDi (t) is
the vehicle drag coefficient; Afi (t) [m2 ] is the vehicle frontal area; φi is the air-drag
reduction coefficient due to the platooning effects (according to [29]); g [m/s2 ] is
the gravity acceleration while θi (t) [rad] is the road-track slope.
116 B. Caiazzo et al.
Indicating with xi (t) = [pi (t), vi (t)] ∈ R2×1 the i-th vehicle state vector, the
nonlinear dynamic in (1) can be rewritten as follows:
vi (t) 0
ẋi (t) = + ui (t) (2)
ϕi (vi (t)) bi
Cr
ϕi (vi (t)) = −gsin(θi (t)) − gcos(θi (t)) (c1 vi (t) + c2 )
1000
0.5
− ρCDi (t)(1 − φi )Afi (t)vi2 (t). (3)
mi (t)
In the same way, the leader dynamics can be described by the following nonlinear
system:
v0 (t) 0
ẋi (t) = + u0 (t) (4)
ϕi (v0 (t)) b0
where x0 (t) = [p0 (t) v0 (t)] , being p0 (t) [m] ∈ R[m/s] and v0 (t) ∈ R the position
and the velocity of the leading vehicle, respectively; u0 (t) [N m] is the leader
control input that represents the vehicle propulsion torque, i.e. the driving/braking
torque, optimized via a MPC strategy as in [20]. Conversely, ui (t) in (1) is the
control input for each follower selected according to the distributed PI control
strategy proposed in [15], which updates its action based on the errors among the
state information shared by the vehicles via the communication network as
N
N ' t
ui (t) = − Kp aij pi (t) − pj (t) − dij − Ki aij pi (s) − pj (s) − dij ds
j =0 j =0 0
(5)
N
− Kd aij vi (t) − vj (t) ,
j =0
where Kp , Kd and Ki are the proportional and integral control gains, respectively.
In so doing, this distributed PI controller can guarantee that each follower within the
platoon can track the leader energy-saving driving profile.
State Of Charge (SOC) [14]. The voltage at the terminal of the battery is computed
as: "
+
Eoc,i − Rin,i Ibatt,i if discharging
Vt,i = Eoc,i − RIbatt,i = −
(6)
Eoc,i − Rin,i Ibatt,i if charging
Indicating with Preq,i the power required at the battery, the battery current Ibat t,i
can be derived as:
⎧ (
⎪ 4R − P
⎪
⎪ oc,i Eoc,i
− 2 − in,i req,i
⎪
⎪
E nb,i
⎨ − if discharging
2Rin,i
Ibatt,i (t) = ( (7)
⎪
⎪ 4R − P
⎪
⎪ E − 2 − in,i req,i
Eoc,i
⎪ oc,i
⎩
nb,i
+
2Rin,i
if charging.
being nb,i the number of cells constituting the battery. The battery State of Charge
can be, hence, computed as:
⎧ )t
⎨− 1
Cbatt,i 0 Ibatt,i (τ )dτ if discharging
SOCi (t) = )t (8)
⎩− ηbatt,i
Cbatt,i 0 Ibatt,i (τ )dτ if charging.
where Cbat t,i is the battery capacity, while ηbat t,i is the recharging efficiency of the
battery.
Considering that the battery supplies a DC electric motor, for each vehicle i within
the platoon (i = 1, 2, · · · , N), the power-based EV Energy consumption Model is
a quasi-steady backward model whose input are the instantaneous vehicle speed
and the electric vehicle characteristics. The output of the model is the energy
consumption (EC) [kW h/km] required by the vehicle for a specific drive cycle.
To compute the EC, we first compute the power at electric motor according to the
The Comprehensive Power-based EV Energy consumption Model (CPEM) [12]:
1
Pem,i (t) = mi ai − φi (vi (t)) (9)
ηi ηem
where a [m/s2 ] is the acceleration on the vehicle i; ηem = 0.91 is the electric motor
efficiency, respectively.
The model takes into account the ability of EVs to recover energy during braking
manoeuvres using a regenerative braking system. Hence, the effective electric power
Peme ff,i (t) is computed distinguishing between the traction and the regenerative
braking mode: "
Pem,i (t) ifPw,e (t) ≥ 0,
Peme ff,i (t) = (10)
Pem,i (t) · ηrb,i (t) ifPw,e (t) < 0,
where ηrb,i (t) is the regenerative braking efficiency computed according to [12].
118 B. Caiazzo et al.
Finally, the required electric power is obtained by considering also the auxiliary
power loss Paux = 700[W ]:
Preq,i (t) = Peme ff,i (t) + Paux . (11)
Given the required power and the distance di [km] travelled by vehicle i, the energy
consumption [ kW h
km ] can be computed according to [12]:
' t
1 1
ECi = Preq,i (τ ) dτ . (12)
3600000 0 di
3 Optimization Procedure
Let vi (t) and ai (t) the optimal speed and acceleration profile of each vehicle,
properly computed according to MPC together with distributed-PI procedures. Let
di,i−1 (t) the optimal time-varying inter-vehicle distance between vehicle i and its
predecessor i − 1 to be properly computed for energy saving purposes. To deal
with the problem of inter-vehicle distance optimization, we exploit the distance-
dependent air drag coefficient expressed as [24]
CDi ,1
CDi (di,i−1 ) = CDi ,0 1 − (13)
CDi ,2 + di,i−1
being CDi ,0 the i-th vehicle drag coefficient in the absence of any slipstream (i.e.
the drag coefficient of the lead vehicle), while CDi ,1 and CDi ,2 positive constants
obtained by regressing the experimental data presented in [13].
By leveraging the above distance-dependent air drag coefficient (13), the required
power by i-th vehicle in order to achieve tracking performance can be, hence,
expressed as the following distance-dependent nonlinear function:
Cr
Pi (di,i−1 (t)) = mai (t) + mg sin(θi (t)) + mg cos θi (t) (c1 vi (t) + c2 )
1000
(14)
ρ
+ Afi CDi (di,i−1
)(vi )2 (t) vi (t),
2
where θi (t) is the road slope profile, which can be accurately obtained by combining
the GPS and geographic information system [8, 11, 26]. In order to achieve a further
energy consumption reduction while considering safety constraints, for each vehicle
within the platoon the following optimization problem is given:
min Pi (di,i−1 (t))
di,i−1
s.t. (15)
min
di,i−1 (t) ≤ di,i−1
(t) ≤ di,i−1
max
(t),
Energy-Oriented Inter-Vehicle Distance Optimization for Heterogeneous E-Platoons 119
min max
where Pi (di,i−1 (t)) is the required power as in (14), while di,i−1 (t) and di,i−1 (t)
refer to the minimum and maximum allowed inter-vehicle distances between
vehicles i and i − 1 in order to ensure emergency braking maneuvers as well as
air-drag reduction. Specifically, these distances constraints can be calculated, for
each time instant, using the lower and upper bound of the vehicle time-headway, i.e.
hmin and hmax respectively, as
min
di,i−1 = dst + hmin vi (t), max
di,i−1 = dst + hmax vi (t), (16)
According to the technical literature [28], the typical value for lower and upper
time-headway are given as hmin = 0.4[s] and hmax = 1[s]. The aim is to avoid a
continuous optimization procedure due to instability problem that might arises due
to the presence of fast varying signal. Moreover, since the optimal inter-vehicles
gap is strongly affected by variations in driving and road slope profiles [7], we
propose an inter-vehicle optimization procedure as in Fig. 1. More specifically,
by introducing road slope profile derivative θ̇i (t) and disagreement vectors ds =
ai (t) − ai (t − 1) and dt = θ̇i (t) − θ̇i (t − 1) to capture significant changes in driving
and road slope profiles, the proposed Algorithm allows computing the optimal inter-
vehicles distance vector di,i−1 (t) for each vehicle i = 1, . . . , N, based on properly
selected threshold. In so doing, the proposed Algorithm provides a suitable criterion
to determine the most influential time-instant when the optimization procedure has
to be run. In this paper, the optimization problem as in (15) is solved through a
Nonlinear Programming (NLP) algorithm via Matlab Optimization Toolbox.
4 Numerical Results
Fig. 2 Results of base scenario. Time history of: a) vehicles speed vi (t), i = 0, . . . , 5; b) vehicles
acceleration ai (t), i = 0, . . . , 5; c) inter-vehicle distances di,i−1 (t), i = 1, . . . , 5
Fig. 3 Non-flat road features: (a) altitude profile; (b) road slope profile θ(t); (c) road slope
variation θ̇(t)
122 B. Caiazzo et al.
Fig. 4 Results of optimized scenario. Time history of: (a) vehicles speed vi (t), i = 0, . . . , 5; (b)
vehicles acceleration ai (t), i = 0, . . . , 5; (c) inter-vehicle distances di,i−1 (t), i = 1, . . . , 5; d)
Energy Saving w.r.t. base scenario
the slope profile of the road stretch travelled by the vehicle itself. Here, for the sake
of brevity, we report just an exemplary one as in Fig 3. Hence, by applying the
suggested optimization procedure, we obtain results in Fig. 4. Specifically, Fig. 4a,b
disclose the time-history of vehicles speed and acceleration profiles, respectively,
while Fig. 4c highlights the reduction of the gap distance w.r.t. Fig. 2c. To prove
the benefit of the proposed optimization technique in terms of energy saving, we
also compare the power required by a vehicle for tracking the reference driving
profile imposed by the leader according to (11) both in the base scenario and in
optimized scenario. The difference between the power computed in both cases are
shown in Fig.4d, which corroborates the effectiveness of the proposed strategy in
improve the energy saving. Finally, to quantify the energy reduction for each vehicle
w.r.t base scenario, we compute the percentage variation of energy consumption.
Results, reported in Table 2, confirm a average energy reduction of 2.7% for the
entire platoon.
Table 2 Reduction of the energy consumption [kWh/km] in percentage for each vehicle i
Configuration Vehicle 1 Vehicle 2 Vehicle 3 Vehicle 4 Vehicle 5 Mean
Time-varying spacing policy −2.7129 −2.7038 −2.7090 −2.6804 −2.6944 −2.7000
Energy-Oriented Inter-Vehicle Distance Optimization for Heterogeneous E-Platoons 123
5 Conclusion
References
1. Ahn, K., Rakha, H.A., Park, S.: Eco look-ahead control of battery electric vehicles and roadway
grade effects. Transp. Res. Rec. 2674(10), 429–437 (2020)
2. Alam, A., Besselink, B., Turri, V., Mårtensson, J., Johansson, K.H.: Heavy-duty vehicle
platooning for sustainable freight transportation: A cooperative method to enhance safety and
efficiency. IEEE Control Syst. Mag. 35(6), 34–56 (2015)
3. Besselink, B., Johansson, K.H.: String stability and a delay-based spacing policy for vehicle
platoons subject to disturbances. IEEE Trans. Autom. Control 62(9), 4376–4391 (2017)
4. Bifulco, G.N., Caiazzo, B., Coppola, A., Santini, S.: Intersection crossing in mixed traffic
flow environment leveraging v2x information. In: 2019 IEEE International Conference on
Connected Vehicles and Expo (ICCVE), pp. 1–6. IEEE (2019)
5. Boccia, M., Masone, A., Sforza, A., Sterle, C.: A column-and-row generation approach for the
flying sidekick travelling salesman problem. Transport. Res. C Emerg. Technol. 124, 102913
(2021)
6. Boccia, M., Masone, A., Sforza, A., Sterle, C.: An exact approach for a variant of the fs-tsp.
Transport. Res. Procedia 52, 51–58 (2021)
7. Caldas, K.A.Q., Grassi, V.: Eco-cruise nmpc control for autonomous vehicles. In: 2019 19th
International Conference on Advanced Robotics (ICAR), pp. 356–361. IEEE (2019)
8. Castiglione, L.M., Falcone, P., Petrillo, A., Romano, S.P.: and Stefania Santini. Cooperative
intersection crossing over 5g. IEEE/ACM Trans. Netw. (2020)
9. Coelingh, E., Solyom, S.: All aboard the robotic road train. IEEE Spectrum 49(11), 34–39
(2012)
10. Di Costanzo, L., Coppola, A., Pariota, L., Petrillo, A., Santini, S., Bifulco, G.N.: Variable
speed limits system: A simulation-based case study in the city of naples. In: 2020 IEEE
International Conference on Environment and Electrical Engineering and 2020 IEEE Industrial
and Commercial Power Systems Europe (EEEIC/I&CPS Europe), pp. 1–6. IEEE (2020)
124 B. Caiazzo et al.
11. Di Vaio, M., Falcone, P., Hult, R., Petrillo, A., Salvi, A., Santini, S.: Design and experimental
validation of a distributed interaction protocol for connected autonomous vehicles at a road
intersection. IEEE Trans. Veh. Technol. 68(10), 9451–9465 (2019)
12. Fiori, C., Ahn, K., Rakha, H.A.: Power-based electric vehicle energy consumption model:
Model development and validation. Applied Energy 168, 257–268 (2016)
13. Hucho, W., Sovran, G.: Aerodynamics of road vehicles. Annu. Rev. Fluid Mech. 25(1), 485–
537 (1993)
14. Maia, R., Silva, M., Araújo, R., Nunes, U.: Electrical vehicle modeling: A fuzzy logic model
for regenerative braking. Expert Syst. Appl. 42(22), 8504–8519 (2015)
15. Manfredi, S., Petrillo, A., Santini, S.: Distributed pi control for heterogeneous nonlinear
platoon of autonomous connected vehicles. IFAC-PapersOnLine 53(2), 15229–15234 (2020)
16. Nowakowski, C., Shladover, S.E., Cody, D., Bu, F., O’Connell, J., Spring, J., Dickey, S.,
Nelson, D.: Cooperative adaptive cruise control: Testing drivers’ choices of following
distances. Technical report (2011)
17. Pariota, L., Coppola, A., Di Costanzo, L., Di Vico, A., Andolfi, A., D’Aniello, C., Bifulco,
G.N.: Integrating tools for an effective testing of connected and automated vehicles
technologies. IET Intell. Transp. Syst. 14(9), 1025–1033 (2020)
18. Pariota, L., Di Costanzo, L., Coppola, A., D’Aniello, C., Bifulco, G.N.: Green light optimal
speed advisory: a c-its to improve mobility and pollution. In: 2019 IEEE International Con-
ference on Environment and Electrical Engineering and 2019 IEEE Industrial and Commercial
Power Systems Europe (EEEIC/I&CPS Europe), pp. 1–6. IEEE (2019)
19. Petrillo, A., Pescapé, A., Santini, S.: A secure adaptive control for cooperative driving of
autonomous connected vehicles in the presence of heterogeneous communication delays and
cyberattacks. IEEE Trans. Cybern. 51(3), 1134–1149 (2021)
20. Sajadi-Alamdari, S.A., Voos, H., Darouach, M.: Nonlinear model predictive extended eco-
cruise control for battery electric vehicles. In: 2016 24th Mediterranean Conference on Control
and Automation (MED), pp. 467–472. IEEE (2016)
21. Sarker, A., Shen, H., Rahman, M., Chowdhury, M., Dey, K., Li, F., Wang, Y., Narman, H.S.: A
review of sensing and communication, human factors, and controller aspects for information-
aware connected and automated vehicles. IEEE Trans. Intell. Transport. Syst. 21(1), 7–29
(2019)
22. Turri, V., Besselink, B., Johansson, K.H.: Cooperative look-ahead control for fuel-efficient and
safe heavy-duty vehicle platooning. IEEE Trans. Control Syst. Technol. 25(1), 12–28 (2016)
23. Vahidi, A., Sciarretta, A.: Energy saving potentials of connected and automated vehicles.
Transport. Res. C Emerg. Technol. 95, 822–843 (2018)
24. Wasserburger, A., Schirrer, A., Hametner, C.: Stochastic optimization for energy-efficient
cooperative platooning. In: 2019 IEEE Vehicle Power and Propulsion Conference (VPPC),
pp. 1–6. IEEE (2019)
25. Wu, Y., Li, S.E., Cortés, J., Poolla, K.: Distributed sliding mode control for nonlinear
heterogeneous platoon systems with positive definite topologies. IEEE Trans. Control Syst.
Technol. (2019)
26. Xu, L., Zhuang, W., Yin, G., Bian, C.: Energy-oriented cruising strategy design of vehicle
platoon considering communication delay and disturbance. Transport. Res. C Emerg. Technol.
107, 34–53 (2019)
27. Xu, S., Peng, H.: Design and comparison of fuel-saving speed planning algorithms for
automated vehicles. IEEE Access 6, 9070–9080 (2018)
28. Yanakiev, D., Kanellakopoulos, I.: Nonlinear spacing policies for automated heavy-duty
vehicles. IEEE Trans. Veh. Technol. 47(4), 1365–1377 (1998)
29. Zabat, M., Stabile, N., Farascaroli, S., Browand, F.: The aerodynamic performance of platoons:
A final report (1995)
Energy-Oriented Inter-Vehicle Distance Optimization for Heterogeneous E-Platoons 125
30. Zhang, S., Luo, Y., Wang, J., Wang, X., Li, K.: Predictive energy management strategy for
fully electric vehicles based on preceding vehicle movement. IEEE Trans. Intell. Transport.
Syst. 18(11), 3049–3060 (2017)
31. Zheng, Y., Li, S.E., Wang, J., Cao, D., Li, K.: Stability and scalability of homogeneous
vehicular platoon: Study on the influence of information flow topologies. IEEE Trans. Intell.
Transport. Syst. 17(1), 14–26 (2015)
Optimization-Based Assessment
of Initial-State Opacity in Petri Nets
Abstract When dealing with security and safety problems, Discrete Events Sys-
tems (DESs) could be a convenient way to model the behavior of distributed
dynamical systems. Among the different DES mathematical tools, Petri Nets (PNs),
by benefiting from a twofold representation, i.e. a graphical and a mathematical one,
can be exploited for effectively tackling some security problems in the DES context
such as the opacity one. This latter property is related to the capability of hiding
a secret to external observers. When the secret is modeled by the initial marking
(state) of a PN, the problem is known in literature as Initial-State Opacity (ISO).
A DES is said to be ISO if, for every trajectory originating from a secret state,
there exists another trajectory originated from a non-secret state, such that both
of them are equivalent from an external observer (potentially malicious) point of
view. Therefore, in an opaque system, such intruder can never determine whether the
system started from a secret state or from a non-secret one. In this paper, leveraging
the mathematical representation of PNs, we present a sufficient condition which
permit to assess if a system is not opaque, by solving a feasibility problem with
integer optimization variables. Specifically, the proposed approach starts from the
ISO definition and, then, characterizes the aforementioned non-opacity condition as
a set of linear constraints that, if not satisfied, imply the system to be not ISO.
© The Author(s), under exclusive license to Springer Nature Switzerland AG 2021 127
A. Masone et al. (eds.), Optimization and Data Science: Trends and Applications,
AIRO Springer Series 6, https://doi.org/10.1007/978-3-030-86286-2_10
128 G. De Tommasi et al.
1 Introduction
Modern control systems are becoming more open to the cyberworld and, as such,
are more vulnerable to cyber-attacks [2, 9]. As a consequence, a major challenge is
the design of supervisory and control systems that are resilient to them [6, 13, 15].
Indeed, in a distributed system, information leaks and deceptions represent a threat
to the privacy and security of the system itself, since they may enable external cyber
attackers to infer information about the system state, and consequently interact in
a malicious way with safety-critical functions. This can be accomplished in two
different ways, denoted active or passive attacks. In active attacks, the attacker’s
goal is to inflict damage on the system, while in passive attacks the attacker’s goal
is to learn secrets about the system [14]. In the first case a security problem arises,
while the latter deals with system privacy.
Security and privacy problems can be effectively modeled in the framework
of Discrete Event Systems (DESs, [10]). Two main information-flow concepts
have been successfully used to characterize privacy, and hence passive attacks,
when the CPSs are modelled at the DES level: opacity [5, 12, 16, 17] and non-
interference [6, 7]. When dealing with opacity, the secret is either a sublanguage of
the language generated by the plant model (language-based opacity), or a system
state, either initial, current or final (state-based opacity). In an opaque system,
a user with full knowledge of the model, but with partial capabilities about the
observation of the event occurrences cannot infer any secret, no matter for how
long the system dynamic is partially observed. A system can be designed as
such, otherwise supervisory control can be used to enforce opacity by restricting
the closed-loop behaviour in presence of controllable events [15]. An alternative
approach consists in designing ad hoc obfuscation/insertion functions to fool the
malicious observer [13].
Here we deal with Initial State Opaque (ISO) in DESs. Formally, a DES is said
to be ISO if, for every trajectory originating from a secret state, there exists another
trajectory originated from a non-secret state, such that both of them are equivalent
from an external, potentially malicious, observer’s point of view. Therefore, in an
opaque system, such intruder can never determine whether the system started from
a secret state or from a non-secret one.
In this paper we introduce a sufficient condition to conclude if a DES modeled
as a PN system is not ISO. Such a sufficient condition is based on the solution
of Integer Linear Programming (ILP) optimization problems. Optimization-based
approaches does not require the explicit computation of the PN reachability set,
hence they are particularly well suited for models with a high level of paral-
lelism (for a quantitative comparison between optimization-based and graph-based
approaches the interested readers can refer to [3]). Although a similar approach
has been proposed to deal with both non-interference [6] and language-based
opacity [5], to the best of the authors’ knowledge the result presented in this
paper represent a first attempt to address the state opacity problem by means of
an optimization-based approach.
Optimization-Based Assessment of Initial-State Opacity in Petri Nets 129
The paper is structured as follows: in the next section the notation adopted
for PNs is introduced, together with the definition of the considered opacity
properties. Section 3 gives the main result of this paper, namely a sufficient
condition to verify if a PN system is not ISO, based on the solution of ILP
problems. Moving forward, Sect. 4 some examples are presented in order to show
the effectiveness of the proposed approach, while conclusive remarks and possible
future research directions are finally discussed in Sect. 5.
2 Backgrounds
As already mentioned in the previous section, in this work we deal with opacity
in DESs modeled as Petri Net (PN) systems. Therefore, in this background section,
we first introduce the notation adopted to describe PNs. Afterwards the concept
of ISO is formally given. The interested reader can find more details on PNs in [8],
while a comprehensive discussion about opacity in DES can be found in [17].
p1 p2
uo1 uo2
p3
2
o1
→
is σ ε = εσ = σ , and |ε| = 0; moreover it is − →m ε− m . A marking −→
m is said to
−
→
− →
−
be reachable from m 0 iff there exists a sequence σ such that m 0 σ m . R(N, −
→ →
m 0)
denotes the set of reachable markings of the Petri net system S . The language of a
Petri net system S is defined as follows1
* +
L(N , −
→
m 0) = σ ∈ T ∗ | −
→
m0 σ .
1 The notation T ∗ denotes the Kleene closure of T (see [10, Ch. 2]).
Optimization-Based Assessment of Initial-State Opacity in Petri Nets 131
→
m 0 σ −
If −
→ m , then it is possible to write the vector equation
−
→
m =−
→
m0 + C · −
→
σ , (1)
m 0 ≥ Pre · −
−
→ →
s1
→
−
m0 + C · −
→s 1 ≥ Pre · −
→
s2
... (2a)
−
→ −
ρ−1
→
m0 + C · s i ≥ Pre · −
→
sρ
i=1
ρ
−s = π(σ )
→
i (2b)
i=1
iff there exists at least one sequence σ , which is enabled under the marking −
→
m0
−
→
such that π (σ ) = σ .
Remark 1 In this paper we deal with bounded net systems, i.e. systems whose
cardinality of R(N , − →m 0 ) is finite. For this class of systems, there exists an
integer Jmin such that, if ρ ≥ Jmin , for each − →
m ∈ R(N , − →m 0 ) there exists at
→
− →
−
least one set of vectors s 1 , . . . , s ρ that fulfill the constraints (2a) and
−
→ − ρ
m =−
→
m0 + C · →
s i.
i=1
In other words, for bounded net systems Jmin integer vectors are sufficient to
describe the reachability set R(N , −→m 0 ) by means of the constraints (2a). For a
bounded but non live net system, an estimation of Jmin can be carried out by
using the reachability graph of the system itself. For bounded and live systems and
estimation of Jmin can be computed exploiting the concept of T-invariant (for a
more comprehensive discussion on this issue, the interested reader can refer to [4,
Sec. 3]).
132 G. De Tommasi et al.
In the next section we will deal with opacity in DESs modeled with PN systems.
In this context, external users can only partially observe the system behaviour.
In order to model this partial observability, the set T is partitioned into the
two disjoint sets of observable (represented by empty boxes) and unobservable
transitions (represented by filled boxes), named respectively To and Tuo . Given a
sequence σ ∈ T ∗ , its observation is the output of the natural projection function
P r : T ∗ → To∗ , which is recursively defined as P r(σ t) = P r(σ )P r(t), with
σ ∈ T ∗ and t ∈ T ; moreover, P r(σ ) = t if t ∈ To , while P r(t) = if t ∈ Tuo .
Remark 2 In order to ease the notation, in Sect. 3 we will refer to Preo (Preuo ) as a
partition of the pre-incidence matrix obtained by excluding the columns associated
to the non-observable (observable) transitions. The same goes for Posto (Postuo )
and C o (C uo )
In the next section we will give a sufficient condition to check if a PN system is not
initial state opaque. When dealing with ISO in PNs the information we are interested
in hiding is the initial marking of the net, although the intruder knows the structure
of the system—i.e., the net topology is known—he/she does not have a precise
information about the initial state. For this reason, we will consider net systems
where there is an uncertainty on the initial marking. To this aim we define M0 ⊆ Nm
as the set of all the initial markings, that is we assume that −→m 0 belongs to any of
the markings in the set M0 . Furthermore, M0 is split into two disjoint subsets: the
set of secret markings Ms ⊂ M0 , and the set of non-secret markings Mns ⊂ M0 ,
being Ms ∩ Mns = ∅. When dealing with systems with uncertain initial marking,
we adopt the notation S = N , M0 , implying that − →
m 0 ∈ M0 .
Given the two subsets Ms and Mns , we can retrieve the definition of ISO system
by extending as follows the one given in [17] to the case of PN systems.
Definition 1 A net system S with uncertain initial marking belonging to M0 is
ISO if and only if
∀−
→
m s ∈ Ms and ∀ σ ∈ L(N, −
→
m s) , ∃ −
→
m ns ∈ Mns and ∃ σ ∈ L(N, −
→
m ns ) s.t.
P r(σ ) = P r(σ ) . (3)
Optimization-Based Assessment of Initial-State Opacity in Petri Nets 133
3 Main Results
This section gives the main contribution of this paper, namely a sufficient condition
to check if a net system is not ISO. Therefore, before presenting such a main result,
let us first derive the definition of a not ISO system. From Definition 1, the following
readily follows.
Definition 2 A net system S with uncertain initial state belonging to M0 is not
ISO if and only if
m s ∈ Ms and ∃ σ ∈ L(N, −
∃−
→ →
m s) , ∀ −
→
m ns ∈ Mns and ∀ σ ∈ L(N, −
→
m ns ) s.t.
P r(σ ) = P r(σ ) . (4)
In other words, from Definition 2, a PN system with multiple secret and non-secret
initial markings is not ISO iff at least one secret marking has a firing sequence
whose projection on the observable transitions is different from the projection of
every firing sequence generated by the set of not secret initial markings.
We can now state the following theorem, that exploits the mathematical rep-
resentation of PN systems to recast Definition 2 in terms of a set of feasibility
problems with integer optimization variables. It should be noticed that the proposed
result represents only a sufficient condition. Indeed, if at last one of the considered
feasibility problems does not admit a solution, then the system S is not ISO,
otherwise, when a solution can be found no conclusions can be drawn as far as ISO
is concerned.
Theorem 1 Given a bounded net system S , an unobservable set of transi-
tions Tuo ⊂ T and an integer J ≥ Jmin , let Ms be the set of secret initial
markings.
The system is not ISO if, for at least one secret marking −
→
m s ∈ Ms , there exists
an integer ρ such that the following feasibility problem
134 G. De Tommasi et al.
⎧ −
→
⎪ m s ≥ Preuo · −→
s1
⎪
⎪
⎪ →
−
⎪
⎪
⎪ s1 ≥ Preo · −
m s + C uo · −
→ →
s1
⎪
⎪
⎪ →
− →
− −
→
⎪
⎪
⎪ m + C · + C · s ≥ Pre ·−
→
s2
⎪
⎪
s uo s1 o 1 uo
⎪
⎪
⎪
⎪ ... (5a)
⎪
⎪
⎪
⎪
⎪
⎪
J −1
J
⎪
⎪ −
→
m s + C uo · −
→
si + C o · −s ≥ Pre · −
→ →
⎪
⎪ i o s J
⎪
⎪
⎪
⎪ i=1 i=1
⎪
⎪
⎪
⎪
⎪ ν ≥ Preuo · →−
⎪
⎪
ns1
⎪
⎪
⎪
⎪ ν + C uo · ns1 ≥ Preo · −
→
− →
s1
⎪
⎪
⎪
⎪
⎪
⎪ ν+C ·− → +C ·− →s ≥ Pre ·−
→
ns2
⎪
⎪
uo ns1 o 1 uo
⎪
⎪
⎪
⎪ ... (5b)
→ ⎨
X −m si , ρ :
J −1
J
⎪
⎪ ν + C uo · −
→ −
→
s i ≥ Preo · −
→
⎪
⎪ nsi + C o · sk
⎪
⎪
⎪
⎪ i=1 i=1
⎪
⎪
⎪
⎪
J
n
⎪
⎪ →
−
⎪
⎪ s i (j ) ≥ ρ (5c)
⎪
⎪
⎪
⎪ i=1 j =1
⎪
⎪
⎪
⎪
⎪
⎪
card( Mns )
⎪
⎪ −
→
⎪
⎪ ν= m nsj ◦ (kj · 1), (5d)
⎪
⎪
⎪
⎪ j =1
⎪
⎪
⎪
⎪
⎪
⎪
card( Mns )
⎪
⎪
⎪
⎪ kj = 1 (5e)
⎪
⎪
⎪
⎪ j =1
⎪
⎪
⎪
⎪ − , −
→ → −
→
⎪
⎪ si nsi , s i ∈ N ,
n
i = 1,2,... ,J (5f)
⎪
⎪
⎩
kj ∈ {0, 1} , j = 1 , . . . , card(Mns ) (5g)
does not admit a solution, where “◦” indicates the Hadamard product.
Proof First of all, let note that due to constraints (5d), (5e) and (5g), the vector ν
permits to automatically select a non-secret marking such that a solution to
problem (5) exists. Hence, if (5) does not admit a solution, it means that for a
given −→
m s ∈ Ms , the constraints are not feasible for any −→
m ns ∈ Mns .
Moreover, in problem (5) three set of firing count vectors are included, namely
• −→s i to model the firing of the observable transitions (see Remark 2);
→
−
• si to model the firing of unobservable transitions when the initial marking is
the secret one, i.e. −
→
m0 = − →
m s;
→
−
• nsi to model the firing of unobservable transitions when the initial marking is
a not-secret one, i.e. −
→
m ∈M .
0 ns
Optimization-Based Assessment of Initial-State Opacity in Petri Nets 135
Therefore, taking into account also the constraint (5c), if the feasibility problem (5)
does not admits a solution, then it means that there does not exist any firing count
vector corresponding to a sufficiently long sequence that is enabled both from − →
ms
and from any non secret marking in Mns , such that the observable transitions are
mapped into the same firing count vectors − →s i . If this is the case, it means that
condition (4) holds, implying the system to be not ISO.
Sufficiency of the condition given by Theorem 1 comes from the fact that in the
firing count vectors we last the order of the firing of the transitions. Hence, if
problem (5) admits a solution, this does not necessarily imply that condition (4)
does not hold.
4 Examples
In this section we show the effectiveness of the proposed approach by applying the
condition of Theorem 1 to some simple examples. All the considered ILP problems
have been solved by using the GLPK solver [1].
Let us first consider the PN system in Fig. 1 with three transitions, two of
which are unobservable, i.e. T*uo =+ {uo1 , uo2 }. Let us now consider the *secrete+
marking set equal to Ms = − →m s with − m s = (2 0 0)T , and Mns = −
→ →m ns
−
→
with m ns = (0 2 0) . for this simple example, it can be readily noticed that,
T
with this choice for Ms and Mns the net system is ISO; indeed there is only
one observable transition, therefore an external intruder can only see the firing of
transition o1 , which fires infinite times, regardless of the initial marking.
If we check the condition of Theorem 1 to assess the opacity of the considered
example, by letting J = 2 it follows that the feasibility problem generated finds a
solution whatever the choice of ρ. Therefore, the condition of Theorem 1 does not
hold. However, this is expected, being the system ISO and the proposed condition a
sufficient one to assess if the system would have been not ISO.
Let us now consider the net in Fig. 2 which has five transitions, three of which
are unobservable, i.e. Tuo = {uo1 , uo2 , uo3 }.
For this system we consider the following two cases:
(1) Two secret initial markings, − →
m s1 = (1 2 1 0 0)T and − →m s2 = (2 2 0 0 0)T , and
the non secret one m→
− = (0 2 2 0 0) , are considered.
T
ns1
Therefore, when applying the condition of Theorem 1 two feasibility problems
should be solved. When − →
m s1 and − →
m ns1 are considered, the only observable
transition which can fire is o2 . Therefore a solution to problem (5) can be found,
since a possible firing sequence enabled from − →
m s1 is:
p1 p2 p3
uo1 uo2
p4 p5 p6
o1 2 o2
uo3
P r(σ ) = o2 o2 , . . . .
5 Conclusions
A sufficient condition to assess non initial state opacity in DES modeled as Petri
net systems have been given. In particular, the proposed condition is based on the
solution of ILP problems. Such an optimization-based approach can benefit by the
use of off-the-shelf optimization tools, rather than relying on ad hoc algorithms, as
in the case of graph-based approach (see also the comparison made in [3]).
Being only sufficient, the proposed result can be considered as a preliminary one,
and possible line of future research consists in developing a set of constraints able
to validate the necessary and sufficient conditions to assess ISO. Such an extension
would enable to extend the supervisory control approach presented in [6] to enforce
opacity in PN systems.
References
15. Saboori, A., Hadjicostis, C.N.: Opacity-enforcing supervisory strategies via state estimator
constructions. IEEE Trans. Autom. Control 57(5), 1155–1165 (2011)
16. Tong, Y., Li, Z., Seatzu, C., Giua, A.: Decidability of opacity verification problems in labeled
petri net systems. Automatica 80, 48–53 (2017)
17. Wu, Y.-C., Lafortune, S.: Comparative analysis of related notions of opacity in centralized and
coordinated architectures. Discrete Event Dyn. Syst. 23(3), 307–339 (2013)
Eco-Driving Adaptive Cruise Control via
Model Predictive Control Enhanced
with Improved Grey Wolf Optimization
Algorithm
1 Introduction
In the last decades, autonomous driving has gained greater attention due to the
benefit it could lead in terms of road safety since, as shown in [5, 13, 16, 17], the
90% of the traffic accidents are caused by human errors. To face this issue Advanced
driving assistant systems (ADAS) plays a key role in improving driving safety and
© The Author(s), under exclusive license to Springer Nature Switzerland AG 2021 139
A. Masone et al. (eds.), Optimization and Data Science: Trends and Applications,
AIRO Springer Series 6, https://doi.org/10.1007/978-3-030-86286-2_11
140 R. Cappiello et al.
comfort. Adaptive cruise control (ACC), whose aim is to maintain an Ego vehicle
at a certain distance w.r.t. the preceding one, represents one of the main technology
that helps in this direction [23]. Besides road safety, the environmental issue has
received considerable attention since road transport is responsible for 16.5% of the
global greenhouse gas emissions [3]. With the aim at reducing emissions, spreading
attention has been given to hybrid/electric vehicles, where, however, the battery
usage management strongly affect the vehicle life cycle [22].
In the technical literature, due to its capabilities to reach multiple control
objectives while handling multiple constraints in a receding horizon fashion,
Model Predictive control approaches are widely proposed in [8, 11, 24] to design
Ecological-ACC. The choice of both cost function and the weightings factors
strongly influences the closed-loop system’s performance, and the energy-saving
requirements [1]. Indeed, the tuning of the weightings parameters is challenging
as they are related to the closed-loop performance in a complex manner [21].
However, this problem is not considered in the above-mentioned work, and the
tuning parameters are selected via a try and error process. To overcome this problem,
in this work, we propose a novel Eco-ACC control system which combines the
Nonlinear Model Predictive Control (NMPC) and computational intelligence (CI)-
based optimization algorithm, i.e. the improved Grey Wolf algorithm (I-GWO)
[4], for the sub-optimal tuning of the weightings parameters w.r.t. the closed-loop
performances. Specifically, since the vehicle dynamic is inherent nonlinear (air
drag, gravity force, rolling resistance, etc. . . ) and strongly affected by uncertainty
(e.g. due to road shape and slope), an on-line Nonlinear Model Predictive Control
(NMPC) approach is used to keep the accuracy of the prediction model faithful to
reality. Conversely, I-GWO works off-line based on a data set derived by running
several simulations of the behaviour of the autonomous electric vehicles under the
action of the ACC control system. Then, by evaluating a properly designed cost
function, the I-GWO optimization algorithm finds the best sub-optimal solution
for the NMPC tuning parameters. The obtained result is then used to shape the
NMPC cost function and solve the on-line NMPC control problem. To validate
the proposed control approach, an extensive numerical validation has been carried
out considering a real Italian road section (i.e. the route Roma-Padova). Moreover,
to perform an adequate analysis, a comparison w.r.t an NMPC control strategy
whose weightings parameters have been chosen via try and error technique has been
performed. To sum up, numerical results confirm the effectiveness of the approach
and its efficiency in ensuring energy saving.
Finally, the paper is organized as follows. In Sect. 2, the grey wolf algorithm, as
well as the improved one is introduced. Section 3 presents the problem statement
and control-oriented vehicle models. In Sect. 4, we suggest the proposed control
approach while in Sect. 5, the numerical analysis is carried out. In Sect. 6,
conclusions are drawn.
Eco-Driving Adaptive Cruise Control via Model Predictive Control Enhanced. . . 141
2 Mathematical Preliminaries
The main idea that inspired the author of the grey wolf optimizer is the behaviour,
during the hunting, of grey wolves in nature. In general, the hierarchy of grey wolves
is structured as follow [20]: (i) Alfa wolves (α) are responsible for nearly all group
decisions such as time to hunting, places to stay and, time to wake up; (ii) Beta
wolves (β) is the second wolf in the hierarchy and helps the alpha to make decisions;
(iii) Delta wolves (δ) is the lowest rank of grey wolves’ social hierarchy, but delta
wolves are dominant compared with omega wolves; (iv) Omega wolves (ω) are the
remaining wolves that can not be classified as alfa, beta, or delta.
The hunting of the grey wolves consists of three main step: (i) encircling; (ii)
hunting; (iii) attacking the prey.
2.1.2 Encircling
In order to simulate and model the encircling behaviour of wolves the following
equation are used:
, ,
$ = ,,C$ · X
D $ ,, ,
$ p (t) − X(t) $ + 1) = X
X(t $ p (t) − A$ · D
$ (1)
where t defines the current iteration A$ and C$ are coefficient vectors calculated as
$ indicate the position vector of a grey
in (2), Xp is the position of the prey, and X
wolf.
a · r$1 − a$ , C$ = 2 · r$2
A$ = 2$ (2)
where a$ components are linearly decreased from 2 to 0 over the iterations as in (3)
and r1 and r2 are random vectors in [0, 1].
2.1.3 Hunting
As the wolves usually operate in a natural environment, they know where the prey
is and where they should go to encircle the prey. Instead, in our scenario, the wolves
do not know where is the prey, defined as X$p in (1), and the central assumption
142 R. Cappiello et al.
of the algorithm is that the main three wolves, alpha, beta, and delta, have a better
knowledge about the current and exact position of the prey. Other all the wolves
follow the previously obtained best solution during the optimization process. In
order to model what is said, the following equations are used.
, , , , , ,
$ α = ,,C$ 1 · X
D $ ,, ;
$α − X $ β = ,,C$ 2 · X
D $ ,, ; D
$β − X $ δ = ,,C$ 3 · X $ ,,
$δ − X (4)
X $ α − A$i,1 · D
$ i,1 = X $ i,2 = X
$α ; X $ β − A$ i,2 · D
$β ; $ i,3 = X
X $ δ − A$ i,3 · D
$δ (5)
$ $ $
$ i−GW O (t + 1) = Xi,1 + Xi,2 + Xi,3
X (6)
3
where X $α, X
$β, X$ δ are the first three best solutions at iteration t, A$ i,1 , A$i,2 , A$i,3 , are
calculated as in (2).
It can be observed that the final position of the i-th wolf i.e. X $ i−GW O (t + 1)
would be, due to the presence of A$i , in a random place within a circle, defined by
the positions of alfa, beta, and delta in the search space.
2.1.4 Attacking
The hunting process is terminated when the prey stops moving, and wolves start
an attack. This can be done mathematically by the value of a which is linearly
decreased over the curse of iterations controlling the exploration and exploitation as
in (3).
where Ri (t) is calculated as in (8) using Euclidean distance between the current
position of Xi (t) and the candidate position Xi−GW O (t + 1) defined in (6) and
Di (·) is Euclidean distance between Xi (t) and Xj (t) for all i, j in the pack.
Once a neighbourhood of Xi (t) is constructed, the position of the i-th wolf at the
next iteration, according to the DHL approach, is calculated:
Xi−DLH (t + 1) = Xi (t) + rand × (Xn (t) − Xr (t)) (9)
where Xi (t) is the position of the wolf in analysis at the current iteration, Xn (t) is a
random wolf selected between the neighbors Ni (t) and Xr (t) is a random wolf from
the whole pack.
At the end of this phase, there are two possible positions for the Xi (t + 1) wolf,
one calculated via the classical GWO approach Xi−GW O and the other one obtained
by the DHL technique Xi−DLH . To chose the effective position for the for the i-th
wolf componing the pack at the next iteration the criteria described in (10) is used.
Xi−GW O (t + 1), iff (Xi−GW O ) < f (Xi−DLH )
Xi (t + 1) = (10)
Xi−DLH (t + 1) otherwise
where f (Xj ) is the fitness value for the generic Xj position, Xi−GW O and Xi−DLH
are respectively evaluated as in (6)–(9).
3 Problem Statement
Consider an autonomous electric vehicle, called Ego vehicle, equipped with on-
board proximity sensors (such as radar, lidar and camera) and with on-board
control unit that allows the vehicle to move into its surrounding traffic scenario
autonomously. Our aim is to design a novel Ecological Adaptive cruise Control
(Eco-ACC) that allows maintaining an optimal inter-vehicle distance from the
preceding vehicle while minimizing energy consumption to reach the control
objective (see Fig. 1). Specifically, the proposed control system has to pursue the
following multiple control objectives: (i) tracking of the preceding vehicle speed
profile; (ii) maintaining a desired safe inter-vehicle distance to avoid any possible
collisions; (iii) ensuring a safe and comfortable driving experience; (iv) minimizing
energy consumption and, hence, ensuring improved battery management.
The Ego Vehicle behaviour is described by its longitudinal motion, which takes into
account the aerodynamics drag, rolling resistance, and gravitational force [18]. To
derive a mathematical model for control design, we assume that the driving/braking
torques are integrated into one high-level control input. Accordingly, the motion
of the ego vehicle can be described by the following non-linear dynamical system
[19, 25]:
ṗego (t) vego (t)
= η (11)
v̇ego (t) − 2m
1 2 (t)
Cd Ch ρa Avego − μg cos(θ(t)) − g sin(θ(t)) + R·m u(t)
where pego (t)[m] ∈ R and vego (t) [m/s] ∈ R are the position and the velocity of the
Ego vehicle w.r.t. the reference road frame, respectively; u(t) [N m] is the control
input that represents the vehicle propulsion torque, i.e. the driving/braking torque;
m [kg] is the vehicle mass; η is the drive-train mechanical efficiency; R [m] is the
wheel radius; Cd is the vehicle drag coefficient; ρa [kg/m3 ] is the air density; A [m2 ]
is the vehicle frontal area; Ch is a correction factor (unitless) due to the altitude of
the road where vehicle moves; μ is the rolling resistance coefficient; g [m/s2 ] is
the gravity acceleration while θ (t) [rad] is the road-track slope. According to [19],
the altitude correction factor is computed as 1 − 0.085H where H [km] is the
road altitude. For sake of compact notation, by introducing the state vector x(t) =
[pego (t) vego (t)]T , we can recast the vehicle dynamics as in (11) as
ẋ(t) = f (x(t), u(t)) (12)
For the EV battery pack model [7, 12] we consider an equivalent simplified electric
circuit consisting of an internal voltage source Voc and one resistance Rb . The
voltage at the terminal of the battery is computed as:
Vb (t) = Voc − Rb Ib (t) (13)
being Ib the battery current. Indicating with Preq (t) the power required at the
battery, Ib (t) can be derived as
-
4Rb Preq (t)
Voc − 2 −
Voc nb
Ib (t) = (14)
2Rb
being nb the number of cells constituting the battery. The battery State of Charge
can be hence computed as:
' t
1
SOC(t) = − Ib (τ )dτ (15)
Cbatt 0
Eco-Driving Adaptive Cruise Control via Model Predictive Control Enhanced. . . 145
where Cbat t is the battery capacity. Finally, the power required to the battery Preq is
evaluated as [15]
Rm
Preq (t) = ω(t)u(t) + u(t)2 + Paux (16)
K2
where ω is the rotational speed of the DC motor derived from the linear speed
v (t )R
as ω = egoR t , being Rt the transmission ratio; K = Ka φ, being K the
armature constant and Φ (in Weber [W b]) the armature magnetic flux; Rm is the
DC motor resistance; Paux , not determined by vehicle velocity and acceleration, is
the auxiliary power loss including some electronic devices in the vehicle, such as
radios, lights, air conditioners and so on [10].
where d the desired constant inter-vehicle distance between the ego vehicle and
the preceding vehicle. Note that the control objectives (17)–(19) will refer to
the tracking of a desired behaviour w.r.t. the preceding vehicle while the control
goal (20) is related to the energy saving requirement.
4 Control Design
To fulfil the control objectives proposed in Sect. 3.2, in this section Eco-ACC system
is designed according to an NMPC control methodology that leverages the meta-
heuristic I-GWO optimization algorithm for the proper selection of the controller
weight parameters.
146 R. Cappiello et al.
The NMPC is chosen due to the nonlinear electric vehicle dynamics, the variability
of driving conditions and the multitude of physical constraints for involved dynamic
variables, hence coping with the dynamical system uncertainties by anticipating
future situations [2]. See Fig. 2 for the proposed control architecture.
Specifically, we design the control action u(t) in (11) by solving the following
multiple optimization problem:
' t+T
min J (x(τ |t), u(τ |t))dτ (21)
u(t) t
subject to:
ẋ(t) = f (x(t), u(t)) (22a)
amin ≤ v̇ego (τ |t) ≤ amax (22b)
jmin ≤ v̈ego (τ |t) ≤ jmax (22c)
amin Rm amax Rm
≤ u(τ |t) ≤ (22d)
η η
where T is the prediction horizon; xi (τ |t) and ui (τ |t) are the prediction of the state
variable and the control input respectively of the dynamical model (12); amin and
amax denote the minimum and maximum bounds for the Ego vehicle acceleration
variable; jmin and jmax denote the minimum and maximum bounds for the Ego
epos = pref (k) − pego (k) is the position error, evel = vref (k) − vego (k) is the speed
error, k is the generic simulation step and ηρ are weighting factors which allows
normalizing each term of J , and hence equally weighting each of them.
After running a number of simulations equal to the number of wolves that
compose the pack, the best three solutions are combined to estimate the position
of the optimum, which corresponds in our case to the three weights that minimise
the cost (24). At the following iteration, the wolves’ positions are updated using the
assumed position of the optimal as a “central point” and information about a defined
neighbourhood (10). The process is then repeated for a number of times equal to the
maximum number of iterations, at the end of which three optimal sub-solutions are
obtained and denoted as ω1∗ , ω2∗ and ω3∗ .
148 R. Cappiello et al.
else
Update position of the search agent based on the three best previous solutions and
neighbourhood as in (10);
end
Start the simulation;
Get data from simulation and evaluate and evaluate epos , evel and SOC;
Evaluate the cost function for the I-GWO algorithm as in (24);
end
Find the best three solutions: α, β and γ according to (10);
t=t+1;
end
ω1∗ = α(1);
ω2∗ = α(2);
ω3∗ = α(3);
5 Numerical Analysis
Fig. 3 Altitude and slope profile for the appraised Roma-Padova road network
vehicle and the preceding is selected as d = 10 [m]. Finally, to show the benefits
of the proposed control approach we compare the performances achieved with our
I-GWO-enhanced NMPC with the ones achievable with a classical NMPC where
the weighting factors are not optimized.
(a) (b)
Fig. 4 I-GWO optimization algorithm results: (a) evaluation of the I-GWO cost function; (b)
evolution of the optimal cost function vs iterations
(a) (b)
Fig. 5 Control performance with weighting factor optimized. Time history of: (a) Ego vehicle
speed; (b) position error
to drive the electric vehicle, it is possible to observe how our approach can ensure
an energy reduction of 2.5% (see Fig. 6c).
6 Conclusion
In this paper, we have proposed a novel Eco-ACC control system for autonomous
electric vehicles that leverages the NMPC technique enhanced with the I-GWO
meta-heuristic optimization algorithm for the proper selection of the weighting
factors of the NMPC cost function. The proposed approach has aimed to drive
the Ego vehicle according to an ACC control objective while minimizing as much
as possible the energy consumption. Since the above-mentioned control objectives
strongly depend on the proper choice of the cost function to be optimized, the I-
GWO algorithm has helped design the NMPC problem via an off-line optimization
of its weighting factors. Numerical analysis has confirmed the effectiveness of the
proposed approach in guaranteeing the ACC control objectives while leading to
considerable energy saving.
152 R. Cappiello et al.
(a) (b)
(c)
Fig. 6 Comparison between the proposed I-GWO-based NMPC controller and non-optimized
NMPC ) t controller. Time history of: (a) Ego vehicle speed; (b) Position error; (c) energy consump-
tion 0 Ib (τ )dτ
References
1. F. Allgöwer, A. Zheng. Nonlinear Model Predictive Control, vol. 26. Birkhäuser (2012)
2. Amodeo, M., Di Vaio, M., Petrillo, A., Salvi, A., Santini, S.: Optimization of fuel consumption
and battery life cycle in a fleet of connected hybrid electric vehicles via distributed nonlinear
model predictive control. In: 2018 European Control Conference (ECC), pp. 947–952. IEEE
(2018)
3. Birol, F.: Co2 emissions from fuel combustion. International Energy Agency (2016)
4. Bozorg-Haddad, O.: Advanced Optimization by Nature-Inspired Algorithms. Springer (2018)
5. Fiengo, G., Lui, D.G., Petrillo, A., Santini, S., Tufo, M.: Distributed robust pid control for leader
tracking in uncertain connected ground vehicles with v2v communication delay. IEEE/ASME
Trans. Mechatron. 24(3), 1153–1165 (2019)
6. He, X., Wu, X.: Eco-driving advisory strategies for a platoon of mixed gasoline and electric
vehicles in a connected vehicle system. Transport. Res. D Transport Environ. 63, 907–922
(2018)
7. Iannuzzi, D., Santini, S., Petrillo, A., Borrino, P.I.: Design optimization of electric kart for
racing sport application. In: 2018 IEEE International Conference on Electrical Systems for Air-
craft, Railway, Ship Propulsion and Road Vehicles International Transportation Electrification
Conference (ESARS-ITEC), pp. 1–6 (2018)
8. Jia, Y., Jibrin, R., Gorges, D.: Energy-optimal adaptive cruise control for electric vehicles based
on linear and nonlinear model predictive control. IEEE Trans. Veh. Technol. (2020)
9. Li, K., Gao, F., Li, S.E., Zheng, Y., Gao, H.: Robust cooperation of connected vehicle systems
with eigenvalue-bounded interaction topologies in the presence of uncertain dynamics. Front.
Mech. Eng. 13(3), 354–367 (2018)
Eco-Driving Adaptive Cruise Control via Model Predictive Control Enhanced. . . 153
10. Li, Y., Zhang, L., Zheng, H., He, X., Peeta, S., Zheng, T., Li, Y.: Evaluating the energy
consumption of electric vehicles based on car-following model under non-lane discipline.
Nonlinear Dynamics 82(1-2), 629–641 (2015)
11. Magdici, S., Althoff, M.: Adaptive cruise control with safety guarantees for autonomous
vehicles. IFAC-PapersOnLine 50(1), 5774–5781 (2017)
12. Maia, R., Silva, M., Araújo, R., Nunes, U.: Electrical vehicle modeling: A fuzzy logic model
for regenerative braking. Expert Syst. Appl. 42(22), 8504–8519 (2015)
13. Manfredi, S., Petrillo, A., Santini, S.: Distributed pi control for heterogeneous nonlinear
platoon of autonomous connected vehicles. IFAC-PapersOnLine 53(2), 15229–15234 (2020)
14. Nadimi-Shahraki, M.H., Taghian, S., Mirjalili, S.: An improved grey wolf optimizer for solving
engineering problems. Expert Syst. Appl. 166, 113917 (2021)
15. Petit, N., Sciarretta, A.: Optimal drive of electric vehicles using an inversion-based trajectory
generation approach. IFAC Proc. Vol. 44(1), 14519–14526 (2011)
16. Petrillo, A., Pescapé, A., Santini, S.: A secure adaptive control for cooperative driving of
autonomous connected vehicles in the presence of heterogeneous communication delays and
cyberattacks. IEEE Trans. Cybern. 51(3), 1134–1149 (2021)
17. Petrillo, A., Salvi, A., Santini, S., Valente, A.S.: Adaptive multi-agents synchronization for
collaborative driving of autonomous vehicles with multiple communication delays. Transport.
Res. C Emerg. Technol. 86, 372–392 (2018)
18. Rajamani, R.: Vehicle Dynamics and Control. Springer Science & Business Media (2011)
19. Rakha, H.A., Ahn, K., Moran, K., Saerens, B., Van den Bulck, E.: Virginia tech comprehensive
power-based fuel consumption model: model development and testing. Transport. Res. D
Transport Environ. 16(7), 492–503 (2011)
20. Rezaei, H., Bozorg-Haddad, O., Chu, X.: Grey Wolf Optimization (GWO) Algorithm, pp. 81–
91 (07 2018)
21. Shah, G., Engell, S.: Tuning mpc for desired closed-loop performance for mimo systems. In:
Proceedings of the 2011 American Control Conference, pp. 4404–4409. IEEE (2011)
22. Tie, S.F., Tan, C.W.: A review of energy sources and energy management system in electric
vehicles. Renew. Sustain. Energy Rev. 20, 82–102 (2013)
23. Wang, Z., Wu, G., Barth, M.J.: A review on cooperative adaptive cruise control (cacc) systems:
Architectures, controls, and applications. In: 2018 21st International Conference on Intelligent
Transportation Systems (ITSC), pp. 2884–2891. IEEE (2018)
24. Weißmann, A., Görges, D., Lin, X.: Energy-optimal adaptive cruise control combining model
predictive control and dynamic programming. Control Eng. Pract. 72, 125–137 (2018)
25. Wu, Y., Li, S.E., Cortés, J., Poolla, K.: Distributed sliding mode control for nonlinear
heterogeneous platoon systems with positive definite topologies. IEEE Trans. Control Syst.
Technol. 28(4), 1272–1283 (2019)
Part V
OR in Industry
Optimizing and Evaluating
a Maintenance Strategy
for Multi-Component Systems
1 Introduction
© The Author(s), under exclusive license to Springer Nature Switzerland AG 2021 157
A. Masone et al. (eds.), Optimization and Data Science: Trends and Applications,
AIRO Springer Series 6, https://doi.org/10.1007/978-3-030-86286-2_12
158 L. B. Bárcena and I. T. Castro
can only be maintained upon failure. This model was proposed in [10] and [4] with
two blocks of units.
In real life we can find lots of systems with that structure: some pieces that
degrade continuously (for example, a conveyor belt, whose degradation can be seen
with the naked eye) and other ones that are subject to sudden failures and we cannot
predict their failure, for example, a light bulb [4, 10].
This work is organized into sections. The problem is presented in the Introduction
Sect. 1. The problem is modelled mathematically trough different probability
distributions and the maintenance policy is explained in Sect. 2. In Sect. 3, the
objective cost function is described, with a well-known theorem useful in this paper.
Section 4 is devoted to the optimization algorithms used to optimize the system
maintenance. Finally, a numerical example is presented in Sect. 5 with identical
and non-identical components, continuing with the most relevant conclusions of the
work in the last Sect. 6.
βi αi t αi t −1
f(αi t,βi ) (x) = x exp (−βi x), x ≥ 0,
(αi t)
That is the case of the degrading components in our model: the superposition of
all of them, when m → ∞ behaves as a Poisson process.
In this section we study the asymptotic behaviour of the expected cost of the system
maintenance. A renewal cycle is the time between two maintenance actions that
restored the system to the initial state, that is, to as good as new state. So that, we
can treat the system as a Markov chain with a space of recurring states [8].
Let E[C p (R)] and E[C c (R)] be the costs due to the preventive and corrective
maintenance of the monitored components in a renewal cycle R. Let E[C nm (R)]
be the expected cost due to the corrective replacements of the non-monitored
160 L. B. Bárcena and I. T. Castro
Deterioration level
Time
VM
VL
Fig. 1 Realization of a gamma degradation process with preventive threshold M and corrective
threshold L. Random variables σM and σL denote the instant of time in which the preventive and
corrective threshold are reached, respectively
components in a renewal cycle and E[C i (R))] corresponds to the expected cost
due to inspections.
Assigning a cost for each maintenance task, the long-run expected cost C∞ can
be obtained using a well-known result in renewal processes theory.
Theorem 1 (Renewal-Reward Theorem) For a positive recurrent renewal pro-
cess in which a reward Rj is earned during cycle length Xj and such that
{(Xj , Rj ) : j ≥ 1} is i.i.d. with E |Rj | < ∞, the long run rate at which rewards
are earned is given by:
R(t) E[R]
lim = , with probability 1.
t →∞ t E[X]
In other words, the rate at which rewards are earned is equal to the expected reward
over a cycle divided by an expected cycle length. Moreover,
E[R(t)] E[R]
lim = .
t →∞ t E[X]
Optimizing and Evaluating a Maintenance Strategy for Multi-Component Systems 161
For t ∈ (0, ∞), the average cost on the interval [0, t] is C(t )
t , where C(t) is the
cost until time t. Using Theorem 1, the long-run expected cost is expressed as:
E[C(t)] E[C(O)]
C∞ = lim = ,
t −→∞ t E[O]
where O is the length of a cycle, that is, in our case, the time to the next maintenance
action. Finally, the expected cost rate is developed as:
4 Optimization Algorithms
The objective of the work is to find the optimal values for the time between
inspections and the preventive threshold that minimize the expected cost. It is
rather tricky due to the stochastic nature of the problem. For that, we are going
to implement different optimization algorithms: an exhaustive search algorithm
combined with different meta-heuristics algorithms (genetic algorithms, ant colony
algorithms and pattern search algorithm).
It is often successful to initially explore the solutions of the problem to get a rough
idea of where the local maximum or minimum of the problem lies. At each iteration
of the search algorithm, the condition is refined to change the current solution to a
better one if necessary. As a first approximation of the solution of the problem it is
a good method. For this local search, we define a search set for the time between
inspections T and the preventive threshold M. For each combination of each pair
of points, we calculate the minimum expected cost. At each iteration, we obtain the
indices of the pair of points where we reach the minimum value, and perform a
translation to a neighboring value in the initial search space (increasing a unit the
indices and multiplying by an increment of 0.05 units), where we continue repeating
the process. We finish when there is no improvement of the solution.
Combined with meta-heuristic techniques it is very useful to improve the
solutions in an adequate computational time: initially a local search of the given
problem is performed and then a meta-heuristic appropriate to the type of problem
is applied.
162 L. B. Bárcena and I. T. Castro
They are based on the evolution theory and natural selection. A genetic algorithm
starts with a set (also called population) of N solutions (or individuals), which
evolve according to some rules applied in the following iterations of the algorithm.
Individuals are selected from the population and recombined, producing offspring
which will be the next generation. They were first applied by Zio, Marseguerra and
Compare to this problem in [7, 11, 12].
• Initialization: at time t = 1, we generate N random solutions. In this specific
case of a maintenance optimization problem, the solutions is usually a vector
of variables with the interval time between inspections, thresholds values, . . . so
they are of the form (Tj , Mj ), j = 1, . . . , m.
• Fitness evaluation: for the set of sampled parameters, the cost is evaluated.
These values are collected and order to select the best individuals for the next
iteration. A greater probability is assigned to the individuals that minimize the
cost function.
• Crossover: an offspring is created by cutting the selected individuals into two
parts and exchanging their parts. That is, given S1 = (T1 , M1 ) and S2 =
(T2 , M2 ), the new individuals considered are S¯1 = (T1 , M2 ) and S¯2 = (T2 , M1 ).
• Mutation: it alters randomly some elements of a solution, always with a small
probability. In this case, we randomly change a solution Si = (Ti , Mi ) by
replacing it with a nearby value, simulated by a uniform distribution.
Genetic Algorithm Pseudo-Code
Generate initial population randomly
while i < max(iterations) / stop condition is not fulfilled
do
Fitness calculation of each individual
Select the best individuals
Perform crossover with a probability p
Perform mutation with a small probability q
Select the new individuals for the population
end while
Optimizing and Evaluating a Maintenance Strategy for Multi-Component Systems 163
Pattern search is a direct search used for optimizing functions that are not continuous
or differentiable (also known as black-box search or derivative-free search).
At each iteration of the algorithm, it moves to the nearest point which best
minimizes its objective function. This procedure is repeated until the accuracy is
achieved, or the number of iterations (stopping criteria) of the algorithm is reached.
Pattern Search Algorithm Pseudo-Code
Initiate in a point p
while i < max(iterations) / stop condition is not fulfilled
do
Evaluate the nearest neighbour of the point p
if there is a best solution
Update the current solution to the best neighbour
else
Move to the next point
end if
end while
Ant colony algorithm is useful in combinatorics and discrete problems with graphs.
Samrout applied it in preventive maintenance optimization [16]. It is based on the
behaviour of ants while they are seeking a path in the graph between their colony
and a source of food. Ants move randomly and they discover the shortest path
via pheromone trails. When more pheromone is deposited on path, it increases the
probability of that path to be followed.
In the initialization phase, a set of edges and nodes is defined. Nodes are points
enclosed in the search space [0, Tmax ] × [0, Li ], for i ∈ 1, . . . m and the edges are
the connections between these nodes.
The probability that ant k chooses node j starting from node i is:
τij (t)
p(i, j ) = ,
τik (t)
k∈ Nodes
where τij (t) is the amount of pheromone existing for edge Iij .
Ant Colony Algorithm Pseudo-Code
Generate initial population of n ants
Initialize the pheromone path and the parameters
while i < max(iterations) / stop condition is not fulfilled
for each ant do
Generate a solution using some transition rules
Update the pheromone
end for
Refine with a local search
164 L. B. Bárcena and I. T. Castro
5 Case Study
The study of the previous maintenance model is completed with the search of the
optimal values for the time between inspections, Topt and the preventive threshold
Mopt that minimize the total expected cost in Eq. (1). This search is performed
using the software MATLAB. A combined method with Monte-Carlo simulation
and meta-heuristics techniques is applied to perform the optimization [11, 12].
Table 1 Optimization of preventive threshold M with Genetic Algorithm, Ant Colony Algorithm
and Pattern Search Algorithm
Components Mopt GA CPU time Mopt ACO CPU time Mopt PS CPU time
1 2.87 2.25 2.27 2.58 2.69 1.45
2 2.90 2.10 2.37 4.27 2.98 3.10
3 3.17 3.43 2.50 6.23 3.40 4.46
4 3.29 3.57 2.44 7.98 2.98 5.76
5 3.27 4.53 2.51 8.34 2.97 6.64
6 3.30 4.67 2.65 9.89 3.02 8.32
7 3.48 5.28 2.61 10.67 3.14 8.56
8 4.05 5.96 3.30 11.23 3.83 9.02
9 4.32 6.47 4.27 11.65 3.97 9.87
10 4.95 8.21 5.04 15.32 4.56 11.47
Table 2 Optimization of inspection time T with Genetic Algorithm, Ant Colony and Pattern
Search Algorithm
Components Topt GA CPU time Topt ACO CPU time Topt PS CPU time
1 2.90 2.51 2.79 1.98 2.69 2.87
2 2.34 2.66 2.59 2.78 2.98 3.46
3 2.20 3.24 1.80 3.46 3.4 5.11
4 2.20 5.01 1.77 5.00 2.98 5.56
5 1.68 5.32 1.79 6.38 2.97 6.63
6 1.69 6.18 1.48 7.89 3.02 7.42
7 1.30 6.74 1.30 8.05 3.10 8.44
8 1.22 7.23 1.43 9.36 2.48 9.24
9 1.15 8.19 1.19 10.55 1.67 10.22
10 1.00 10.04 0.95 11.87 1.24 10.61
The same search space for Topt and Mopt as in the previous section is used,
and the objective is to optimize these parameters in order to obtain the minimum
expected cost. With different components, we are calculating initial points in
Table 4, using the local search and after that, the Genetic Algorithm is applied to
look for the best solution. The results are shown in Table 5.
Table 5 Optimal values Topt , Mopt and C∞ obtained with Genetic Algorithm
Components Topt Mopt C∞
1 6.29 2.37 5.24
2 5.99 (2.68, 2.01) 6.32
3 3.93 (3.39, 3.29, 3.08) 7.85
4 2.79 (4.31, 3.95, 3.49, 3.23) 9.96
5 2.20 (3.93, 3.86, 3.80, 3.72, 3.66) 10.94
6 2.34 (3.95, 4.25, 4.62, 4.28, 4.47, 4.12) 12.45
7 2.57 (4.58, 4.75, 4.66, 4.98, 4.87, 5.01, 4.57) 14.52
8 2.45 (4.52, 4.17, 4.36, 4.40, 4.84, 4.10, 4.74, 4.65) 16.16
9 2.18 (4.14, 4.38, 4.45, 4.36, 4.02, 4.11, 4.54, 4.32, 4.15) 19.73
10 2.37 (3.85, 4.15, 4.26, 4.02, 3.48, 3.87, 3.96, 4.00, 3.88, 3.98) 22.18
6 Conclusions
The main novelty of this work is the use of heuristics to find the best maintenance
strategy, which allows us to save cost. Previous work has focused on modeling
the problem from a probabilistic and analytical point of view [5, 6]. Another
point in favor is to perform a maintenance policy at the system level, considering
the components as a whole when performing maintenance based on the system
condition, instead of doing it component by component, as in [4, 9] or [19].
The optimal cost, as well as the optimal preventive thresholds and time between
inspections for a system consisting of identical and non-identical components have
been obtained. The computational time is reduced if we initially perform a local
search for the parameters T and M. The most efficient algorithm is the genetic
algorithm. It is observed that the expected cost increases as more components are
added. In the case of identical components, the optimal value for the preventive
threshold is increasing, while the optimal time between inspections is decreasing
as more components are added. Something similar occurs with non-identical
components, although Mopt and Topt stabilize as the number of components m →
∞.
In future work, it would be interesting to consider a dependency between degrad-
ing and non-degrading components. The assumption of exponential distribution
between failure times thanks to the Palm-Khintchine theorem will allow us to greatly
simplify this objective. Another interesting point would be the improvement of the
algorithms already proposed for the resolution of the problem.
References
Ibrahim Kucukkoc
1 Introduction
I. Kucukkoc ()
Department of Industrial Engineering, Balikesir University, Balikesir, Turkey
e-mail: [email protected]
© The Author(s), under exclusive license to Springer Nature Switzerland AG 2021 169
A. Masone et al. (eds.), Optimization and Data Science: Trends and Applications,
AIRO Springer Series 6, https://doi.org/10.1007/978-3-030-86286-2_13
170 I. Kucukkoc
2 Literature Review
3 Problem Statement
Fig. 1 A schematic representation of multiple AM machine scheduling problem, adapted from Li et al. [13]
I. Kucukkoc
Metal Additive Manufacturing: Nesting vs. Scheduling 173
Cm0 = 0; ∀m ∈ M. (3)
PTmj is constituted of three terms: (a) set-up time, (b) material release time, and
(c) powder-layering time. To include the set-up, a binary decision variable (Zmj )
is utilized. It gets the value of 1 if job j is utilized on machine m, 0 otherwise.
The material release time is related to the total volume of parts included in job
j on machine m. Xmji is a binary variable which gets 1 if part i is assigned to
job j on machine m, 0 otherwise. Lastly, powder-layering time is related to the
highest part included in a job. This indicates that grouping parts with similar heights
has a potential to minimize job production time. The ultimate goal is to minimise
makespan and the assumptions can be summarized as follows:
– Part details are known exactly.
– There is more than one machine with the same or different characteristics.
– At least one of the machines has the capability of fabricating the part with the
maximum width/length/height.
– Any number of machines can be operated simultaneously.
– There is no restriction between any two parts to be produced in the same job.
– The building orientation of parts is known.
– All parts are made of the same material.
– No part can be removed until the job is completed.
The following section presents the solution method used for numerical problems.
174 I. Kucukkoc
4 Solution Methodology
Fig. 3 Decoding procedure applied to evaluate chromosomes (AP denotes available parts)
selected part can be placed in the current job on the current machine. It ensures that
the parts assigned to a job on a specific machine can be placed on the corresponding
machine’s platform with no overlap. More details on the search mechanisms of the
algorithm can be found in Kucukkoc et al. [21].
176 I. Kucukkoc
5 Numerical Examples
®
The algorithm has been coded in JAVA and run on Intel Core™ i7-6700HQ CPU
@2.60 GHz with 16 GB of RAM. Each problem has been solved three times and the
best result is reported. Two different problems are constituted by different number of
parts and machines. Two types of machines are considered and their details are given
in Table 1. Parts data have been provided in Appendix (retrieved from [21]). The
population size, crossover rate and mutation rate are 30, 0.6 and 0.1, respectively.
The algorithm was terminated when there is no improvement within 3000 iterations.
The values of these parameters have been determined through some preliminary
tests.
The first problem aims to schedule a total of 18 parts on two machines (one from
type M1 and one from type M2). The parts range considered in this problem is
P1-P18 (see Appendix). The total area of the parts is 2616.6 cm2 .
Figure 4 shows the solution obtained when the problem has been solved with the
aim of minimizing makespan. As can be seen from this, the makespan is 507.33 h
and the total area allocated is 4375 cm2 . Figure 5 presents another solution, which
requires one fewer (six) jobs, for the same problem. The makespan for this solution
is 627.07 h and the total area utilized is 3750 cm2 . When the two alternative
solutions are compared, it is obvious that the area utilization of the second solution
is higher (69.77% versus 59.80%). However, the makespan of the first solution is
much lower than that of the second solution.
Fig. 4 The first alternative solution for problem-1 (507.33 h, 4375 cm2 )
Metal Additive Manufacturing: Nesting vs. Scheduling 177
Fig. 5 The second alternative solution for problem-1 (627.07 h, 3750 cm2 )
Fig. 6 The first alternative solution for problem-2 (653.31 h, 5625 cm2 )
The second problem involves 24 parts (ranging between P17 and P40, see
Appendix) and 4 machines (2xM1 and 2xM2). Note that in the algorithm the parts
have been re-numerated starting from 1. The total area of the parts is 4066.6 cm2 .
The two alternative solutions obtained for this problem using GA are given in Figs.
6 and 7. A total of 9 jobs have been utilized in the first solution, with performance
measures of 653.31 h makespan and 5625 cm2 total area utilized. The second
alternative solution requires two more (i.e., 11) jobs and the makespan is 636.06 h
while the total utilized area is 6875 cm2 . As clearly seen from these results, the
second solution requires a greater number of jobs and so total area (22% larger than
the first solution). However, the makespan of the second solution is lower than the
makespan of the first solution.
The results of these two problems indicate that the minimization of the total
number of jobs (or total area required) does not always correspond to the mini-
mization of the makespan. Therefore, nesting problem needs to be considered in
178 I. Kucukkoc
Fig. 7 The second alternative solution for problem-2 (636.06 h, 6875 cm2 )
A.1 Appendix
References
1. Attaran, M.: The rise of 3-D printing: the advantages of additive manufacturing over traditional
manufacturing. Bus. Horiz. 60(5), 677–688 (2017)
2. Ngo, T.D., Kashani, A., Imbalzano, G., Nguyen, K.T.Q., Hui, D.: Additive manufacturing (3D
printing): a review of materials, methods, applications and challenges. Compos. Part B. 143,
172–196 (2018)
3. Kucukkoc, I.: MILP models to minimise makespan in additive manufacturing machine
scheduling problems. Comput. Oper. Res. 105, 58–67 (2019)
4. Ford, S., Despeisse, M.: Additive manufacturing and sustainability: an exploratory study of the
advantages and challenges. J. Clean. Prod. 137, 1573–1587 (2016)
5. Kucukkoc, I., Li, Q., Zhang, D. Z.: Increasing the utilisation of additive manufacturing and 3D
printing machines considering order delivery times. In: 19th International Working Seminar on
Production Economics, February 22–26, Innsbruck, Austria (2016)
6. Cooper, D.E., Stanford, M., Kibble, K.A., Gibbons, G.J.: Additive manufacturing for product
improvement at Red Bull Technology. Mater. Des. 41, 226–230 (2012)
7. Javaid, M., Haleem, A.: Additive manufacturing applications in orthopaedics: a review. J. Clin.
Orthop. Trauma. 9(3), 202–206 (2018)
8. Khajavi, S.H., Partanen, J., Holmström, J.: Additive manufacturing in the spare parts supply
chain. Comput. Ind. 65(1), 50–63 (2014)
9. Li, Z., Zhang, D.Z., Dong, P., Kucukkoc, I., Peikang, B.: Incorporating draw constraint in the
lightweight and self-supporting optimisation process for selective laser melting. Int. J. Adv.
Manuf. Technol. 98(1), 405–412 (2018)
10. Li, Z., Xu, R., Zhang, Z., Kucukkoc, I.: The influence of scan length on fabricating thin-walled
components in selective laser melting. Int. J. Mach. Tools Manuf. 126, 1–12 (2018)
11. Camacho, D.D., Clayton, P., O’Brien, W.J., Seepersad, C., Juenger, M., Ferron, R., Salamone,
S.: Applications of additive manufacturing in the construction industry—a forward-looking
review. Autom. Constr. 89, 110–119 (2018)
12. Frazier, W.E.: Metal additive manufacturing: a review. J. Mater. Eng. Perform. 23(6), 1917–
1928 (2014)
13. Li, Q., Kucukkoc, I., Zhang, D.Z.: Production planning in additive manufacturing and 3D
printing. Comput. Oper. Res. 83, 157–172 (2017)
14. Kucukkoc, I., Li, Q., He, N., Zhang, D.: Scheduling of multiple additive manufacturing and 3D
printing machines to minimise maximum lateness. In: 20th International Working Seminar on
Production Economics, February 19–23, Innsbruck, Austria (2018)
15. Chergui, A., Hadj-Hamou, K., Vignat, F.: Production scheduling and nesting in additive
manufacturing. Comput. Ind. Eng. 126, 292–301 (2018)
16. Zhang, Y., Gupta, R.K., Bernard, A.: Two-dimensional placement optimization for multi-parts
production in additive manufacturing. Robot. Comput. Integr. Manuf. 38, 102–117 (2016)
17. Che, Y., Hu, K., Zhang, Z., Lim, A.: Machine scheduling with orientation selection and two-
dimensional packing for additive manufacturing. Comput. Oper. Res. 130, 105245 (2021)
18. Aloui, A., Hadj-Hamou, K.: A heuristic approach for a scheduling problem in additive
manufacturing under technological constraints. Comput. Ind. Eng. 154, 107115 (2021)
19. Oh, Y., Witherell, P., Lu, Y., Sprock, T.: Nesting and scheduling problems for additive
manufacturing: a taxonomy and review. Addit. Manuf. 36, 101492 (2020)
20. Lee, C.K.H.: A review of applications of genetic algorithms in operations management. Eng.
Appl. Artif. Intell. 76, 1–12 (2018)
21. Kucukkoc, I., Li, Z., Li, Q.: 2D nesting and scheduling in metal additive manufacturing. In:
The International Conference of Production Research, ICPR—Americas 2020, 9–11 December
2020, Bahia Blanca, Argentina (2020)
22. Li, Z., Kucukkoc, I., Zhang, D.Z., Liu, F.: Optimising the process parameters of selective laser
melting for the fabrication of Ti6Al4V alloy. Rapid Prototyp. J. 24(1), 150–159 (2018)
System and Methods for
Blockchain-Inspired Digital Game Asset
Management
Gianluca Ragnoni
G. Ragnoni ()
IGT, Rome, Italy
e-mail: [email protected]
© The Author(s), under exclusive license to Springer Nature Switzerland AG 2021 181
A. Masone et al. (eds.), Optimization and Data Science: Trends and Applications,
AIRO Springer Series 6, https://doi.org/10.1007/978-3-030-86286-2_14
182 G. Ragnoni
touchpoints (e.g. mobile devices, self stations, etc.). In addition, mixed paper-digital
services have already been provided enabling customers to participate to a digital
lottery starting from a paper.
With the aim to have a full in-store digital experience the main challenge is
related to provide the ability to manage digital tickets maintaining:
• The gaming model currently in place, where customers are not obliged to open
game account to participate to the Lottery;
• The advanced security and anti-tampering measures integrated on the paper
tickets.
Exploiting some features of the emerging Blockchain model [2, 3], IGT designed
and developed a proprietary digital asset management solution called Transaction
Certification Authority (TCA) for digital ticket management.
TCA is a fully managed ledger database that provides a transparent, immutable
and cryptographically verifiable platform for managing the creation of digital assets
and the transfer of assets’ ownership between users. With TCA, the transaction’s
change history is immutable, it cannot be altered or deleted, using cryptography,
and the client can easily verify that there have been no unintended modifications to
asset’s ownership.
The article is structured as follows: in Sect. 2 the TCA systems are described
in terms of Scenario, Actors and Concept and Transactions available; in Sect. 3,
the security requirements addressed by project referring to security standards are
summarized; Sect. 4 is devoted to conclusions.
2 TCA
In this section the TCA systems are described in terms of Scenario, Actors and
Concept and Transactions available.
The first subsection describes the main use case introducing a logical model to
address the business requirements, the second subsection details the model of the
project in terms of actors of the system, actions (or transaction) that each actor can
do, rules of the actions, finally the type of transactions available in the system are
explained using interaction diagrams.
2.1 Scenario
ISSUER A A B B C
Fig. 1 Scenario A
ISSUER A A B B C
Fig. 2 Scenario B
ISSUER A A B B C
Fig. 3 Scenario C
By means of TCA a client with a specific clearance can register an asset on TCA;
after registration users can transfer assets each other.
The TCA allows implicit agreement or explicit agreement when a new owner
receives a digital asset: if the agreement is implicit (explained in the example in
Fig. 1) when a digital asset is transferred to him, he automatically becomes the new
owner, instead if the agreement is explicit (explained in the examples in Figs. 2 and
3) he may confirm or deny (rollback) the transfer.
184 G. Ragnoni
2.3 Transactions
Each block hash is also timestamped with a signature provided by CA. This
feature guarantees the immutability via an external trusted third party entity.
Examples:
• Scenario A: in Fig. 1, control transaction disabled (implicit agreement). Only
operational transaction. The final owner of the digital asset is C.
• Scenario B: in Fig. 2, control transaction enabled (explicit agreement), with
confirm transactions. The final owner of the digital asset is C.
• Scenario C: in Fig. 3, control transaction enabled (explicit agreement), with
confirm and rollback transactions. The final owner of the digital asset is B.
Figure 4 depicts a sequence diagram showing the message flow of Genesis
Transaction with implicit non-repudiation. Genesis Transaction has three actors:
a customer (Customer1) requiring an asset generation from an authorized issuer
(Issuer) that generates the asset, the TCA as a digital notary to guarantee issuing,
transfer and ownership of the digital asset.
In message #1 Customer1 requires asset issuing to the Issuer, specifying his
public key as the destination for the asset.
In message #2 Issuer creates a digital asset (DA) and creates a message (MSG)
contains DA, the origin of DA (or the source) inserting his public key and the
destination of the asset using the public key received from the Customer1.
In message #3 Issuer signs MSG with his private key (DS Issuer).
In message #4 Issuer sends MSG and DS Issuer to the TCA.
In message #5 TCA does a set of checks as for example if the Issuer is authorized
to issue the asset, if asset is new and it is well formed syntactically etc . . . If checks
are positive, TCA signs MSG (DS TCA), creates a new transaction with MSG,
DS Issuer and DS TCA and saves the transaction in the Public Transaction Ledger
(PTL).
(or DESTINATION) represents by the public key of the Customer2, the message
signatures made by the Customer1 and by the TCA.
3 Security Features
4 Conclusion
In the gaming context, TCA platform can enable ticket receipt dematerialization
inside the retail store with a seamless integration with current ecosystem providing
a “Phygital” (physical and digital) experience for the user that can have a digital
version of ticket receipt (the asset) in their mobile device, with the same security
features of the physical one.
Moreover TCA, can play the role of “layer 2 infrastructure” integrating itself
with a public blockchain infrastructure. In fact, since 2017, public blockchain infras-
tructures have been evolved and nowadays, although there are a lot of blockchain
188 G. Ragnoni
References
1. The World Lottery Summit 2018—Jean Jorgensen Merit Award for Innovation—“Lottomatica
Lottery Ticket Digitalization Based on Blockchain Model”
2. Bitcoin: A Peer-to-Peer Electronic Cash System—Satoshi Nakamoto. https://bitcoin.org/
bitcoin.pdf
3. Blockchain Series (MOOC)—University at Buffalo School of Engineering and Applied Sci-
ences. https://www.coursera.org/learn/blockchain-basics
4. ISO/IEC 27000:2018. ISO/IEC 27000:2018. https://www.iso.org/standard/73906.html (2018)
5. Committee on National Security Systems. National Information Assurance (IA) Glossary, CNSS
Instruction No. 4009, 26 Apr 2010. https://www.hsdl.org/?view&did=7447
6. ISACA. Information Systems Audit and Control Association. http://www.isaca.org/Knowledge-
Center/Documents/Glossary/glossary.pdf (2021)
7. 102 blockchain leaders share their insights into the use of blockchain both now and into the
future. Taken from https://zage.io/report/pdf/blockchain-102.pdf
8. Ragnoni, G., Martire, E., Battini, F.: Systems and methods for blockchain-based digital lottery
ticket generation and distribution. USPTO, Application Number 15/916,620—Filing date 9 Mar
2018. https://patents.google.com/patent/US10931457B2