0% found this document useful (0 votes)
45 views101 pages

Engineering Applications of Social Welfare Functions: Francisco Munoz Ashutosh Nayak Seokcheon Lee

This document provides an introduction to and overview of three chapters from the book "Engineering Applications of Social Welfare Functions". The chapters discuss: 1) Using social welfare functions to optimize energy usage for routing data in wireless sensor networks. This improves network lifetime. 2) Applying social welfare functions to ambulance dispatching algorithms to maximize preparedness for emergency calls across regions served. This enhances robustness. 3) Introducing a unified framework for dynamic resource allocation problems using social welfare functions, originally developed in economics, which consider both individual and collective outcomes.
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
45 views101 pages

Engineering Applications of Social Welfare Functions: Francisco Munoz Ashutosh Nayak Seokcheon Lee

This document provides an introduction to and overview of three chapters from the book "Engineering Applications of Social Welfare Functions". The chapters discuss: 1) Using social welfare functions to optimize energy usage for routing data in wireless sensor networks. This improves network lifetime. 2) Applying social welfare functions to ambulance dispatching algorithms to maximize preparedness for emergency calls across regions served. This enhances robustness. 3) Introducing a unified framework for dynamic resource allocation problems using social welfare functions, originally developed in economics, which consider both individual and collective outcomes.
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 101

Automation, Collaboration,

& E-Services

Francisco Munoz
Ashutosh Nayak
Seokcheon Lee

Engineering
Applications
of Social Welfare
Functions
Generic Framework of Dynamic
Resource Allocation
Automation, Collaboration, & E-Services

Volume 13

Series Editor
Shimon Y. Nof, PRISM Center, Grissom Hall, Purdue University, West Lafayette,
IN, USA
The Automation, Collaboration, & E-Services series (ACES) publishes new develop-
ments and advances in the fields of Automation, collaboration and e-services; rapidly
and informally but with a high quality. It captures the scientific and engineering
theories and techniques addressing challenges of the megatrends of automation, and
collaboration. These trends, defining the scope of the ACES Series, are evident with
wireless communication, Internetworking, multi-agent systems, sensor networks,
cyber-physical collaborative systems, interactive-collaborative devices, and social
robotics – all enabled by collaborative e-Services. Within the scope of the series are
monographs, lecture notes, selected contributions from specialized conferences and
workshops.
Francisco Munoz · Ashutosh Nayak ·
Seokcheon Lee

Engineering Applications
of Social Welfare Functions
Generic Framework of Dynamic Resource
Allocation
Francisco Munoz Ashutosh Nayak
School of Civil and Industrial Engineering Data Intelligence Lab
Pontificia Universidad Javeriana Cali Samsung Research Institute Bangalore
Cali, Colombia Bangalore, India

Seokcheon Lee
School of Industrial Engineering
Purdue University
West Lafayette, IN, USA

ISSN 2193-472X ISSN 2193-4738 (electronic)


Automation, Collaboration, & E-Services
ISBN 978-3-031-20544-6 ISBN 978-3-031-20545-3 (eBook)
https://doi.org/10.1007/978-3-031-20545-3

© The Editor(s) (if applicable) and The Author(s), under exclusive license to Springer Nature
Switzerland AG 2023
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 introduces a unified framework for (dynamic) resource allocation prob-
lems prevalent in various engineering applications. Resource allocation decisions
are usually made locally based on certain attributes of decision alternatives at hand.
Such distributed decisions, however, often lead to systemwide performance defi-
ciency and instability problems. On the other hand, if we can make “socialized”
decisions by measuring the impact of local decisions on the broader society of
the system, it can potentially lead to globally coordinated behavior. Social welfare
functions can embody the socialized decisions, which are originally used to quan-
tify income welfare, jointly considering average and inequality to arrive at better
measures of welfare than average alone. They are individualistic (only depends on
individual incomes), symmetric (not affected if two individuals switch incomes),
Paretian (increasing in individual income levels), and inequality-averse (decreasing
in inequality).
We applied social welfare functions in various dynamic resource allocation prob-
lems and one important observation was that “global” balance and welfare emerge
from “local” welfare-maximizing behaviors, enhancing robustness and preparedness
of the entire system for the future tasks and events. The applications include data
routing in wireless sensor networks, task allocation in multi-robot systems, group
preference modeling in intelligent shared environments, ambulance dispatching
in emergency medical services, and resource sharing in cyber-physical systems.
This book shares success stories wishing the readers to find opportunities for their
problems of interest.

West Lafayette, USA Francisco Munoz


Indiana, USA Ashutosh Nayak
Summer 2021 Seokcheon Lee

v
About This Book

Social welfare functions are used to quantify income welfare in social sciences. This
book introduces social welfare functions from economics to engineering domains, as
a unified solution framework for various dynamic resource allocation problems. This
book provides a single source introduction to key engineering applications of social
welfare functions, which will be useful for supplemental instruction materials or for
addressing challenging research questions in both academia and industry. This book
is self-contained and no prior background on social welfare or application domains
is assumed.

vii
Contents

1 Introduction to Engineering Applications of Social Welfare


Functions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1
1.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1
1.1.1 Social Welfare Functions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1
1.1.2 Implications of Social Welfare Functions in Engineering
Applications . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
References . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
2 Routing in Wireless Sensor Networks—Energy Welfare . . . . . . . . . . . . . 5
2.1 Introduction to Wireless Sensor Networks . . . . . . . . . . . . . . . . . . . . . . . 5
2.1.1 Centralized and Distributed Approaches for Data Routing . . . 7
2.1.2 Energy-Efficiency, Energy-Balance, and Network
Lifetime . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
2.2 The MaxEW Algorithm . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
2.2.1 MaxEW Routing Decisions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
2.2.2 MaxEW Algorithm in Detail . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
2.3 Performance Evaluation of the MaxEW Algorithm . . . . . . . . . . . . . . . 16
2.3.1 Lifetime Analysis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18
2.3.2 Robustness to Event Generation Patterns . . . . . . . . . . . . . . . . . 19
2.3.3 Effect of the Neighbor Communication Range
in MaxEW Algorithm . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
2.4 Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22
References . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24
3 Ambulance Dispatching—Preparedness Welfare . . . . . . . . . . . . . . . . . . . 25
3.1 Introduction to Emergency Medical Services (EMS)
and Ambulance Dispatching . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25
3.2 Preparedness-Based Ambulance Dispatching Algorithm . . . . . . . . . . . 29
3.3 Improving Robustness of Composite Algorithm with Social
Welfare Functions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36
3.4 Performance of Composite Algorithm with Social Welfare
Functions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38

ix
x Contents

3.5 Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39
References . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41
4 Group Decision Making in Intelligent Shared
Environments—Preference Welfare . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43
4.1 Introduction to Intelligent Shared Environments . . . . . . . . . . . . . . . . . 43
4.2 Social Welfare as an Aggregate Function . . . . . . . . . . . . . . . . . . . . . . . . 46
4.2.1 Metrics of Distance Measure on Orders . . . . . . . . . . . . . . . . . . 47
4.2.2 Alternative Social Welfare Functions . . . . . . . . . . . . . . . . . . . . . 49
4.2.3 The Masthoff’s Experiment . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50
4.2.4 Incorporation of Social Influence . . . . . . . . . . . . . . . . . . . . . . . . 51
4.3 Performance of Social Welfare as Aggregate Functions . . . . . . . . . . . 51
4.4 Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53
References . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54
5 Task Allocation in Multi-robot Systems—Resource Welfare . . . . . . . . . 55
5.1 Introduction to Multi-robot Systems . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55
5.2 Task Allocation Using a Social Welfare Function . . . . . . . . . . . . . . . . . 56
5.2.1 Resource Welfare . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56
5.2.2 Welfare-Based Algorithm . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57
5.3 Performance of the Welfare-Based Algorithm . . . . . . . . . . . . . . . . . . . 60
5.3.1 Simulated Experiment #1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61
5.3.2 Simulated Experiment #2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 64
5.4 Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 65
References . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 67
6 Resource Sharing in Cyber-Physical Systems—Utility Welfare . . . . . . . 69
6.1 Introduction to Resource Sharing-Based Framework (RSBF) . . . . . . 69
6.1.1 Fundamentals of RSBF . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 70
6.1.2 Utility Functions in RSBF . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71
6.1.3 Coordination Among Local Coordinators . . . . . . . . . . . . . . . . . 72
6.2 Application of RSBF to Flexible Job Shop Scheduling in Smart
Factories . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73
6.2.1 RSBF Framework to Solve the FJSP in Smart Factories . . . . . 75
6.2.2 Steps to Implement RSBF to Solve the FJSP . . . . . . . . . . . . . . 75
6.2.3 Performance of RSBF Application to the FJSP . . . . . . . . . . . . 78
6.3 Application of RSBF to Other Cyber-Physical Systems . . . . . . . . . . . 79
6.3.1 Optimal Energy Distribution Through a Smart Grid . . . . . . . . 79
6.3.2 Optimal Information Routing in Resource-Constraint
Multi-Robot Systems . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 80
6.4 Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 81
References . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 83
Contents xi

7 Conclusion, Limitations, and Research Opportunities . . . . . . . . . . . . . . . 85


7.1 Conclusion and Discussion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 85
7.2 Limitation and Challenges . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 86
7.3 Research Opportunities in Emerging Applications . . . . . . . . . . . . . . . . 88
7.3.1 Production Scheduling . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 88
7.3.2 Foodbank Operation Guidance . . . . . . . . . . . . . . . . . . . . . . . . . . 89
7.3.3 Multi-Robot Navigation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 90
References . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 92

Index . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 93
Chapter 1
Introduction to Engineering Applications
of Social Welfare Functions

1.1 Introduction

Dynamic resource allocation problems are prevalent in various automation and e-


service systems. We have introduced the notion of social welfare from economics
as a general principle to dynamic resource allocation problems in various domains
(Fig. 1.1). The resource allocation technologies driven by the social welfare enable
automation systems to achieve desirable performance of the system while at the same
time supporting real time decisions and control.
The book introduces the social welfare as a unified multidisciplinary framework
for various dynamic resource allocation problems and presents ways of applying them
to (engineered) automation and e-service systems such as data routing in wireless
sensor networks, task allocation in multi-robot systems, group preference modeling
in intelligent shared environments, ambulance dispatching in emergency medical
services, and resource sharing in cyber physical systems.
The book starts with the introduction of social welfare functions and their impli-
cations to engineering applications. We will then present research results in five
engineering applications. Finally, we will discuss limitations and challenges with the
social welfare methodology and provide research suggestions for several (emerging)
engineering applications.

1.1.1 Social Welfare Functions

Social welfare functions are used in economics for quantification and comparison of
income welfare in space and time. Average is still the most widely used welfare func-
tion despite its well-known shortcomings. However, a broad range of philosophical
approaches suggest that high inequality reduces aggregate welfare. We present three
well-known social welfare functions that jointly consider average and inequality,
which will be used throughout the book. Sen welfare function [1], P(1 − I G ), has

© The Author(s), under exclusive license to Springer Nature Switzerland AG 2023 1


F. Munoz et al., Engineering Applications of Social Welfare Functions, Automation,
Collaboration, & E-Services 13,
https://doi.org/10.1007/978-3-031-20545-3_1
2 1 Introduction to Engineering Applications of Social Welfare Functions

Income Welfare - Wireless sensor network Emergency logistics


Economics Energy Preparedness
welfare welfare
Intelligent environment Multi-robot task allocation
Preference Resource
welfare welfare
Cyber physical systems Production scheduling
Utility Workload
welfare welfare
Foodbank operation Multi-robot navigation
Individualistic, symmetric, Nutrition Congestion
Paretian, inequality-averse welfare welfare

Fig. 1.1 Engineering application of social welfare functions

a simple form of weighting the average P by Gini index I G . The Gini index [2] is
one of the most commonly used indicators of income inequality. It is derived from
Lorenz curve (Fig. 1.2), which plots the cumulative proportion of income earned by
the people ranked from bottom to top. In perfect equality the Lorenz curve follows
45° line. As the degree of inequality increases, the area between the curve and 45°
line becomes larger. If the area be-tween the curve and 45° line is A, and the whole
area below 45° line is B, then the Gini index is computed as A/(A + B). Dagum
welfare function [3], P(1 − I G )/(1 + I G ), imposes more penalty for inequality on the
Sen welfare function by the denominator.
Replacing Gini index with the Atkinson index [4] in Sen welfare function gives
the Atkinson welfare function [5]. The general form of Atkinson index is presented

Fig. 1.2 Lorenz curve


1.1 Introduction 3

in Eq. 1.1, where ε is the so-called inequality aversion parameter and n number of
people.
    1−ε
1

1  Pi 1−ε
I A(ε) =1− (1.1)
n i P

The parameter ε reflects the strength of society’s penalty for inequality and can
take values ranging from zero to infinity. When ε equals to zero, there is no penalty
for inequality. As ε rises, society has more penalties for inequality. Note that when ε
= 1, the general form of the Atkinson welfare function is not defined and the function
is transformed into Eq. 1.2.
1 
n ln Pi
e i (1.2)

Typically used values of ε include 1, 1.5, 2, and 2.5 [6–8]. It is also possible to
drive other welfare functions by replacing inequality indices with Robin Hood index
[9] or Theil’s entropy [10].
Social welfare functions in general possess several desirable properties, including
individualistic (only depends on individual incomes), symmetric (not affected if two
individuals switch incomes), Paretian (increasing in individual income levels), and
inequality-averse (decreasing in inequality).

1.1.2 Implications of Social Welfare Functions


in Engineering Applications

Dynamic resource allocation problems pursue system-wise performance goals


through dynamic decisions over a population of certain type of entities. The decisions
can be made locally or globally depending on the characteristics of the system. Social
welfare functions can be used to support such a decision-making process enabling to
aggregate distributed performance metrics of individual entities resulting from each
decision alternative and choose the alternative maximizing the social welfare.
We present three implications of social welfare functions when applied in engi-
neering applications. First, the “law of diminishing marginal utility” states that the
more of a product one has, the less utility one receives from an additional unit of the
product. This nonlinear utility curve leads to the inequality-averse behavior when
trying to maximize aggregate utility of a society. It in turn indicates that combining
both average and inequality will be useful or necessary when aggregating individual
utilities of entities in an engineering application—either humans or artifacts.
Second, when entities of a society are evenly situated, for example in resource-
fulness or workload, the society can be considered well prepared or robust for future
tasks or events—as opposed to the society with a large gap between the rich and
4 1 Introduction to Engineering Applications of Social Welfare Functions

the poor. Lastly, when individual groups of entities try to maximize their own local
welfare and the groups overlap (dynamically over time), the entire entities become
connected to each other through the inequality-averse behavior, giving rise to global
balancing and global welfare. Such an emergent property is useful for effectively
controlling large-scale systems without any central coordination.

References

1. Sen AK (1982) Choice, welfare and measurement. Basil Blackwell, Oxford


2. Gini, C. (1912). Variabilità e mutabilità. Studi Economico-Giuridici, vol 3, no 2, pp 1–158
3. Dagum C (1990) On the relationship between income inequality measures and social welfare
functions. J Econ 43(1–2):91–102
4. Atkinson AB (1970) On the measurement of inequality. J Econ Theory 2(3):244–263
5. Sen A, Sen MA, Amartya S, Foster JE, Foster JE (1997) On economic inequality. Oxford
university press
6. Williamson JG (1977) “Strategic” wage goods, prices, and inequality. Am Econ Rev 67(2):29–
41
7. Seiver DA (1979) A note on the measurement of income inequality with interval data. Rev
Income Wealth 25(2):229–233
8. Grün C, Klasen S (2008) Growth, inequality and well-being: comparisons across space and
time. Oxf Econ Pap 60(2):212–236
9. Atkinson AB, Micklewright J, Micklewright M (1992) Economic transformation in Eastern
Europe and the distribution of income. Cambridge University Press
10. Theil H (1967) Economics and information theory. Amsterdam, North Holland
Chapter 2
Routing in Wireless Sensor
Networks—Energy Welfare

2.1 Introduction to Wireless Sensor Networks

Advances in communications hardware technology have allowed the development of


small low-cost wireless sensors with the ability to capture, process and transmit data.
These devices solve the problem of environmental monitoring in areas that involve
high-risk or that are difficult to access. In such cases, these tiny wireless sensors
could be randomly deployed over a region of interest to build a communication
network that allows reporting local data to a base station. Wireless sensor networks
are being used on a wide range of areas, including military, healthcare, surveillance,
and commercial applications [1].
Implementation of wireless sensor networks faces two key challenges: battery
life management and limited knowledge of network topology. Each wireless sensor
is endowed with a fixed amount of energy determined by its battery, and energy is
mainly consumed when data are transmitted from the sensor. Power required for
transmission is geometrically proportional to the distance of the receptor, and a
simplifying assumption for energy consumption E as a function of distance d of the
receptor is E = d 2 [2]. Therefore, data routing decisions on wireless sensor networks
directly determine the lifetime of the whole system. On the other hand, network
topology is usually unknown because wireless sensors do not have the ability to
report their location and they could move, deplete their battery or fail over time. This
dynamic network topology implies that a distributed control approach is preferred
in the design of algorithms for routing decisions on wireless sensor networks [3].
Given the geometric proportion between power and transmission distance, instead
of transmitting data directly to the base station, each wireless sensor could transmit
its data packet to another sensor in the neighborhood which in turn forwards the
packet to another sensor on the network, and so on, until data finally reach the base
station. Transmitting data through the network could be more energy-efficient than
communicating directly to the base station. Figure 2.1 illustrates the concept of data
relay among sensors deployed in an area of interest.

© The Author(s), under exclusive license to Springer Nature Switzerland AG 2023 5


F. Munoz et al., Engineering Applications of Social Welfare Functions, Automation,
Collaboration, & E-Services 13,
https://doi.org/10.1007/978-3-031-20545-3_2
6 2 Routing in Wireless Sensor Networks—Energy Welfare

Fig. 2.1 Graphical representation of transmission of data from one sensor to the base station through
a network of wireless sensors

To better illustrate this idea, analyze for example the simplified situation shown
in Fig. 2.2 where sensor A needs to transmit data to base station (S). On this section
of the network, there are two other sensors (B and C) located on a straight line that
could be used as a communication bridge. Distance between sensors A and B is 5
units, between B and C, 7 units, and between C and S, 3 units.
Assuming that energy consumption follows the model E = d 2 , direct communica-
tion from sensor A to base station S (route AS) would require E(AS) = (5 + 7 + 3)2
= 225 energy units. On the other hand, using sensors B and C as a communication
bridge, total energy consumption on route ABCS would be E(ABCS) = (5)2 + (7)2
+ (3)2 = 83 energy units. Table 2.1 summarizes energy requirement for all possible
routes for sensor A. This example demonstrates that routing data on short distances
through sensors B and C is more energy-efficient than transmitting data directly to
base station S.

5 7 3

Sensor A Sensor B Sensor C


Base station (S)

Fig. 2.2 Example of a section of the network assuming three sensors (A, B, C) displayed on a
straight line
2.1 Introduction to Wireless Sensor Networks 7

Table 2.1 Energy requirement (in energy units) of different routes for data transmission from
sensor A to base station S
Route Energy consumption
A B C Total
AS 225 0 0 225
ABS 25 100 0 125
ABCS 25 49 9 83
ACBS 144 1000 49 293
ACS 144 9 153

2.1.1 Centralized and Distributed Approaches for Data


Routing

To explain in more detail the difference between centralized and distributed


approaches for data routing, consider the situation illustrated in Fig. 2.3 for a network
with eight wireless sensors (A to H) where the base station (S) is located on coordi-
nates (10, 10). In this scenario, suppose that sensor B, located on coordinates (2, 1),
needs to transmit data to base station S. Based on sensors’ locations, and assuming
again that energy consumption follows the model E = d 2 , energy requirement for data
transmission between sensors and direct transmission to base station can be calcu-
lated as summarized in Table 2.2. The question here is how to route data through the
network in order to consume the minimum total amount of energy.

10
9 (D) (S)
8 (A)
7 (C)
Coordinate Y

6
5
4 (G)
(H)
3 (F)

2 (B)
1 (E)
0
0 1 2 3 4 5 6 7 8 9 10
Coordinate X

Fig. 2.3 Scenario of a network with eight wireless sensors (A to H) and a base station (S) where
the location of each node can be obtained on the cartesian plane
8 2 Routing in Wireless Sensor Networks—Energy Welfare

Table 2.2 Energy consumption matrix for communication between nodes, from row node to
column node (in energy units)
A B C D E F G H S
A 40 26 18 29 18 4 20 45
B 40 98 106 17 10 20 52 145
C 26 98 8 45 80 34 10 5
D 18 106 8 65 72 34 26 9
E 29 17 45 65 29 13 13 80
F 18 10 80 72 29 50 50 117
G 4 20 34 34 13 10 16 61
H 20 52 10 26 13 50 16 29

In the field of operations research, that problem is called the shortest-path problem
and it can be solved using the well-known Dijkstra’s algorithm. Applying this algo-
rithm to the numerical example yields that route BEHCS is the most energy-efficient,
requiring a total of 45 energy units. However, note that this algorithm implies that
there is a central coordinator for the whole system who has data on sensors’ loca-
tions (network topology) and transmission energy requirements. But in real wireless
sensors applications there is no central entity capable of collecting data from the
whole system to generate such solution and instruct sensors what to do. Therefore, a
distributed control approach is required where each sensor makes routing decisions
based on local information.
Assuming a distributed control approach to solve the same problem illustrated in
Fig. 2.3, the research question is how to route data from sensor B to base station
considering a distributed control framework in which there is no central coordi-
nator. From the perspective of each sensor, the available information to make routing
decisions is the distance to other sensors on the network and to base station. These
distances can be estimated based on the intensity of the received signals during the
initialization of each transmission round.
As a first solution method, consider a simple algorithm based on a “greedy”
approach in which each sensor transmits data to the closest node. The logic of such
method is to reduce energy consumption while avoiding communication with any
sensor used previously on the route. This algorithm might be very inefficient, because
data could be routed potentially through all sensors in the network before reaching
the base station, but it serves as a simple example for a distributed control approach:
sensors make decisions based on local information (shortest distance to other nodes
in this case).
By applying this algorithm to the same example in Fig. 2.3, sensor B would
transmit its data packet to sensor F which is the closest one (10 energy units). Then
sensor F would transmit to sensor G (10 energy units), which communicates with
sensor A (4 energy units). After that, sensor A transmits to sensor D (18 energy
units), which in turn communicates with sensor C (8 energy units), and finally data
reach the base station S (5 energy units). In summary, this greedy algorithm yields
2.1 Introduction to Wireless Sensor Networks 9

10
9 (D) (S)
8 (A)
7 (C)
Coordinate Y

6
5
4 (G)
(H)
3 (F)

2 (B)
1 (E)
0
0 1 2 3 4 5 6 7 8 9 10
Coordinate X

Fig. 2.4 Graphical presentation of optimal transmission route BEHCS (dotted line) obtained by
the Dijkstra’s algorithm on a centralized approach, and route BFGADCS (solid line) obtained with
the simple greedy algorithm on a distributed control approach

the route BFGADCS, consuming 55 energy units in total which is more than the
optimal solution obtained by the Dijkstra’s algorithm (45 energy units). Figure 2.4
presents graphically both solutions.

2.1.2 Energy-Efficiency, Energy-Balance, and Network


Lifetime

At this point, it should be clear that routing algorithms are critical for energy effi-
ciency. However, the important concept of energy balancing has not been discussed
yet. Note that in the previous example, the remaining energy level of sensors was not
considered in making routing decisions.
For instance, suppose that in Fig. 2.3 all sensors have initially 1,000 energy
units remaining in their batteries, except for sensor A which has 2,000 energy units
remaining. If sensor B is the only one that generates data on the network, it could
transmit a maximum of 58 data packets on route BEHCS before sensor B depletes its
battery. On the other hand, sensor B could transmit a maximum of 100 data packets
on route BFGADCS before sensors B and F completely deplete their batteries.
In this numerical example, it is interesting to realize that even when route BEHCS
is the most energy-efficient (obtained by the Dijkstra’s algorithm), route BFGADCS
(obtained by the greedy algorithm) would extend the lifetime of the network by 72%
because it uses the remaining energy in a better way. In fact, a common character-
istic of algorithms that exclusively seek energy efficiency is that they tend to deplete
batteries of sensors located on minimum energy paths very quickly [4]. Hence,
10 2 Routing in Wireless Sensor Networks—Energy Welfare

wireless sensor networks routing algorithms should seek both energy efficiency and
energy balance in order to maximize the lifetime of the whole system.
Another important issue to discuss is the definition of network lifetime. In the
previous example, it was clear that battery depletion of sensor B determines directly
network lifetime because this sensor was supposed to be the only generator of data.
But typically, any sensor could generate data gathered from its environment and
therefore a definition of network lifetime for the whole system is required. When
wireless sensors are synchronized to transmit data on a discrete-time basis (rounds),
network lifetime could be defined as the number of rounds until the first sensor, or a
specified proportion of them, becomes unable to transmit data to any other node on
the network due to battery depletion [3].
In summary, routing algorithms on wireless sensor networks should simulta-
neously pursue energy-efficiency and energy-balancing on a distributed control
approach to maximize network lifetime even in diverse data generation patterns on
the region of interest. This is a challenging endeavor and many routing algorithms
have been proposed to extend the lifetime of wireless sensor networks. The next
section discusses the MaxEW algorithm.

2.2 The MaxEW Algorithm

The MaxEW algorithm to route data on wireless sensor networks on a distributed


control approach was originally published in 2010 [3], and this section provides a
summary of how it works. The special characteristic of this algorithm is that it was
developed based on a social welfare function incorporated into a metric called energy
welfare. In social sciences, a social welfare function compares income in a society
and its value depends on both average and equality of income. The MaxEW algorithm
pursues the maximization of energy welfare when routing data which leads to both
higher energy-efficiency and energy-balance at the same time. The energy welfare
metric EW (t) for a population of n sensors, each one with energy residual E i (t) at
time t, is calculated as shown in Eq. 2.1.
  1−ε
1

1
E W B (t) = E i (t)1−ε (2.1)
n i∈N

Parameter ε in Eq. 2.1 is called the inequality aversion parameter, and inequality
is greater penalized as it increases. Typical values used in practice for this parameter
are 1.5, 2.0, or 2.5 [5].
To illustrate the calculation of energy welfare metric, analyze again the simplified
network presented previously in Fig. 2.3. Suppose that in each round, wireless sensors
are set to communicate with the base station or with other sensors located within
a predetermined distance range. Setting a communication range threshold creates
overlapping societies of sensors that are “neighbors” to each other. For example,
2.2 The MaxEW Algorithm 11

10
9 800 (D) (S)
(A)
500
8
7 (C)
Coordinate Y

6 900
5
4 (G)
(H)
3 (F) 800 800
800
2 900 (B)
1 (E)
0 500
0 1 2 3 4 5 6 7 8 9 10
Coordinate X

Fig. 2.5 Graphical representation of the communication network between sensors when range
threshold is maximum 5 distance units and of the remaining energy (measured in energy units);
note: all sensors can also communicate directly with the base station, but those links are not shown
in the figure

Fig. 2.5 presents graphically the communication network between sensors when
transmission range threshold is set to maximum 5 distance units. Remaining energy
E i (t) of each sensor at moment t (measured in energy units) is also presented next to
each sensor.
For this case, calculation of energy welfare for sensor B should consider the
remaining energy of its society that includes sensors B, E, F, and G (n = 4 nodes in
this society). Assuming an inequality aversion parameter of ε = 1.5, energy welfare
for sensor B yields EW B (t) = 722.96 energy units that was obtained using Eq. 2.1
as follows:
 
1( )
E W B (t) = E B (t)−0.5 + E E (t)−0.5 + E F (t)−0.5 + E G (t)−0.5
4
 
1( ) −2
= 800−0.5 + 500−0.5 + 900−0.5 + 800−0.5 = 722.96
4

2.2.1 MaxEW Routing Decisions

To make routing decisions using the MaxEW algorithm, each sensor i gets the
following data during the initialization of the transmission round: distance to base
station, distance to neighbor sensors, distance from all its neighbor sensors to base
station, and remaining energy of all sensors in its neighborhood. Each sensor will
assume that data could be transmitted in either two ways: directly to base station or
12 2 Routing in Wireless Sensor Networks—Energy Welfare

Table 2.3 Resulting energy welfare for each possible route to transmit data from sensor B
Route Remaining energy at each sensor
B E F G EW
RB 655.0 500.0 900.0 800.0 688.1
RE 771.0 420.0 900.0 800.0 679.1
RF 790.0 500.0 783.0 800.0 698.1
RG 780.0 500.0 900.0 739.0 705.0

indirectly (passing through one of its neighbors). For each possible route, sensors
will evaluate the energy welfare that would be obtained after each decision and they
will finally choose the route that maximizes the energy welfare of their respective
societies.
To illustrate this procedure with an example, consider again the situation presented
in Fig. 2.5. Analyze the case for sensor B that needs to transmit data to base station and
has sensors E, F, and G as neighbors. Therefore, sensor B will evaluate the resulting
energy welfare of its society for four possible routes: energy welfare after directly
transmitting data to base station (RB ), energy welfare after transmission through
sensor E (RE ), after transmission through sensor F (RF ), and after transmission
through sensor G (RG ).
Based on the energy consumption matrix presented in Table 2.2 and energy welfare
(Eq. 2.1) with inequality aversion parameter ε = 1.5, the results of the calculation of
remaining energy in each sensor and energy welfare for each route are summarized
in Table 2.3. In this case, the final decision of sensor B is to transmit data to sensor G
because this route maximizes the energy welfare (705.0 energy units) of its society.
It is important to highlight that sensor B transmits data to sensor G assuming that
G would transmit the data packet directly to the base station. However, when sensor
G receives the data packet, it will assess its routing options based on the resulting
energy welfare of its society. In general, every sensor individually evaluates if it is
better to relay data to one of its neighbors or to communicate directly with the base
station based on energy welfare maximization.
Continuing with the example, sensor G evaluates its routing options based on
energy welfare of its society composed of n = 6 nodes (sensors A, B, E, F, G,
and H). The evaluation of routing options for sensor G based on energy welfare is
summarized in Table 2.4, from which it is decided that sensor G communicates with
sensor H because that route maximizes the energy welfare of its society (740.5 energy
units). This process continues analogously for all sensors on the network, and as a
result, every sensor determines which node to communicate with during that round.
Eventually, data reported by sensor B will reach the base station.
In this example, one of the main features of MaxEW algorithm can be appreciated.
Given that each sensor routes data trying to maximize energy welfare of its local
society, and societies in turn overlap on the network, efficient energy balancing
emerges for the whole system leading to a higher level of preparedness of the network.
2.2 The MaxEW Algorithm 13

Table 2.4 Resulting energy welfare for each possible route to transmit data from sensor G
Route Remaining energy at each sensor
A B E F G H EW
RA 755.0 800.0 500.0 900.0 796.0 800.0 739.7
RB 800.0 655.0 500.0 900.0 780.0 800.0 719.8
RE 800.0 800.0 429.0 900.0 787.0 800.0 718.5
RF 800.0 800.0 500.0 783.0 790.0 800.0 729.8
RG 800.0 800.0 500.0 900.0 739.0 800.0 737.7
RH 800.0 800.0 500.0 900.0 784.0 771.0 740.5

This emergent property increases network’s robustness to different data generation


patterns that could be seen in the region of interest.
Another key property of MaxEW algorithm is that it avoids path loops during
routing decisions when inequality aversion parameter ε is greater than 1 (ε > 1). This
is very desirable because transmitting data in loops would waste sensors’ energy
ineffectively. The mathematic demonstration of this property is presented in detail
in the original paper [3]. The next section summarizes the MaxEW algorithm.

2.2.2 MaxEW Algorithm in Detail

This section formalizes the MaxEW algorithm. Let Ni be the set of sensors in the
society of active sensor i, which includes sensor i and any other active sensor located
within a predetermined distance range, and E i (t) the remaining energy in sensor i at
moment t. Additionally, let r ij be the energy required to transmit data from sensor i to
sensor j, where j /= i and i, j ε Ni. Similarly, let r ii be the energy required to transmit
data directly from sensor i to base station. Also let EW ik be the resulting energy
welfare of society Ni when choosing to route data through node k in any round,
where k ε Ni. Following the original procedure [3], MaxEW routing algorithm for
sensor i at moment t is the following:
14 2 Routing in Wireless Sensor Networks—Energy Welfare

For all k • Ni do
If k = i then
For all j • Ni do
If j = i then
Ej(t+1) = Ej(t) – rjj
Else
Ej(t+1) = Ej(t)
End if
End For
Else
For all j • Ni do
If j = i then
Ej(t+1) = Ej(t) – rjk
Else If j = k then
Ej(t+1) = Ej(t) – rjj
Else
Ej(t+1) = Ej(t)
End if
End For
End If
Compute EWik
End For
Choose K = ArgMax(EWik), where k • Ni, and route data

This algorithm can be easily implemented in any programming language. Here


is an example of how to code the MaxEW algorithm in VBA of Microsoft Excel to
make routing decisions for the situation presented in Fig. 2.5. This program will be
restricted to cases where all sensors have enough energy to communicate directly
with the base station. The first part of the code presented in Fig. 2.6 shows the
declaration of vectors and matrices.
To apply the algorithm to this example, each sensor A to H will be represented
by a number from 1 to 8, respectively. The vector called label(i) will assign the
name “A” to “H” to each sensor. The matrix distance(i, j) will specify the distance
between sensors based on cartesian coordinates, and the special case distance(i, i)

'//Declaration of vectors and matrices


Dim label(1 To 8) As String 'name of each sensor from A to H
Dim energy(1 To 8) As Double 'energy level in this round for each sensor
Dim coordx(1 To 8) As Double 'coordinate X of location of each sensor
Dim coordy(1 To 8) As Double 'coordinate Y of location of each sensor
Dim distance(1 To 8, 1 To 8) As Double 'distance matrix
Dim r(1 To 8, 1 To 8) As Double 'energy consumption matrix
Dim E(1 To 8) As Double 'temporary energy level calculation
Dim comm_network(1 To 8, 1 To 8) As Integer 'communication network
Dim N(1 To 8) As Integer 'number of sensors in society of each sensor
Dim EW(1 To 8) As Double 'temporary energy welfare metric calculation
Dim MaxEW(1 To 8) As Double 'maximum energy welfare metric obtained with MaxEW algorithm
Dim comm_MaxEW(1 To 8) As Integer 'output of MaxEW algorithm: sensor to communicate with

Fig. 2.6 First part of the code in VBA for declaration of vectors and matrices
2.2 The MaxEW Algorithm 15

'//Initialization of parameters:
'Parameter epsilon for energy welfare calculation, maximum communication distance _
allowed between sensors
epsilon = 1.5: maxdistcommrange = 5
'Labels of sensors
label(1) = "A": label(2) = "B": label(3) = "C": label(4) = "D": label(5) = "E"
label(6) = "F": label(7) = "G": label(8) = "H"
'Coordinates of location of sensors and base station
coordx(1) = 4: coordx(2) = 2: coordx(3) = 9: coordx(4) = 7: coordx(5) = 6: coordx(6) = 1
coordx(7) = 4: coordx(8) = 8: coordy(1) = 7: coordy(2) = 1: coordy(3) = 8: coordy(4) = 10
coordy(5) = 2: coordy(6) = 4: coordy(7) = 5: coordy(8) = 5: coordx_bs = 10: coordy_bs = 10
'Remaining energy in each sensor for current transmission round
energy(1) = 800: energy(2) = 800: energy(3) = 900: energy(4) = 500: energy(5) = 500
energy(6) = 900: energy(7) = 800: energy(8) = 800

Fig. 2.7 Second part of the code in VBA for initialization of parameters for the situation presented
in Fig. 2.5

will represent the distance from sensor i to base station. On the other hand, the matrix
comm_network(i, j) will be particularly useful for the program since it will assign a
value of 1 when sensor i can communicate with sensor j, considering a maximum
communication distance range between sensors and the current energy level of sensor
i. Similar to matrix distance(i, j), the special case of comm_network(i, i) will represent
the routing option for sensor i to transmit data directly to base station. Given that
this program will be restricted to cases where all sensors have enough energy to
communicate with the base station during the round, comm_network(i, i) = 1 for all
sensors.
The second part of the code shown in Fig. 2.7 executes the initialization of param-
eters. Following the situation in Fig. 2.5, it will be assumed an inequality aversion
parameter ε = 1.5 which is represented in the program by variable epsilon. The
maximum distance for communication between sensors is 5 distance units and this
value is assigned to variable maxdistcommrange.
The third part of the code is presented in Fig. 2.8, where matrices for distance,
transmission energy requirement, communication network, and number of sensors
in each society are calculated.
The fourth part of the code is presented in Fig. 2.9 and it represents the application
of the MaxEW algorithm described before.
Finally, Fig. 2.10 presents the last part of the code in VBA that creates a visual
report of the final communication decision for each sensor using the MaxEW
algorithm.
When the program is executed, the communication decision for each sensor is
summarized graphically in Fig. 2.11. This program could be modified and extended
to implement the MaxEW algorithm in more complex situations. However, the inten-
tion here is just to present the application of the MaxEW algorithm in a practical
programming language using the same example that has been analyzed throughout
this chapter.
16 2 Routing in Wireless Sensor Networks—Energy Welfare

'//Calculation of other parameters:


'Calculation of distance matrix between sensors and base station and energy requirement _
for transmission
For i = 1 To 8
For j = 1 To 8
If i <> j Then
distance(i, j) = ((coordx(i) - coordx(j)) ^ 2 + _
(coordy(i) - coordy(j)) ^ 2) ^ (0.5)
r(i, j) = distance(i, j) ^ 2
Else
distance(i, i) = ((coordx(i) - coordx_bs) ^ 2 + _
(coordy(i) - coordy_bs) ^ 2) ^ (0.5)
r(i, i) = distance(i, i) ^ 2
End If
Next j
'Make sure that sensor i has enough energy to communicate directly with the _
base station
If r(i, i) >= energy(i) Then
MsgBox ("Alert: sensor " & i & " doesn't have energy to communicate with S.")
Exit Sub
End If
Next i
'Build communication network between sensors
For i = 1 To 8
N(i) = 0: MaxEW(i) = 0
For j = 1 To 8
If i = j Then
comm_network(i, j) = 1
N(i) = N(i) + 1
Else
If distance(i, j) <= maxdistcommrange And r(i, j) < energy(i) Then
comm_network(i, j) = 1
N(i) = N(i) + 1
Else
comm_network(i, j) = 0
End If
End If
Next j
Next i

Fig. 2.8 Third part of the code in VBA where matrices distance(i,j), transmission energy
requirement r(i,j), comm_network(i,j), and vector of number of sensors in each society N(i) are
calculated

2.3 Performance Evaluation of the MaxEW Algorithm

The performance of the MaxEW algorithm was thoroughly investigated in its orig-
inal publication [3] in which four alternative routing algorithms were considered
for the experimental comparison: direct communication (Direct), minimum trans-
mission energy (MTE), self-organized routing (SOR), and a linear programming
model (LP) that maximizes the lifetime of sensor networks. In Direct method, each
sensor simply transmits data directly to the base station. On the other hand, the MTE
method prioritizes energy efficiency by choosing a transmission path with minimum
total energy consumption, ignoring energy balance. The third method for compar-
ison, the SOR algorithm proposed in [2], applies a distributed routing approach in
which each sensor tries to maximize its own lifetime by hiring another sensor as a
mediator. Key advantages of this method is that it tries to simultaneously maximize
2.3 Performance Evaluation of the MaxEW Algorithm 17

'//MaxEW algorithm for each sensor


For i = 1 To 8
For k = 1 To 8
SumE = 0: EW(k) = 0
If comm_network(i, k) = 1 Then
If k = i Then 'When routing directly to base station (k = i)
For j = 1 To 8
If j = i Then
SumE = SumE + (energy(j) - r(j, j)) ^ (1 - epsilon)
Else
If comm_network(i, j) = 1 Then
SumE = SumE + (energy(j)) ^ (1 - epsilon)
End If
End If
Next j
Else 'When routing indirectly to base station through sensor (k <> i)
For j = 1 To 8
If j = i Then
SumE = SumE + (energy(j) - r(j, k)) ^ (1 - epsilon)
Else
If j = k Then
SumE = SumE + (energy(j) - r(j, j)) ^ (1 - epsilon)
Else
If comm_network(i, j) = 1 Then
SumE = SumE + (energy(j)) ^ (1 - epsilon)
End If
End If
End If
Next j
End If
EW(k) = (SumE / N(i)) ^ (1 / (1 - epsilon))
If EW(k) > MaxEW(i) Then
MaxEW(i) = EW(k): comm_MaxEW(i) = k
End If
End If
Next k
Next i

Fig. 2.9 Fourth part of the code in VBA where the MaxEW algorithm is executed for each of the
eight wireless sensors of the network

'//Report results
For i = 1 To 8
If comm_MaxEW(i) = i Then
MsgBox ("Sensor " & label(i) & " with base station and MaxEW = " & MaxEW(i))
Else
MsgBox ("Sensor " & label(i) & " with " & label(comm_MaxEW(i)) & " and MaxEW = " & MaxEW(i))
End If
Next i

Fig. 2.10 Fifth part of the code in VBA that reports the final decision for each sensor according to
MaxEW algorithm

both energy efficiency and balance, and it proved to be robust to network topology
and event generation patterns. Finally, the LP model proposed in [4] determines
optimal transmission paths that maximize the lifetime L 1 of sensor networks: the
time until the first sensor fails due to energy depletion. This LP model provides a
performance bound for the investigated algorithms.
18 2 Routing in Wireless Sensor Networks—Energy Welfare

10
9 800 (D) (S)
(A)
500
8
7 (C)
Coordinate Y

6 900
5
4 (G)
(H)
3 (F) 800 800
800
2 900 (B)
1 (E)
0 500
0 1 2 3 4 5 6 7 8 9 10
Coordinate X

Fig. 2.11 Graphical presentation of communication decisions for each sensor using the MaxEW
algorithm

The theoretical scenario to evaluate the performance of all routing algorithms


included a network of 100 sensors that are randomly deployed over a squared region
of interest with side length equal to 100 m. The base station in the experimental
setting was located 50 m from the square of sensors as shown in Fig. 2.12. In the
experiments, each sensor was initialized with 250,000 energy units so that the farthest
node from the base station could transmit data directly to the base station at least 100
times.
The simulated experiments also considered three different event generation
patterns (uniform, random, and repeated) to assess the robustness of the investi-
gated algorithms. In the random event generation pattern, each sensor would need
to report an event in any round with a probability of 25%. On the other hand, in
the repeated event generation pattern, only the sensors located in one of the bottom
corners of the square (in an area of 50 m by 50 m) would generate repeated events.
For the experiments, the inequality aversion parameter of the MaxEW algorithm
was set at ε = 2.5 and the neighbor communication range at 15 m. In each exper-
iment, the location of each sensor is generated randomly within the square shown
in Fig. 2.12, and for that reason, the experiments were repeated 100 times for each
condition and the average results were reported.

2.3.1 Lifetime Analysis

Figure 2.13 shows the number of active sensors over time for each generation pattern
according to the results of the experiments. For example, Fig. 2.13a shows the perfor-
mance of all the analyzed methods in the uniform event generation pattern. As it can
be appreciated, the MaxEW algorithm outperforms Direct, MTE, and SOR methods
2.3 Performance Evaluation of the MaxEW Algorithm 19

Fig. 2.12 Configuration of


the experimental sensor
network used in [3] to
analyze routing algorithms

until around 60% of sensors become inactive. A similar result can be observed in the
random generation pattern (see Fig. 2.13b). However, in most practical applications
of wireless sensor networks the lifetime L p with p > 50% is not a reasonable lifetime
definition due to the great loss of data from the area under observation. Consequently,
the MaxEW is chosen as the best algorithm in those two generation patterns. Another
interesting observation in those cases is that the performance of MaxEW is very close
to the optimal solution given by the LP method.
On the other hand, in the repeated generation pattern presented in Fig. 2.13c,
the MaxEW algorithm particularly dominates all the other methods for any lifetime
definition. Based on these observations, the MaxEW is superior to the other methods
in terms of lifetime and it highlights the importance of balancing energy consumption
in distributed routing decisions.

2.3.2 Robustness to Event Generation Patterns

In the original publication of the MaxEW algorithm [3], the robustness to event
generation patterns was also investigated. Hence, another set of experiments was
performed in which the lifetime until the first sensor fails due to energy depletion
20 2 Routing in Wireless Sensor Networks—Energy Welfare

Fig. 2.13 Number of active sensors over time in each generation pattern; reprinted from [3] with
permission from Elsevier (5,091,030,821,600)

(L 1 ) was analyzed under different rates in the random generation pattern. Specifically,
generation rates were varied from 5 to 50%. Figure 2.14 summarizes the results of the
experiment, where it can be observed that MaxEW outperforms the other algorithms
regardless of the event generation rate.
Another set of experiments was also performed to analyze the robustness in the
repeated generation pattern. The area for the repeated event generation was modeled
as a circle with a specific radius. The experiments considered different radii from
15 to 45 m. In this case, three measures of lifetime were analyzed: lifetime until the
first sensor fails (L 1 ), lifetime until 10% of sensors fail (L 10 ), and lifetime until 20%
of sensors fail (L 20 ). Table 2.5 summarizes the results of these experiments which
clearly show that the MaxEW algorithm performs significantly better than the other
algorithms regardless of the radius of the area for the repeated event generation.
2.3 Performance Evaluation of the MaxEW Algorithm 21

Fig. 2.14 Lifetime L 1 as a


function of generation rate in
random generation pattern;
reprinted from [3] with
permission from Elsevier (5,
091, 030, 821, 600)

Table 2.5 Lifetime for repeated event generation pattern with different radii; reprinted from [3]
with permission from Elsevier (5, 091, 030, 821, 600)
Routing Lifetime Radius of repeated generation pattern area (meters)
method 15 20 25 30 35 40 45
Direct L1 207.04 187.50 171.68 157.13 143.74 133.63 124.42
L 10 300.33 298.43 258.93 221.90 196.13 173.35 155.21
L 20 – 316.00 340.80 312.27 255.30 218.34 189.68
MTE L1 119.34 73.89 51.39 38.26 30.51 24.71 20.68
L 10 991.68 568.38 356.06 248.24 181.36 137.19 106.70
L 20 1630.34 923.10 631.87 424.03 308.31 233.30 183.32
SOR L1 205.72 127.97 87.5 69.33 58.5 50.06 43.51
L 10 640.56 578.31 448.20 358.16 269.5 205.57 158.67
L 20 702.38 648.26 563.84 471.32 407.19 328.75 254.97
MaxEW L1 2108.75 1716.16 1058.08 856.18 633.80 482.47 372.41
L 10 2200.08 1785.75 1069.33 917.86 675.00 518.03 407.94
L 20 2259.95 1801.04 1073.15 919.05 676.56 519.02 412.62

2.3.3 Effect of the Neighbor Communication Range


in MaxEW Algorithm

In all the previous experiments, communication range in the MaxEW algorithm to


establish neighborhoods was set at 15 m by default. In the original publication [3],
another set of experiments explored the performance of the MaxEW algorithm in the
22 2 Routing in Wireless Sensor Networks—Energy Welfare

Fig. 2.15 Lifetime as a


function of neighbor
communication range in the
MaxEW algorithm; reprinted
from [3] with permission
from Elsevier (5, 091, 030,
821, 600)

uniform event generation pattern in terms of the three lifetime performance measures
analyzed in the previous section (L 1 , L 10 , and L 20 ) and for different communication
ranges (between 10 and 22.5 m). Figure 2.15 summarizes the results of the experi-
ments that show that the performance has a concave shape as a function of communi-
cation range. This result is very significant because it means that there is an optimal
communication range that maximizes the specific lifetime measure considered by
the decision maker of the system. Consequently, this parameter should be carefully
tuned according to the characteristics of the wireless sensor network.
In summary, the MaxEW algorithm demonstrates how a social welfare function
can be successfully applied to the real-time control of communication on a wire-
less sensor network, using a robust distributed control approach, where lifetime
optimization is achieved by emergence behavior.

2.4 Summary

This chapter presented in detail the MaxEW algorithm to route data on wireless
sensor networks. The algorithm was developed based on the application of a social
welfare function to make routing decisions on a distributed control approach, and it
proved to be more efficient in terms of lifetime maximization in comparison with
other routing techniques. The unique properties of the MaxEW algorithm allow to
maximize network lifetime by balancing the remaining energy of sensors over time,
which prevents the early exhaustion of sensors that are used more frequently during
data relay. The experiments performed to analyze its performance demonstrated its
robustness to different event generation patterns and characteristics.
2.4 Summary 23

Throughout the chapter, numerical examples showed the details on how to imple-
ment the MaxEW algorithm. Another key advantage of the algorithm is its high flex-
ibility, for example, the objective to pursue in the system could be easily defined just
by tuning the inequality aversion parameter. Therefore, energy efficiency, balance, or
a combination of both objectives could be easily determined by setting that param-
eter to the appropriate level. As suggested by the performed experiments, the optimal
communication range between sensors must also be set for the specific characteristics
of the application context. By applying the MaxEW algorithm, lifetime maximization
of the network is achieved by emergence of the distributed system.
Chapter Review Questions
Question 1. Briefly discuss the characteristics and differences between centralized
and distributed control in wireless sensor networks. Why is a distributed control
approach required in wireless sensor networks?
Question 2. Explain the main disadvantages of routing algorithms that pursue only
energy-efficiency.
Question 3. For the situation presented in Fig. 2.2:
(a) Calculate energy consumption for all possible routes from sensor A to base
station S if the distance between sensor C and base station S is 10 units instead
of 3 units.
(b) Demonstrate mathematically that for this network setting the route of minimum
total energy consumption will be always ABCS regardless of the distance
between nodes and the base station.
(c) Demonstrate mathematically that the route of maximum total energy consump-
tion will be always direct communication AS independent from distance
parameters.
Question 4. For the situation presented in Fig. 2.3:
(a) Calculate and verify the energy consumption matrix presented in Table 2.2 using
the location coordinates and the quadratic energy consumption model E = d 2 .
(b) Verify that communication on route BEHCS consumes 44.8 energy units in
total.
(c) What would total energy requirement be on route BGDS?
(d) Investigate the Dijkstra’s algorithm and apply it to the problem to verify that
route BEHCS is the most energy-efficient.
Question 5. Based on the situation presented in Fig. 2.3:
(a) Assume that at a given moment all sensors have 1,000 energy units remaining
in their batteries, except for sensor A which has 2,000 energy units remaining.
If sensor B is the only one that generates data on the network, calculate the
maximum number of data packets that could be transmitted on the most energy-
efficient route BEHCS before a sensor depletes its battery.
(b) For the case described in part (a), calculate the maximum number of data packets
that could be transmitted on route BFGADCS before a sensor depletes its battery.
24 2 Routing in Wireless Sensor Networks—Energy Welfare

(c) What can you conclude from this example in terms of energy-efficiency and
energy-balancing?
Question 6. For the situation presented in Fig. 2.5, using an inequality aversion
parameter ε = 1.5:
(a) Calculate the energy welfare metric for neighborhood of sensor A considering
a communication range between sensors of 5 distance units.
(b) Assume now that sensors are set to communicate within a 6 distance-units range.
How would the communication network look like in this case? Draw the new
communication network.
(c) Recalculate energy welfare for neighborhood of sensor B considering the new
communication range of 6 distance units.
Question 7. Calculate and validate all the values presented in Table 2.3 and Table
2.4.
Question 8. For the situation presented in Fig. 2.5, using an inequality aversion
parameter ε = 1.5:
(a) Determine the complete transmission route from sensor B to base station using
the MaxEW algorithm in the current round.
(b) Calculate remaining energy of all sensors after transmitting data from B to the
base station at the end of this round.
Question 9. Code the complete VBA program in Microsoft Excel exactly as it was
presented from Fig. 2.6 to Fig. 2.10 and run the program for the situation presented
in Fig. 2.5.

References

1. Akyildiz IF, Su W, Sankarasubramaniam Y, Cayirci E (2002) A survey on sensor networks.


IEEE Commun. Mag. 40(8):102–114
2. Rogers A, David E, Jennings NR (2005) Self-organized routing for wireless microsensor
networks. IEEE Trans. Syst., Man, Cybern.-Part A: Syst. Hum. 35(3):349–359
3. Ok C, Lee S, Mitra P, Kumara S (2010) Distributed routing in wireless sensor networks using
energy welfare metric. Inf. Sci. 180(9):1656–1670
4. Chang JH, Tassiulas L (2004) Maximum lifetime routing in wireless sensor networks.
IEEE/ACM Trans Netw. 12(4):609–619
5. Seiver DA (1979) A note on the measurement of income inequality with interval data. Rev.
Income Wealth 25(2):229–233
Chapter 3
Ambulance Dispatching—Preparedness
Welfare

3.1 Introduction to Emergency Medical Services (EMS)


and Ambulance Dispatching

The objective of emergency medical services (EMS) is to provide urgent care to


patients out of hospital and transport to healthcare facilities when needed [1]. Ambu-
lances are the fundamental resource in these systems which are strategically posi-
tioned over a specific region to respond quickly to emergency calls. Given the high
uncertainty of timing and location of emergency events, managing EMS systems is
very challenging.
The two most widely used criteria to measure performance of EMS systems are
response time and coverage [2]. Response time is the total time lapse between the
reception of the call and the moment when the ambulance arrives to the emergency
site. Reducing response time is critical to increase the chances of survival when the
patient is seriously injured or sick. For instance, every 1-min reduction in response
time in cases of cardiac arrest increases the survival rate by approximately 10% [3].
On the other hand, coverage refers to the proportion of calls that can be responded
within a predetermined lapse of time. For example, some standards provided by the
United States Emergency Medical Services Act for coverage are the following: 95%
of emergency calls should be met within 10 min in urban areas, and within 30 min
in rural areas [4].
Today, EMS systems are under huge pressure because of increasing demand and
higher expectation for efficiency and quality of service. For example, EMS in the
USA experienced a 62.4% increase in demand per emergency department from 1993
to 2013 [5], as it can be appreciated in Fig. 3.1. On the other hand, disasters are
increasing in both frequency and impact (see Fig. 3.2), affecting 140.8 million people
worldwide in 2014 [6]. And on the economic dimension, healthcare expenses per
capita are growing. For instance, in the USA healthcare expense per capita in real
dollars increased by 194.8% from 1980 to 2013 [5] (see Fig. 3.3). Furthermore, EMS
systems involve a large number of resources and patients which makes logistics
decisions more complex. For example, in the USA alone there are 15,276 EMS

© The Author(s), under exclusive license to Springer Nature Switzerland AG 2023 25


F. Munoz et al., Engineering Applications of Social Welfare Functions, Automation,
Collaboration, & E-Services 13,
https://doi.org/10.1007/978-3-031-20545-3_3
26 3 Ambulance Dispatching—Preparedness Welfare

providers, 48,384 ambulances, and 840,669 EMS personnel [7], and over 4,440
emergency departments and 133.6 M emergency patients annually [5].
In general, there are three different real-time strategies that EMS systems
managers may use to improve performance [8]: ambulance relocation, ambulance
redeployment, and ambulance dispatching. Ambulance relocation refers to reposi-
tioning idle ambulances in real-time to be better prepared to respond to future calls.

Fig. 3.1 Number of emergency departments (ED) and visits to EDs between 1993 and 2013 [5]

Fig. 3.2 Number of reported victims and disasters worldwide between 1990 to 2014 [6]
3.1 Introduction to Emergency Medical Services (EMS) and Ambulance … 27

Fig. 3.3 Healthcare expense per capita in the USA from 1980 to 2013 [5]

The second strategy, ambulance redeployment, refers to sending ambulances to a new


strategic location when they have just finished service in order to improve coverage
of the whole system. Ambulance dispatching is a third strategy that refers to assigning
strategically the ambulance to a call according to the status of the system in real-time.
Previous studies have demonstrated that the performance of static policies for
managing EMS systems is very poor [9]. Three examples of such policies are: estab-
lishing fixed bases over a geographical region where assigned ambulances must
return after service, preassigning geographical areas to ambulances, and dispatching
the closest ambulance to a call. Given the current pressure on EMS systems to be
more efficient, and the availability of higher computational power and real-time data,
new developments for real-time decision-making strategies have been proposed to
enhance performance and increase robustness.
This chapter will focus exclusively on the ambulance dispatching problem for
EMS to deal with life-threatening emergency calls. These calls require immediate
service of an ambulance and they do not allow any form of transportation planning,
in contrast with non-urgent calls. In emergency calls, the most common rule used
in practice is to send the closest ambulance to the emergency location. The intuitive
reason that supports this dispatching policy is that it minimizes the response time
for the current call. However, the response time for future incoming calls might be
compromised if the closest ambulance is currently located in an area with a high rate
of calls. Thus, dispatching the closest ambulance could reduce the preparedness of
a given area to serve future calls [10]. For instance, it would be more beneficial in
some cases to dispatch an ambulance that is currently located in a farther area with a
relatively low call rate in order to increase or maintain the preparedness level of the
whole system.
When comparing the performance of different ambulance dispatching policies
based on response time and coverage, special care must be taken because coverage
28 3 Ambulance Dispatching—Preparedness Welfare

Fig. 3.4 Density and cumulative distribution functions of response time for two dispatching policies
A and B with no stochastic dominance

depends on a predetermined response time threshold. To analyze this issue in detail,


see the example shown in Fig. 3.4 where the probability density function and cumula-
tive distribution function of the response time for two ambulance dispatching policies
(policies A and B) are plotted. In that case, policy B performs better than policy A in
terms of mean response time, because the mean response time of policy B is lower
(13 min versus 15 min in this example). However, the analysis of cumulative distri-
bution functions of both policies shows a less clear picture in terms of coverage. For
example, if the predetermined response time threshold for coverage were 15 min
(for instance, the highest percentage of calls that are responded in less than 15 min),
then policy B would be preferred because its cumulative distribution function is
higher than that of policy A when the threshold is lower than 18 min (see Fig. 3.4).
On the other hand, if the threshold to measure coverage were set at 20 min, then
policy A would be preferred. Therefore, choosing the right dispatching policy in this
case would depend on the response time threshold used to measure coverage, and a
definitive decision between the two policies would not be clear.
This example highlights two important issues for the analysis of performance of
ambulance dispatching policies: (1) the cumulative distribution function of response
time must be analyzed, and (2) stochastic dominance is a desired property of a
dispatching policy. For example, it is clear in Fig. 3.5 that policy B performs better
than policy A since its mean response time is lower, and it stochastically dominates
policy A. Hence, we can be sure that policy B is a better choice regardless of the
response time threshold used for measuring coverage.
This chapter presents in detail an ambulance dispatching algorithm that uses
social welfare functions to maintain or increase the preparedness level of the system
aiming to minimize the average response time in the long-term [11]. The next section
provides an overview of the development of the algorithm.
3.2 Preparedness-Based Ambulance Dispatching Algorithm 29

Fig. 3.5 Density and cumulative distribution functions of response time for two dispatching policies
A and B, where policy B stochastically dominates policy A

3.2 Preparedness-Based Ambulance Dispatching


Algorithm

This section presents the preparedness-based algorithm developed originally in [11].


At its core, the algorithm uses a quantitative measure of preparedness. First, the
whole service area under study is divided into zones. The set of zones is denoted by
Z and each zone j ∈ Z is characterized by its call rate λj . When a dispatching decision
must be made (for example when receiving a call), all available ambulances at that
moment are identified. This set of available (idle) ambulances is denoted by A, and
the travelling time of each ambulance i ∈ A to each zone j ∈ Z is denoted by t ij . With
this notation, the preparedness level zj of a zone j ∈ Z is mathematically defined as
shown in Eq. 3.1:

1  1
zj = (3.1)
λ j i∈A ti j

The mathematical meaning of preparedness is rational since a zone j ∈ Z is more


prepared when more ambulances are available closer to it and its call rate is lower.
To see Eq. 3.1 in a numerical example, Fig. 3.6 shows that at a given moment three
ambulances (A1, A2, A3) are available in an area that comprises 10 zones. The
figure also shows the corresponding call rates and travelling times between zones.
For instance, the preparedness level of zone 4 based on Eq. 3.1 is z4 = (1/13)(1/10
+ 1/12 + 1/19) = 0.0182. On the other hand, preparedness level of zone 9 is z9 =
(1/25)(1/31 + 1/19 + 1/9) = 0.0078. Based on this measure, it can be said that at
that moment zone 4 is better prepared than zone 9 to respond to future emergency
calls.
Based on the quantitative definition of preparedness, an initial preparedness-based
dispatching algorithm would assign the ambulance that maximizes the minimum
preparedness level across all zones [10]. In algorithmic terms, when a call is received,
zone preparedness levels zj (i) are computed for each idle ambulance i ∈ A and for all
30 3 Ambulance Dispatching—Preparedness Welfare

Fig. 3.6 Location of three idle ambulances (A1, A2, A3) in an area with 10 zones and the call rates
and travelling times between zones

zones j ∈ Z by setting ambulance i unavailable (this is the result of dispatching ambu-


lance i). Then, zone preparedness levels that result from dispatching each ambulance
are aggregated into area preparedness denoted by a(i), by taking the minimum of
zone preparedness levels; hence, a(i) = min j∈ Z {zj (i)}. Finally, the ambulance i* that
yields the maximum area preparedness would be dispatched to the call site; therefore,
i* = argmax i∈ A {a(i)}.
To better explain this algorithm in a numerical case, analyze the instance shown in
Fig. 3.7 in which five ambulances (A1 to A5) are available when an emergency call
is received for urgent service in zone 7. Assuming the same call rates and travelling
times presented in Fig. 3.6, the zone preparedness level that is obtained for example
in zone 1 if ambulance A1 is dispatched to serve the incoming call, would be z1 (A1)
= (1/6)(1/32 + 1/15 + 1/10 + 1/2) = 0.1163. The complete calculation of zone
preparedness levels for each zone and for each dispatched ambulance is presented
in Table 3.1. The last column of the table also shows the area preparedness for each
dispatching decision (the minimum value from each row of the table). In this case,
dispatching ambulance A5 yields the maximum area preparedness (area preparedness
equal to 0.0179).
Although dispatching the ambulance that maximizes area preparedness sounds as
a good strategy, such algorithm would still perform worse than the typical closest
ambulance assignment method. The experimental design that proved this issue
considered a service area with the form of a square grid with 25 vertices [11], as
shown in Fig. 3.8, where each vertex represents a zone. Each zone generates emer-
gency calls at a certain rate, and the sum of all zone call rates was fixed at 1 call
per minute. Figure 3.8 shows the call rates for each zone in each of the four inves-
tigated call patterns (uniform, centered, cornered, and bipartite). Ambulances in the
system move from vertex to vertex through edges at a speed of 1 min per edge when
they are dispatched according to a specific policy. When the ambulance arrives at
the emergency zone, service time takes 1 min on average following an exponential
distribution. After service, the ambulance stays at the call site until it is dispatched
to another zone.
3.2 Preparedness-Based Ambulance Dispatching Algorithm 31

Fig. 3.7 Location of five idle ambulances (A1 to A5) in an area with 10 zones when receiving an
emergency call from zone 7

The results of the discrete-event simulation model proposed in [11] to analyze the
preparedness-based algorithm are summarized in Fig. 3.9 for the centered call pattern
in terms of average response time and cumulative proportion of response time. For the
analysis of the algorithm, a travelling time threshold parameter δ was incorporated
to identify idle ambulances that are δ time units from the call site. This way, when an
emergency call is received, only idle ambulances that are located δ time units from
the call site would be considered for dispatching based on area preparedness. If no
ambulance is within δ time units from the call site, then the closest idle ambulance
would be dispatched. For instance, algorithm “preparedness-5” would identify idle
ambulances located δ = 5 time units from the call site to dispatch according to area
preparedness.
The main advantage of including a threshold parameter δ into the preparedness-
based algorithm is that it could be easily used to adapt the dispatching method
to priority dispatching systems. For example, a lower threshold δ could be used for
higher priority emergency calls. Although in this chapter call priority is not analyzed,
threshold δ is proposed as a means of considering priorities into the algorithm in future
research. Also, it is important to notice that when δ = 0, then the preparedness-based
algorithm becomes the closest ambulance dispatching policy.
Based on the results of all call patterns analyzed in [11], it was concluded that the
preparedness-based algorithm performs worse than the closest ambulance assign-
ment method in both measures and in all test conditions. Moreover, it was also
observed that as both threshold δ and number of ambulances increase, performance
32

Table 3.1 Summary of calculation of zone preparedness level and area preparedness for each dispatching decision for the case presented in Fig. 3.7
Dispatched ambulance i Zone preparedness level zj (i) depending on the dispatched ambulance i Zone j Area preparedness a(i)
1 2 3 4 5 6 7 8 9 10
A1 0.1163 0.0394 0.0324 0.0235 0.0381 0.0403 0.0151 0.0344 0.0094 0.0393 0.0094
A2 0.1167 0.0394 0.0339 0.0241 0.0381 0.0406 0.0160 0.0296 0.0254 0.0143 0.0143
A3 0.1108 0.0322 0.0320 0.0233 0.0350 0.0154 0.0156 0.0307 0.0273 0.0426 0.0154
A4 0.1052 0.0311 0.0289 0.0196 0.0156 0.0371 0.0160 0.0324 0.0274 0.0424 0.0156
A5 0.0385 0.0322 0.0283 0.0188 0.0356 0.0395 0.0179 0.0357 0.0281 0.0436 0.0179
3 Ambulance Dispatching—Preparedness Welfare
3.2 Preparedness-Based Ambulance Dispatching Algorithm 33

Fig. 3.8 Call rates for each zone on each of the four call patterns in the experimental design
proposed in [11] to evaluate the performance of ambulance dispatching policies

Fig. 3.9 Results of simulated experiment to analyze performance of preparedness-based algorithm


proposed in [11] for centered called pattern: (a) Average response time, (b) Average cumulative
proportion of response time
34 3 Ambulance Dispatching—Preparedness Welfare

degrades even more. The underlying problem of the strategy is that it focuses only
on increasing the preparedness of the system for future calls while compromising the
response time for the current call. Therefore, an improved policy would combine the
greediness of the closest ambulance assignment method (which aims at minimizing
the response time for the current call) with the preparedness for future calls (that
a preparedness-based dispatching algorithm provides). Such composite algorithm
would then take advantage of the two approaches to improve the dispatching deci-
sion based on the composite indicator a(i)/t ic. This algorithm (composite algorithm)
is formally summarized in the following five steps [11].
Step (i): when receiving a call from a zone c ∈ Z, a set A of available ambulances is
identified whose travelling time to the emergency zone is within a threshold δ.
Step (ii): if there is no ambulance available within the threshold (when A = ∅), the
closest ambulance (beyond the threshold) is dispatched. Otherwise, proceed through
steps (iii), (iv), and (v).
Step (iii): for each ambulance i ∈ A, zone preparedness levels zj (i) are computed for
all zones j ∈ Z by setting ambulance i unavailable.
Step (iv): the zone preparedness levels resulting from dispatching ambulance i ∈ A are
aggregated into area preparedness a(i) by taking the minimum of zone preparedness
levels; that is a(i) = min j∈ Z {zj (i)}. Then, the composite indicator a(i)/t ic is calculated
for each dispatching decision.
Step (v): dispatch the ambulance i* that maximizes the composite indicator; that is
i* = argmax i∈ A {a(i)/t ic }.
A special case that is not considered in the five previous steps is when there is no
ambulance available in the whole service area. In that situation, the call is queued
and when an ambulance is released then the ambulance is assigned to the closest
emergency call.
Returning to the numerical example from Fig. 3.7, the origin of the emergency
call is zone 7, therefore c = 7. Therefore, for the composite indicator for dispatching
ambulance A1 would be a(A1)/t A1,7 = 0.0094/9 = 0.00105. The calculation of
composite indicators for each dispatching decision is summarized in Table 3.2,
from which the final decision is to dispatch ambulance A3 based on the composite
algorithm (the maximum composite indicator value is 0.00154).
It is interesting to see in Table 3.2 that a decision based on area preparedness
alone would have called for dispatching ambulance A5 (maximum area preparedness
is 0.0179). On the other hand, the conventional criterion of dispatching the closest
ambulance would have dispatched ambulance A1 (located 9-time units from the call
site). Each of the three criteria (area preparedness, closest ambulance, and composite
indicator) leads to a different decision for that instance.
The composite algorithm was analyzed by discrete-event simulation in [11] using
the setting shown in Fig. 3.8. For example, Fig. 3.10a shows the increase in average
response time relative to the closest ambulance assignment method for the centered
call pattern. Thus, positive values in Fig. 3.10a indicate performance degradation
3.2 Preparedness-Based Ambulance Dispatching Algorithm 35

Table 3.2 Summary of


Dispatched Area Closet Composite
calculation of composite
ambulance i preparedness assignment indicator
indicators for each
a(i) time t i7 a(i)/t i7
dispatching decision for the
case presented in Fig. 3.7 A1 0.0094 9 0.00105
A2 0.0143 11 0.00130
A3 0.0154 10 0.00154
A4 0.0156 11 0.00141
A5 0.0179 20 0.00089

while negative values indicate performance improvement. Similarly, Fig. 3.10b


presents the increase in average cumulative proportion of response time relative
to the closest assignment method for the centered call pattern, and for that case,
positive values indicate performance improvement while negative values indicate
performance degradation.

Fig. 3.10 Results of simulated experiment to analyze performance of composite algorithm


proposed in [11] for centered called pattern: (a) Average increase in response time, (b) Average
increase in cumulative proportion of response time
36 3 Ambulance Dispatching—Preparedness Welfare

As discussed in [11], the composite algorithm works very well in comparison with
the closest ambulance assignment method in many instances, demonstrating the posi-
tive impact of incorporating a measure of preparedness into dispatching decisions.
However, in very specific numerical cases, for instance in centered called patterns
with less than six ambulances (see Fig. 3.10), it was observed that the algorithm
was not able to perform better than the closest assignment method. Based on this
important observation, a social welfare function is then considered to aggregate zone
preparedness to improve the robustness of the algorithm. This idea is developed in
detail in the next section.

3.3 Improving Robustness of Composite Algorithm


with Social Welfare Functions

In the preparedness-based dispatching algorithm described in the previous section,


zone preparedness levels were aggregated into area preparedness by taking the
minimum zone preparedness level, as explained in step (iv) where a(i) = min j∈ Z
{zj (i)}. This aggregation approach is commonly known as the Misery function, which
focuses only on the minimal zone preparedness level and ignores the overall situation
for the rest of the zones. However, other ways of aggregating zone preparedness levels
could also be applied, for example, the well-known Average function where a(i) =
avg {zj (i)} = z(i). Furthermore, more sophisticated aggregation methods include
social welfare functions that simultaneously consider average and inequality, for
instance, the Sen and Dagum welfare functions. Both functions include the Gini (I G )
index in their calculation. The Sen welfare function is obtained by P(1 − I G ), where
P is the average population income and factor (1 − I G ) represents an equality index.
On the other hand, the Dagum welfare function imposes more penalty for inequality
in comparison with the Sen function, and it is calculated by P(1 − I G )/(1 + I G ).
To better explain these welfare functions, the small numerical example shown in
Fig. 3.11 will be used. The population is composed of five individuals, each with
its respective income level. First, the individuals are sorted by income, starting with
the lowest value. Then both the participation of total income and its cumulative
proportion is calculated. When plotting the cumulative proportion of income versus
the cumulative proportion of population, the Lorenz curve is obtained as illustrated
in Fig. 3.11. In the case of perfect equality, the Lorenz curve would be a 45° line.
These curves, perfect equality- and actual Lorenz curves, build two areas A and B as
shown in Fig. 3.11. The Gini index is obtained from those areas by calculating I G =
A/(A + B). Based on the Gini index, Sen and Dagum welfare functions’ values can
finally be obtained.
An easy procedure to calculate areas A and B for the numerical case shown in
Fig. 3.11 is described as follows. First, notice that the total area under the 45° line is a
triangle with both height and base of 1 unit length. Hence, the sum of both areas is A
+ B = 0.5. Then, area B (area below the Lorenz curve) can be broken down into four
3.3 Improving Robustness of Composite Algorithm with Social Welfare … 37

Fig. 3.11 Numerical example to illustrate calculation of Sen and Dagum welfare functions

rectangles and five triangles as shown in Fig. 3.12. All triangles and rectangles have
the same base, equal to 0.2 for this example. The total area composed of rectangles
is (0.2)(0.032 + 0.088 + 0.216 + 0.456) = 0.1584. On the other hand, the total area
composed of triangles is easier to calculate because all triangles have the same base
(0.2 in this case) and the sum of their heights is necessarily equal to 1. Therefore, the
total area composed by triangles is (0.5)(0.2)(1) = 0.1. As a result, area B is equal
to B = 0.1584 + 0.1 = 0.2584 and area A is A = 0.5 – 0.2584 = 0.2416. Finally,
the Gini index for this case is I G = A/(A + B) = 0.2416/0.5 = 0.4832. Based on the
average income P = 125, Sen welfare function is P(1 – I G ) = 125(1 – 0.4832) =
64.60 and Dagum welfare function is P(1 – I G )/(1 + I G ) = 125(1 – 0.4832)/(1 +
0.4832) = 43.55.
So far, four aggregate functions have been identified to calculate area prepared-
ness: Misery, Average, Sen, and Dagum. Therefore, four different dispatching algo-
rithms can be developed, each using one of these functions in step (iv). For these

Fig. 3.12 Procedure to


calculate area under the
Lorenz curve (area B)
38 3 Ambulance Dispatching—Preparedness Welfare

algorithms, z(i) and I G (i) are respectively the average and Gini inequality of zone
preparedness levels that result from dispatching ambulance i. For Misery algorithm,
the area preparedness is a(i) = min j∈ Z {zj (i)}, for Average algorithm a(i) = z(i), for
Sen algorithm a(i) = z(i)(1 – I G (i)), and for Dagum algorithm a(i) = z(i)(1 – I G (i))/(1
+ I G (i)).

3.4 Performance of Composite Algorithm with Social


Welfare Functions

To compare the performance of the social welfare-based algorithms presented in


Sect. 3.3, a discrete-event simulation model was developed in [11] to compare its
output with the conventional method of dispatching the closest ambulance, using the
setting presented in Fig. 3.8. Performance was measured again by increase in both
average response time and cumulative proportion of response time relative to the
closest ambulance assignment method. For these experiments, threshold parameter δ
was set to infinite to incorporate the maximum effect of preparedness into dispatching
decisions. This means that all available ambulances in the area are considered in
step (i) of the algorithm. Figure 3.13a shows the increase in response time for each
algorithm in the centered call pattern, where the more negative the value, the better
(because negative values mean decrease in response time). Analogously, Fig. 3.13b
shows the increase in cumulative proportion of response time, where positive values
indicate performance improvement.
The complete study reported in [11] concluded that the Dagum algorithm provided
the highest performance in uniform call pattern, and both Sen and Dagum algo-
rithms are the most desirable in centered call pattern. On the other hand, Misery
algorithm performed the best in cornered and bipartite call patterns. In general,
Average algorithm showed the lowest performance of the investigated algorithms,
even worse than the conventional closest assignment method. Overall, the Misery,
Sen, and Dagum aggregate functions were selected as good candidates capable of
representing preparedness level of the whole service area. However, choosing the
most appropriate aggregate function depends on the specific characteristics of the
area.
In conclusion, considering preparedness in ambulance dispatching can signifi-
cantly reduce response time in comparison with the conventional method of assigning
the closest ambulance. To implement a preparedness-based dispatching algorithm,
an appropriate aggregation function must be chosen. This decision must be made
based on the specific data of the operational environment, call patterns, and number
of ambulances available in the area.
3.5 Summary 39

Fig. 3.13 Results of simulated experiment to analyze performance of the four social welfare-based
algorithms proposed in [11] for centered called pattern: (a) Average increase in response time relative
to the closest assignment method, (b) Average increase in cumulative proportion of response time
relative to the closest assignment method

3.5 Summary

This chapter introduced an ambulance dispatching algorithm based on the concept


of preparedness. The proposed technique combines the greediness of the closest
ambulance assignment method, which is commonly used in practice, with another
approach that increases the preparedness of the system, which allows the system to
better serve future emergency calls in the service area. Social welfare functions were
introduced as a novel tool to aggregate the preparedness level for the whole service
area. The chapter thoroughly presented with numerical examples the steps of the
implementation of the method.
The performance of the dispatching methods was analyzed based on two metrics:
response time and increase in cumulative proportion of response time. Several simu-
lated experiments demonstrated the robustness of the proposed algorithm to different
call patterns and operational characteristics in the service area. Alternative social
welfare functions and other traditional aggregate functions were also analyzed in the
40 3 Ambulance Dispatching—Preparedness Welfare

experiments. The results demonstrated that considering preparedness in ambulance


dispatching is effective to reduce response time, however, choosing the best aggre-
gate function for a determined case depends on the specific characteristics of the
problem, for example, operational environment, call patterns, and total number of
ambulances in the area.
Chapter Review Questions
Question 1. Briefly explain why EMS systems are under high pressure today. How
is the situation of EMS systems in your region or country? Find relevant data on the
Internet and summarize your results.
Question 2. What are the two most widely used criteria to measure performance of
EMS systems? Briefly explain each of them.
Question 3. What are the three real-time strategies that managers use to improve
EMS system performance? Illustrate each of these strategies and explain with your
own words.
Question 4. Explain why stochastic dominance is a desirable property of a dispatching
policy. Illustrate your answer with an example.
Question 5. Can you propose another aggregate function (different from the ones
explained in this chapter) that could be used to calculate area preparedness? How
would the function work? Explain with a numerical example.
Question 6. For the situation presented in Fig. 3.6:
(a) Calculate preparedness for each zone.
(b) Determine the zones with the maximum and minimum level of preparedness.
Question 7. For the situation presented in Fig. 3.7:
(a) Validate all the calculated data shown in Table 3.1.
(b) Assume that as soon as ambulance A3 is dispatched to serve incoming call
in zone 7, another emergency call is received from zone 8. At that moment,
ambulances A1, A2, A4, and A5 are available in the locations shown in Fig. 3.7.
Which ambulance should be dispatched to maximize area preparedness in that
case?
(c) Repeat question part (b) but using the composite indicator to make the
dispatching decision. Which ambulance should be dispatched in that case?
Question 8. For the situation presented in Fig. 3.7 (and the related data summarized
in Table 3.1):
(a) Which ambulance should be dispatched using the Average algorithm?
(b) Which ambulance should be dispatched using the Sen algorihm?
(c) Which ambulance should be dispatched using the Dagum algorithm?
Question 9. Coding challenge: use your favorite coding language to program
an algorithm that calculates zone preparedness levels based on the position of idle
References 41

ambulances for a given scenario. The inputs of the algorithm are: (i) number of idle
ambulances in each zone, (ii) travelling times matrix between zones, and (iii) call
rate in each zone. Use the service area with 10 zones and the corresponding data
presented in Fig. 3.6 as a numerical example for your algorithm. The output of the
algorithm should display the preparedness level for each zone.

References

1. Lee S (2012) The role of centrality in ambulance dispatching. Decis Support Syst 54(1):282–291
2. Enayati S, Mayorga ME, Toro-Díaz H, Albert LA (2019) Identifying trade-offs in equity and
efficiency for simultaneously optimizing location and multipriority dispatch of ambulances.
Int Trans Oper Res 26(2):415–438
3. BBC News (2002). Police improve heart attack survival rates, http://news.bbc.co.uk/2/hi/hea
lth/2188852.stm. Accessed 3 Mar 2021
4. Ball MO, Lin FL (1993) A reliability model applied to emergency service vehicle location.
Oper Res 41(1):18–36
5. AHA (America Hospital Association) (2015) Trendwatch chartbook 2015: Trends affecting
hospitals and health systems. http://www.aha.org/research/reports/tw/chartbook/2015/15char
tbook.pdf
6. CRED (Centre for Research on the Epidemiology of Disasters) (2015) Annual disaster
statistical review 2014: the numbers and trends. http://cred.be/sites/default/files/ADSR_2014.
pdf
7. AAA (American Ambulance Association) (2015) Ambulance facts. http://aaa.amg-inc.com/
default.asp?contentID=142
8. Nasrollahzadeh AA, Khademi A, Mayorga ME (2018) Real-time ambulance dispatching and
relocation. Manuf Serv Oper Manag 20(3):467–480
9. Maxwell MS, Restrepo M, Henderson SG, Topaloglu H (2010) Approximate dynamic
programming for ambulance redeployment. INFORMS J Comput 22(2):266–281
10. Andersson T, Värbrand P (2007) Decision support tools for ambulance dispatch and relocation.
J Oper Res Soc 58(2):195–201
11. Lee S (2011) The role of preparedness in ambulance dispatching. J Oper Res Soc 62(10):1888–
1897
Chapter 4
Group Decision Making in Intelligent
Shared Environments—Preference
Welfare

4.1 Introduction to Intelligent Shared Environments

Availability of smaller cheaper computers and widespread wireless connectivity has


led to the development of intelligent systems that autonomously adapt the envi-
ronment to preferences of people sharing a physical space. With this technology,
inhabitant-environment interactions can be analyzed by background applications
that operate in invisible embedded computers [1]. In these intelligent shared environ-
ments, factors like temperature, lightning, background noise, and digital decoration
adapt autonomously according to preferences of inhabitants over time. For example,
MUSICFX is a group preference arbitration system that autonomously chooses the
best music in a fitness center [2].
Designing decision-making systems in intelligent shared environments rises two
fundamental challenges: aggregation of individual preferences and incorporation of
social influence. The first challenge refers to how individual preferences should be
aggregated into a group decision, given the fact that it would be impossible to satisfy
all individual needs simultaneously in a shared environment. The second challenge
refers to how social influence should be incorporated into group decision-making
based on the observation that the opinion of some individuals could weigh more in a
specific context [3]. For example, the opinion of older people in a group could weigh
more when choosing the temperature level in a shared room.
One possible way of making group decisions in a shared environment would be to
ask each inhabitant to recommend an alternative solution using revealed preferences
of all individuals in order to select the most rational environment decision for the
group, supported either by a quantitative procedure or a voting system. However, such
process would be time-consuming and inappropriate for autonomous systems. For
this reason, it is imperative to use an aggregate function that supports decision-making
for the group from an outsider’s perspective.
Two examples of group decision-making based on aggregate functions that are
being used in intelligent shared environments are maximum average satisfaction
(used by Pocket RestaurantFinder and Flytrap) and misery minimization (used by

© The Author(s), under exclusive license to Springer Nature Switzerland AG 2023 43


F. Munoz et al., Engineering Applications of Social Welfare Functions, Automation,
Collaboration, & E-Services 13,
https://doi.org/10.1007/978-3-031-20545-3_4
44 4 Group Decision Making in Intelligent Shared …

Table 4.1 Rates from 1 (really hate) to 10 (really like) that represent preferences of seven
inhabitants on eight different environments (A to H) in an intelligent shared space
Inhabitant Environment
A B C D E F G H
1 3 10 4 5 8 7 9 6
2 6 6 8 10 10 3 4 3
3 8 10 8 4 7 6 7 1
4 1 6 8 10 9 3 4 1
5 8 10 2 4 7 6 7 1
6 4 2 9 5 1 8 5 10
7 10 5 8 1 5 9 2 4

PolyLens and Adaptive Radio) [4]. To see how these aggregate functions work in
practice, consider a situation with seven inhabitants in a shared space who have
rated eight different environments (A to H) on a scale from 1 to 10, where 1 means
“really hate” and 10 “really like”. Table 4.1 summarizes the score assigned by each
inhabitant to each environment.
For this situation, the two aggregate functions mentioned before are calculated
to choose an environment for the group. For instance, for environment A, average
satisfaction is (3 + 6 + 8 + 1 + 8 + 4 + 10)/7 = 5.71, and misery is min{3, 6, 8,
1, 8, 4, 10} = 1. Table 4.2 shows the results of these two aggregate functions for all
alternatives, from which it can be concluded that environment B would be chosen
by maximum average satisfaction criterion, while environment F would be chosen
by using misery minimization (in this case, the maximum of all misery values).
A good question at this point is how aggregate functions should be compared.
Following the recommendation from previous research, an aggregate function for
group decision-making should be assessed based on its social agreeability aiming
at two objectives: common agreement and utility maximization [3]. Common agree-
ment means that it would be rational to choose an environment that gets most agree-
ments from inhabitants. On the other hand, utility maximization means that the aggre-
gate function should maximize total utility for the group of inhabitants. Hence, if it
is possible to obtain environment orders from individual preferences, and the group
preference order obtained from an aggregate function, social agreeability could be
quantified by using a distance measure on orders. In that case, the lower the value
of the distance, the more social agreeable the aggregate function would be.
To better explain the mathematical concept of social agreeability, a distance
measure on orders is calculated here for the data of the numerical example presented
in Table 4.1. Suppose that the Euclidian distance is chosen as a distance criterion to
evaluate social agreeability of the average satisfaction aggregate function. Firstly,
based on data from Table 4.1, individual preference orders for each inhabitant are
obtained. For example, the preference order for inhabitant number 2 is the following:
1 for D and E (both environments have the highest score of 10), 3 for C, 4 for A and
B (both have the same score), 6 for G, and 7 for F and H (both with the same score).
Table 4.2 Results of average satisfaction and misery aggregate functions
Aggregate function Environment
A B C D E F G H
Aggregate function value Average 5.71 7.00 6.71 5.57 6.71 6.00 5.43 3.71
4.1 Introduction to Intelligent Shared Environments

Misery 1 2 2 1 1 3 2 1
Preference order of aggregate function value Average 5 1 2 6 2 4 7 8
Misery 5 2 2 5 5 1 2 5
45
46 4 Group Decision Making in Intelligent Shared …

Table 4.3 Individual preference order for each inhabitant using preference scores from Table 4.1
and preference orders obtained from aggregate functions using Euclidian distance
Inhabitant Individual preference order Euclidian distance
A B C D E F G H Av. Sat Misery
1 8 1 7 6 3 4 2 5 8.31 7.00
2 4 4 3 1 1 7 6 7 6.93 9.70
3 2 1 2 7 4 6 4 8 5.20 7.28
4 7 4 3 1 2 6 5 7 6.93 8.49
5 2 1 7 6 3 5 3 8 7.21 8.12
6 6 7 2 4 8 3 4 1 11.66 7.75
7 1 4 3 8 4 2 7 6 6.48 7.62
Average 7.53 7.99

Here it is important to highlight how preference order values are assigned when
multiple alternatives get the same preference score (this is the same logic that func-
tion “RANK” follows in Microsoft Excel). The preference orders for all inhabitants
in that example are summarized in Table 4.3.
Preference order for the aggregate functions is obtained in a similar way and Table
4.2 shows the results. For example, for the average satisfaction aggregate function
the preference order for alternatives A to H is respectively: 5, 1, 2, 6, 2, 4, 7, 8.
Consequently, the distance measure on orders between this aggregate function and
inhabitant number 2 using the Euclidian distance is {(4 − 5)2 + (4 − 1)2 + (3 −
2)2 + (1 − 6)2 + (1 − 2)2 + (7 − 4)2 + (6 − 7)2 + (7 − 8)2 }0.5 = 6.93. The
last two columns of Table 4.3 show the results of applying this procedure to both
aggregate functions (average satisfaction and misery) across all inhabitants. From
that table it can be concluded that the average distance for the average satisfaction
aggregate function is 7.53, while for misery aggregate function it is 7.99. As a result,
the average satisfaction aggregate function in this example is said to be more social
agreeable than the misery function.

4.2 Social Welfare as an Aggregate Function

Research on decision-making in intelligent shared environments has demonstrated


that implementing social welfare functions as aggregate functions of individual pref-
erences simultaneously minimizes inequality and maximizes total utility [3]. In social
sciences, a social welfare function compares income in a society and its value depends
on both average and equality of income. Especially, the Atkinson welfare function
has demonstrated a good performance in comparison to other aggregate functions.
If there are n inhabitants in a set N, and the preference score of inhabitant i for
environment j is pij (where a higher value of pij means “more preferred”), then the
aggregate function value Aj for environment j using the Atkinson welfare function
4.2 Social Welfare as an Aggregate Function 47

can be calculated as shown in Eq. 4.1.


  1−ε
1

1  1−ε
Aj p (4.1)
n i∈N i j

To see in practice how to implement Eq. 4.1, the Atkinson welfare function is
applied to the numerical example presented in Table 4.1. The Atkinson welfare func-
tion requires first the determination of the inequality aversion parameter ε. Assume
for instance a value of ε = 0.5 in this case. Hence, the aggregate value for environment
A (AA ) using the Atkinson welfare (Eq. 4.1) would be:
 
1 ( 0.5 ) 2
AA = 3 + 60.5 + 80.5 + 10.5 + 80.5 + 40.5 + 100.5 = 5.22
7

The calculation of the Atkinson aggregate function for all the environments yields
the results that are summarized in Table 4.4, where the values obtained previously by
average satisfaction and misery are also recalled for comparison. As it can be seen in
the table, the preference order for alternatives A to H based on the Atkinson welfare
function are respectively: 5, 1, 2, 7, 3, 4, 6, 8.
By implementing again the Euclidian distance to quantify the social agreeability
of the Atkinson aggregate function, the distance measure on orders is 7.33. Compared
to the social agreeability of average satisfaction (7.53) and misery (7.99), it can be
concluded for this example that the Atkinson aggregate function with parameter
ε = 0.5 is the most social agreeable. Different values for parameter ε should be
tested before implementing the Atkinson function, but the idea here is to provide a
small example on how to implement the social welfare function into group decision-
making.

4.2.1 Metrics of Distance Measure on Orders

As explained before, social agreeability is quantified based on the distance measure


on orders between individual preferences and the preference order determined by an
aggregate function. In the previous numerical examples, the Euclidian distance was
used by default to calculate the distance, however, there are other distance measures
that could be applied in this framework. Given the preference rank Rs (i) from subject
s ∈ S for environment i ∈ E, and the corresponding rank provided by an aggregate
function Rw(i), where E is the set of environments (a total of m environments) and S
the set of subjects, a list of alternative distance metrics to quantify social agreeability
is summarized in Table 4.5.
2 
( ) c(Rs (i) − Rs ( j ), Rw (i) − Rw ( j ))
m m 2 − 1 1≤i< j≤m
48

Table 4.4 Results of three aggregate functions: average satisfaction, misery, and Atkinson
Aggregate function Environment
A B C D E F G H
Aggregate function value Average 5.71 7.00 6.71 5.57 6.71 6.00 5.43 3.71
Misery 1 2 2 1 1 3 2 1
Atkinson (ε = 0.5) 5.22 6.64 6.41 5.09 6.26 5.79 5.19 3.11
Preference order of aggregate function value Average 5 1 2 6 2 4 7 8
Misery 5 2 2 5 5 1 2 5
Atkinson (ε = 0.5) 5 1 2 7 3 4 6 8
4 Group Decision Making in Intelligent Shared …
4.2 Social Welfare as an Aggregate Function 49

Table 4.5 List of alternative distance metrics; reprinted from [3] with permission from Elsevier
(5, 091, 031, 194, 753)
Distance metric Formula
/∑
Euclidian Distance [Rs (i) − Rw (i )]2
i∈N

Spearman’s Footrule 1
2 [Rs (i ) − Rw (i )]
i∈N

6 [Rs (i )−Rw (i )]
i∈N
Spearman’s Rho m (m 2 −1)

Kendall’s Tau a 1− 2
m (m 2 −1)
ai j bi j
1≤i< j≤m

Probabilistic Distanceb 2
m (m 2 −1)
c(Rs (i ) − Rs ( j), Rw (i) − Rw ( j))
1≤i< j≤m
a For Kendall’s Tau distance, parameter aij = 1 if Rs (i) ≤ Rs (j), and aij = −1 otherwise, on the
other hand, bij = 1 if Rw (i) ≤ Rw (j), and bij = −1 otherwise
b For Probabilistic Distance, c(x, y) = 0 if xy > 0 or (x = 0 and y = 0), and c(x,y) = 1 otherwise

.
Based on the distance metric between ranks from each subject and from the
aggregate function, social agreeability is represented as the average of these distances
over all subjects in the society. The lower the final average distance, the higher the
social agreeability of the aggregate function.

4.2.2 Alternative Social Welfare Functions

Equation 4.1 calculates the aggregate function based on the Atkinson’s welfare func-
tion. Other social welfare functions are available as aggregate measures, for example
the Sen and Dagum welfare functions. Both functions include the Gini (I G ) index
in their calculation. The Sen welfare function is obtained by P(1 − I G ), where P is
the average population income and factor (1 − I G ) represents an equality index. On
the other hand, the Dagum welfare function imposes more penalty for inequality in
comparison with the Sen function, and it is calculated by P(1 − I G )/ (1 + I G ). To
see how to calculate these functions in detail, the reader is referred to Sect. 3.3 in
Chap. 3.
All social welfare functions discussed so far possess three important properties:
average, inequality, and misery. Therefore, these functions can represent social opin-
ions in a better way compared with other more traditional aggregate functions like
average or misery.
50 4 Group Decision Making in Intelligent Shared …

4.2.3 The Masthoff’s Experiment

The original work that developed the use of social welfare functions to make group
decisions referenced an important qualitative experiment performed by Masthoff,
whose study was used to evaluate the goodness of an aggregate function [3]. The
experiment explored how people make group decisions based on preference informa-
tion provided by subjects in a society. Table 4.6 summarizes the data on preference
orders gathered from one of the analyzed groups that included 18 subjects and 10
environments (A to J).
From that experiment, Masthoff concluded that the strategies adopted by subjects
to rank environments for the aggregate group were mainly based on average, misery,
and average without misery functions. Hence, it was inferred that people consider
three properties to determine the shared environment for the whole group: average,
misery, and inequality.
As discussed before, these three characteristics are precisely the three properties
that social welfare functions possess. Therefore, the qualitative assessment of the
Masthoff’s experiment supports the notion of introducing social welfare functions

Table 4.6 Group preference orders by 18 subjects in one group of the Masthoff’s experiment;
reprinted from [3] with permission from Elsevier (5, 091, 031, 194, 753)
Environment
Subject 1 2 3 4 5 6 7 Unplaced
1 F E D H J A B C, G, I
2 F E H J D I B A, C, G
3 F E J H D G I A, B, C
4 F E H J D G I A, B, C
5 F E D H J G B A, C, I
6 F E A H J D I B, C, G
7 F E H J D G A B, C, I
8 F G E A B D H C, I, J
9 F E H J and D A I B, C, G
10 F E H J D G B A, C, I
11 F E H J D G B A, C, I
12 F H J D E G B A, C, I
13 F E A H J D I B, C, G
14 E F H J D A I B, C, G
15 F G J E D H B A, C, I
16 F E J G H D A B, C, I
17 F E H D J B G A, C, I
18 F E J H G D B A, C, I
4.3 Performance of Social Welfare as Aggregate Functions 51

Table 4.7 Matrix of preferences incorporating social influence where opinion of inhabitants 1 and
6 weighs twice the opinion of the others
Inhabitant Environment
A B C D E F G H
1 3 10 4 5 8 7 9 6
1a 3 10 4 5 8 7 9 6
2 6 6 8 10 10 3 4 3
3 8 10 8 4 7 6 7 1
4 1 6 8 10 9 3 4 1
5 8 10 2 4 7 6 7 1
6 4 2 9 5 1 8 5 10
6a 4 2 9 5 1 8 5 104
7 10 5 8 1 5 9 2

in group decision-making. Data shown in Table 4.6 will be used in the analysis of
the performance of social welfare functions in Sect. 4.3.

4.2.4 Incorporation of Social Influence

In the introduction of this chapter, it was mentioned that a second challenge in


group decision-making is how to incorporate social influence given that the opinion
of inhabitants may not be considered equal. The weight of individual preferences
would depend on the specific context of the decision and could be assessed based
on factors like age, gender, disability, or pregnancy. One way of incorporating social
influence is to duplicate each inhabitant proportionally to his influence, so that the
heterogeneous society is transformed into a homogeneous one where any aggregate
function could be applied [3].
Continuing with the example shown in Table 4.1, suppose that for the context
of the decision, the opinion of inhabitants 1 and 6 weighs twice the opinion of the
other inhabitants. Therefore, the vector of preferences of both inhabitants would
be duplicated yielding the preferences matrix shown in Table 4.7. Therefore, any
aggregate function could be applied to this new homogeneous society that considers
the effect of social influence.

4.3 Performance of Social Welfare as Aggregate Functions

The original publication that developed the application of social welfare functions
to intelligent shared environments presents a thorough investigation on performance
52 4 Group Decision Making in Intelligent Shared …

of different aggregate functions using various distance measures [3]. The case study
considered individual preferences from a social experiment that analyzed group deci-
sions for sequencing television programs [5]. In total, nine aggregate functions were
studied: average satisfaction, misery, average without misery, Sen welfare, Arkinson
welfare with different inequality aversion parameter values (1, 1.5, 2, and 2.5),
and Degum welfare. Social agreeability was analyzed using five different distance
measures on preference ranks: Spearman’s Footrule (SF), Euclidian distance (ED),
Spearman’s Rho (SR), Kendall’s Tau (KT), and Probabilistic Distance (PD).
Table 4.8 summarizes the preference orders provided by each of the analyzed
aggregate functions calculated for data from Table 4.6. On the other hand, Table 4.9
presents the average distances over all 18 subjects for each aggregate function, which
demonstrates that the Atkinson welfare function is the most social agreeable with
inequality aversion parameters ε = 2.0 and ε = 2.5, independent from the chosen
distance metric. This is a clear indication of the effectiveness of the application of the
Atkinson welfare function to decision-making in intelligent shared environments.
Another interesting observation from Table 4.9 is that the aggregate function
average performs the worst in all different distance measures. This highlights the
weakness of this traditional method as an aggregate function for group decision
making, and it also indicates that people consider inequality when making decisions
for groups. For this reason, it is necessary to incorporate social welfare functions that
integrate the three key properties simultaneously (average, misery, and inequality).
One key advantage of the Atkinson welfare function over the Sen and Dagum is
its higher flexibility. The penalty on inequality can be easily adjusted for the specific
context by simply tuning the inequality aversion parameter ε. An appropriate value
for this parameter in the Atkinson function depends on the purpose of environment
and duration of the stay in shared space. For more details about that research, the
reader is referred to the original publication [3].

Table 4.8 Group preference orders obtained by each aggregate function; reprinted from [3] with
permission from Elsevier (5, 091, 031, 194, 753)
Aggregate function Preference rank Unplaced
1 2 3 4 5 6 7
Average E, F H D, J A I B, C, G
Misery F E D, H, J G B A, C, I
Avg. w/o misery (threshold = E, F H D, J B G A, C, I
4)
Sen welfare F E H J D G I A, B, C
Atkinson welfare (ε = 1.0) F E H J D I B A, C, G
Atkinson welfare (ε = 1.5) F E H J D G I A, B, C
Atkinson welfare (ε = 2.0) F E H J D G B A, C, I
Atkinson welfare (ε = 2.5) F E H J D G B A, C, I
Dagum welfare F E J H D G I A, B, C
4.4 Summary 53

Table 4.9 Results of distance measures on orders obtained by several aggregate functions; reprinted
from [3] with permission from Elsevier (5, 091, 031, 194, 753)
Aggregate function Distance metric
SF ED SR KT PD
Average 6.917 6.182 0.281 0.365 0.229
Misery 5.111 5.082 0.201 0.277 0.200
Avg. w/o misery (threshold = 4) 5.972 5.431 0.222 0.301 0.194
Sen welfare 5.861 5.508 0.223 0.278 0.172
Atkinson welfare (ε = 1.0) 5.861 5.787 0.231 0.311 0.180
Atkinson welfare (ε = 1.5) 5.361 5.508 0.223 0.278 0.172
Atkinson welfare (ε = 2.0) 4.861 4.933 0.200 0.232 0.149
Atkinson welfare (ε = 2.5) 4.861 4.933 0.200 0.232 0.149
Dagum welfare 5.583 5.599 0.228 0.301 0.183

4.4 Summary

This chapter presented the application of social welfare functions to group decision
making in shared environments. The proposed approach represents an effective tool to
autonomously adapt the environment to the individual preferences of people sharing
a physical space. The performance of the investigated aggregate functions was evalu-
ated based on the social agreeability concept, which is defined as a distance measure
on orders between individual and aggregate preference orders. Numerical examples
throughout the chapter show the details of the implementation of the framework.
Additionally, an approach to include social influence is also discussed.
The performance analysis included several distance metrics and aggregate func-
tions, and the results of the experiments show that the Atkinson welfare function is
the most social agreeable among the investigated methods, regardless of the distance
metric. The weaknesses of traditional aggregate functions used in practice like
average and misery were also discussed in the performance analysis. Nevertheless,
a key challenge of the developed approach is how to define the inequality aversion
parameter. Since there is no general rule to determine an appropriate value, experi-
mentation would be crucial to adjust this parameter to the specific characteristics of
the application context.
Chapter Review Questions
Question 1. Explain the main problem discussed in this chapter.
Question 2. Briefly explain the concept of social agreeability and how it is quantified.
Question 3. For the preference scores presented in Table 4.1:
(a) Validate all values summarized in Tables 4.3 and 4.4.
54 4 Group Decision Making in Intelligent Shared …

(b) Use equality aversion parameter ε = 1.5 instead of ε = 0.5 when imple-
menting the Atkinson aggregate function. Which environment would be the
most preferred in this case?
(c) Calculate social agreeability based on the Euclidian distance by applying an
Atkinson aggregate function with parameter ε = 1.5. Compare the result with the
social agreeability of average satisfaction and misery. What can you conclude
in this case?
(d) Repeat part (c) using the other distance metrics shown in Table 4.5.
Question 4. For the preference scores presented in Table 4.7 where social influence
is considered:
(a) Apply three aggregate functions: average satisfaction, misery and Atkinson
with parameter ε = 0.5. What is the preference order for each aggregate func-
tion? Which aggregate function is more social agreeable in this case using the
Euclidian distance on orders?
(b) Analyze a situation where opinions of inhabitants 1 and 7 weigh twice the
opinion of the others and apply an Atkinson aggregate function with parameter
ε = 1.5. What is the resulting preference order by using this aggregate function?

References

1. McCarthy JF (2001) Active environments: sensing and responding to groups of people. Pers
Ubiquit Comput 5(1):75–77
2. McCarthy JF, Anagnost T, MusicFX: An arbiter of group preferences for computer-supported
cooperative workouts. In: 1998 ACM conference on computer-supported cooperative work
(CSCW’98).
3. Ok C, Lee S, Kumara S (2014) Group preference modeling for intelligent shared environments:
social welfare beyond the sum. Inf Sci 278:588–598
4. Jameson A, Smyth B (2007) Recommendation to groups. In: The adaptive web. Springer, Berlin,
Heidelberg, pp 596–627
5. Masthoff J (2004) Group modeling: Selecting a sequence of television items to suit a group of
viewers. In: Personalized digital television. Springer, Dordrecht, pp 93–141
Chapter 5
Task Allocation in Multi-robot
Systems—Resource Welfare

5.1 Introduction to Multi-robot Systems

Multi-robot systems comprise teams of robots that work collaboratively in the same
environment to achieve a common objective or accomplish a specific mission. Such
systems are being used today to perform complex tasks such as space exploration,
surveillance, warehousing, cleaning, assembly, and rescue [1]. A key challenge in the
design of these systems is how to guarantee their efficiency and reliability, especially
when robots operate in uncertain dynamic environments. For instance, task alloca-
tion algorithms are critical to maximize the output of multi-robot systems while
minimizing resource consumption [2].
Typically, complex tasks cannot be performed by a single robot; they require
the coalition of a set of robots to work together. Task allocation problems in multi-
robot systems and dynamic environments are difficult to solve because tasks may
arrive randomly and information for their execution may not be available in advance.
In this uncertain environment, task allocation algorithms should be able to build
coalitions of robots in real-time aiming to perform the maximum number of tasks
while minimizing the use of scarce resources like energy.
According to previous research in the field, decentralized frameworks for task
allocation in multi-robot systems have been preferred to centralized approaches in
order to avoid bottlenecks in the system [2]. Auction-based task allocation protocols
such as MURDOCH [3] and RACHNA [4] are examples of decentralized approaches
for this purpose in which tasks are assigned to the robots that bid the lowest cost
to perform a given a task. These greedy allocation procedures typically yield good
solutions that minimize resource consumption, however, they may also degrade the
performance of the system measured in terms of task completion ratio [2].
This chapter focuses on a distributed task allocation technique that uses a social-
welfare function to assign tasks to coalitions of robots in real-time. The advantage
of this approach is that it enhances the readiness of the system, increasing system’s
task completion ratio while simultaneously reducing resource consumption.

© The Author(s), under exclusive license to Springer Nature Switzerland AG 2023 55


F. Munoz et al., Engineering Applications of Social Welfare Functions, Automation,
Collaboration, & E-Services 13,
https://doi.org/10.1007/978-3-031-20545-3_5
56 5 Task Allocation in Multi-robot Systems—Resource Welfare

5.2 Task Allocation Using a Social Welfare Function

The underlying concept behind the task allocation approach using a social-welfare
function is that in a multi-robot system it is not desirable that some robots consume
resources faster than others. Hence, a goal of this procedure is to allocate tasks in
such a way that resources are depleted evenly distributed among robots as much
as possible to be better prepared for future tasks. Such emerging property is called
“preparedness” of the system [2]; it means that a system is “well prepared” if the
algorithm is capable of assigning tasks in such a way that resource consumption
is minimized while resource balance is maximized. Doing so prevents the early
depletion of energy of a set of robots that work more actively in the system.
The main assumptions of the environment to use the social-welfare task allocation
approach are the following [2]:
• Each robot has an initial amount of key resource that is consumed as it performs
tasks, for instance, energy.
• It is not possible to recharge robots’ resources during the analyzed time horizon.
• Resource consumption can be determined for each robot based on tasks’
characteristics.
• Each robot can perform only one task at a time.
• Robots can communicate with each other and exchange information.
• Tasks are complex and may be performed only if two or more robots collaborate
simultaneously and synchronously.
• Tasks are independent.
• Tasks arrive randomly and information about them cannot be anticipated.
• Preemption is not allowed; robots must finish their assigned task before being
assigned to another one.
This section provides a summary on how this task allocation method works.

5.2.1 Resource Welfare

Task allocation based on a social-welfare function uses a “resource welfare” measure


W R to assign tasks to robots. This resource welfare metric was developed based
on the Atkinson inequality index [5], which measures how unevenly resources are
distributed among individuals within a population. Given a coalition of robots R,
where each robot i has a resource level Rei , the resource welfare measure for the
coalition is calculated as shown in Eq. 5.1.
  1−ε
1

1  1−ε
WR = Re (5.1)
n i∈R i
5.2 Task Allocation Using a Social Welfare Function 57

Parameter ε in Eq. 5.1 is called the inequality aversion parameter. Typical values
used in practice for this parameter are 1.5, 2.0, or 2.5 [6]. When the inequality aversion
parameter is ε = 1, resource welfare in Eq. 5.1 is undefined, and in that specific case,
resource welfare would be calculated as shown in Eq. 5.2.
 
1
W R = exp ln Rei (5.2)
n i∈R

To see in a numerical example how this measure works, assume a coalition of


four robots (call it coalition A) that is required to perform a given task, in which
each robot would end up with 60, 205, 150, and 75 resource units, respectively, after
performing the task. In this case, using an inequality parameter ε = 1.5, the resource
welfare of coalition A (W A ) based on Eq. 5.1 would be:
 
1  −0.5  −2
WA = 60 + 205−0.5 + 150−0.5 + 75−0.5 = 102.0
4

Now assume that there is another possible coalition of four robots (coalition B)
to perform the same task, in which each robot would end up respectively with 90,
175, 120, and 105 resource units after executing the task. Using the same inequality
parameter, the resource welfare of this coalition (W B ) would be:
 
1  −0.5  −2
WB = 90 + 175−0.5 + 120−0.5 + 105−0.5 = 116.9
4

In this example, coalition B offers a higher resource welfare after performing the
task than coalition A (116.9 vs 102.0), and therefore, it would be more appropriate
to assign the task to coalition B to enhance the preparedness of the system. In this
example, it is interesting to highlight that even when both coalitions would end up
with the same average resource level (122.5 resource units in both cases), remaining
resource levels in coalition B are more balanced than in coalition A. That is the virtue
of resource welfare: it allows to simultaneously evaluate feasible coalitions based on
resource efficiency (average residual) and resource balancing [2].

5.2.2 Welfare-Based Algorithm

The procedure of the welfare-based algorithm for task allocation can be summarized
in five steps according to the paper that introduced this technique [2]:
Step 1: a robot senses the arrival of a new task and announces it to all robots in the
system, communicating all the characteristics and capabilities required by the task.
58 5 Task Allocation in Multi-robot Systems—Resource Welfare

Step 2: robots that are eligible for the task submit their bids for performing the task,
indicating the resource consumption for each capability requirement of the task and
their current resource level.
Step 3: based on the bids, all possible coalitions of robots are identified, and the
resource welfare measure is calculated for each of them.
Step 4: the coalition of robots with the highest resource welfare is chosen.
Step 5: a message for task execution is transmitted to the robots of the chosen coalition
so that they can start working on their roles concurrently; after executing the task,
the coalition is dismissed and the robots become available to work on another task.
To better explain this algorithm, suppose that a task arrives at a multi-robot
system requiring three capabilities for its execution: “push”, “pull”, and “carry”.
At that moment there are five robots available (R1 to R5). Table 5.1 summarizes
the capabilities that each robot possesses (push, pull, lift, carry, and lift heavy), the
resource consumption associated with each capability, and the current resource level.
According to this information, eligible robots for this task are R1, R3, and R5 because
they are the only ones that offer any of the required capabilities (push, pull, or carry).
Now all the possible coalitions to perform the task are identified. In this case, all
three robots (R1, R3, and R5) have the “push” capability, only R5 offers the “pull”
capability, and robots R1 and R3 offer “carry” capability. This means that a total
of six different coalitions could be built, and for each of them, a resource welfare
measure is calculated using individual remaining energy levels after executing the
task.
Table 5.2 presents a summary of the calculation process for each coalition, for
example, coalition C2 establishes that R3 uses capability “push”, R5 uses “pull” and
R1 uses “carry”. Using the data presented in Table 5.1 for coalition C2, robots R1,
R3 and R5 would consume respectively 120, 50, and 100 resource units to perform
the task, which represents 270 resource units in total. Therefore, the remaining
resource units for each robot would be respectively 530, 790, and 1200 resource units
after executing the task according to the configuration of coalition C2. With these
remaining energy levels and using an inequality parameter ε = 1.5, the resource
welfare for coalition C2 is 773.28. The last column of Table 5.2 summarizes the
resource welfare values calculated for all six possible coalitions.
Based on the results summarized in Table 5.2, the final decision is to assign the task
to coalition C6 because it yields the highest resource welfare value (808.82). Here
it is interesting to notice that this decision might not agree with another approach
that pursues only the minimization of resource consumption. For example, coalition
C4 consumes in this case the least amount of total resources (220 resource units in
total instead of 260 for C6), however, coalition C6 was chosen using the resource
welfare measure which better balances remaining resources (compare the remaining
individual resource levels of coalition C4 and C6 in Table 5.2). Balancing resource
consumption among robots in the system guarantees that more tasks can be performed
in the future, which is the virtue of this approach as discussed before.
Table 5.1 Capabilities offered by each robot, estimated resource consumption for each capability and current resource level when the task arrives at the system
Robot Capabilities Resource consumption (resource units) Current resource level (resource units)
Push Pull Lift Carry Lift hv Push Pull Lift Carry Lift hv
R1 x x x 30 70 120 650
R2 x x 85 105 1020
5.2 Task Allocation Using a Social Welfare Function

R3 x x 50 90 840
R4 x 25 2100
R5 x x x 70 100 150 1300
59
60 5 Task Allocation in Multi-robot Systems—Resource Welfare

Table 5.2 Calculation of resource welfare for each possible coalition


Coalition Push Pull Carry Total resource Total Total resource Resource
consumption consumption welfare (ε
(resource units) (resource units) = 1.5)
R1 R3 R5 R1 R3 R5
C1 R1 R5 R1 150 0 100 250 500 840 1200 770.29
C2 R3 R5 R1 120 50 100 270 530 790 1200 773.28
C3 R5 R5 R1 120 0 170 290 530 840 1130 776.07
C4 R1 R5 R3 30 90 100 220 620 750 1200 807.94
C5 R3 R5 R3 0 140 100 240 650 700 1200 802.70
C6 R5 R5 R3 0 90 170 260 650 750 1130 808.82

Another interesting property of the welfare-based algorithm is its flexibility.


Depending on the context of the multi-robot system, some systems might prefer
to minimize resource consumption, while others aim to maximize task completion
ratio. Typically, task allocation algorithms are created to pursue specifically only one
of the two objectives. However, the welfare-based algorithm allows to either pursue
both objectives simultaneously or to focus on a single objective just by adjusting the
value of the inequality aversion parameter.
A higher inequality aversion parameter value would penalize inequality more,
and therefore, the algorithm would tend to choose coalitions with more weight on
resource residual balance at the cost of high resource consumption. Hence, in this
case the system would be less efficient in terms of resource consumption, but it would
be able to execute more tasks in the long run (maximize task completion ratio). On the
contrary, a lower inequality parameter value would pursue minimization of resource
consumption to the point that when it equals zero (ε = 0), the resource welfare
function reduces to just an average of the remaining resource level (set ε = 0 in
Eq. 5.1 to see this effect). What it is important to highlight here, is that the objective
of the system can be determined just by tuning the value of parameter ε using the
same algorithm.

5.3 Performance of the Welfare-Based Algorithm

In the original publication of the welfare-based task allocation algorithm, two simu-
lation experiments were carried out to compare its performance with a market-based
method that chooses the coalition that consumes the least number of resources [2].
Experiment 1 analyzes the impact of preparedness on the performance of the system
considering different conditions of initial resources. On the other hand, Experi-
ment 2 assesses the performance of the welfare-based algorithm in conditions with
different number of tasks and robots. The next sections explain in detail the simulated
experiments.
5.3 Performance of the Welfare-Based Algorithm 61

5.3.1 Simulated Experiment #1

In this experiment, tasks arrive randomly at random locations in a system to be


processed by a coalition of robots. In the analyzed scenario, five robots with different
capabilities and resource consumption rates were assumed to operate in the system.
Table 5.3 summarizes the parameters used in the experiment. Each task requires any
combination of three types of capabilities to be processed by the robots, and the
amount required of each capability is also randomly assigned up to three units.
Table 5.3 shows the capability capacity vector for each robot and the corresponding
resource consumption vector that indicates the amount of consumed resource for
using each capability unit. Fifty tasks were generated in each replication of the
simulation. The resource usage for each robot when processing a given task was
calculated by multiplying the weight of the task by the corresponding element in the
resource consumption vector. For example, if the requirement vector of a task is [1,
0, 2], then assigning the coalition of robots R1, R4, and R5 using the capabilities
R1[1, 0, 0], R4[0, 0, 1] and R5[0, 0, 1] would yield a resource consumption of 70
units from robot R1, 50 units from robot R4, and 60 units from robot R5. Hence,
this allocation consumes in total 180 resource units. The experiment assumes that
resource usage for traveling is negligible.
Two methods to allocate tasks in this dynamic system were analyzed: a market-
based method that assigns tasks to the coalition that minimizes total resource
consumption and the welfare-based algorithm that uses the resource welfare func-
tion presented in Eq. 5.1. Both algorithms were tested 20 times in each of two initial
conditions (see Table 5.3): with balanced and unbalanced initial resources for the
robots at the beginning of the simulation.
Figure 5.1 shows the performance of these algorithms in each initial condition
in terms of average resource consumption per processed task, which is obtained
by dividing the total resource consumption by the number of completed tasks. It is
important to remember here that the welfare-based algorithm is equivalent to the
market-based method when the inequality aversion parameter equals zero (ε = 0).
In Fig. 5.1, it can be observed that the welfare-based algorithm consumes less
resources per task than the market-based method in the balanced initial condition

Table 5.3 Parameters used in simulated experiment #1; reprinted from [2] with permission from
Elsevier (5, 091, 020, 736, 620)
Robot Capability capacity vector Resource consumption vector Initial resources
Balanced Unbalanced
R1 [1, 1, 0] [70, 60, 0] 2000 1741
R2 [1, 1, 0] [30, 50, 0] 2000 1965
R3 [1, 0, 1] [60, 0, 70] 2000 2359
R4 [0, 1, 1] [0, 79, 59] 2000 2215
R5 [1, 1, 1] [30, 40, 60] 2000 2103
62 5 Task Allocation in Multi-robot Systems—Resource Welfare

Fig. 5.1 Average resource consumption per task; reprinted from [2] with permission from Elsevier
(5, 091, 020, 736, 620)

setup (see Fig. 5.1a), while it consumes more resources in the unbalanced initial
condition (Fig. 5.1b). However, the advantage of the welfare-based algorithm is
more visible when the task completion ratio is analyzed. Figure 5.2 shows the average
number of completed tasks in each initial condition for both methods, and it clearly
shows that the performance of the welfare-based algorithm is higher than the market-
based method for any value of inequality aversion greater than zero (ε > 0).
The reason of the superiority of the welfare-based algorithm in terms of task
completion ratio can be explained by analyzing the residual resources over time for
each robot. Figure 5.3 shows the residual resource level of each robot over time (as
tasks are being processed) in the balanced initial condition, in which all robots are
endowed with 2000 resource units at the beginning of the operation. Figure 5.3a
shows that the market-based method depletes robots’ resources disproportionately
causing the early depletion of resources of two robots (R2 and R5). In contrast,
Fig. 5.3b shows that the welfare-based algorithm consumes resources evenly among
robots, leading to a simultaneous depletion that allows to complete a higher number

Fig. 5.2 Average number of tasks completed; reprinted from [2] with permission from Elsevier (5,
091, 020, 736, 620)
5.3 Performance of the Welfare-Based Algorithm 63

of tasks. A similar behavior is observed for the unbalanced initial condition shown
in Fig. 5.4. Even when the initial resource level is unbalanced among robots, the
welfare-based algorithm consumes resources in a way that residual resources among
robots converge over time (see Fig. 5.4b), which allows to complete more tasks than
using the market-based method.
In summary, this experiment demonstrates that the welfare-based algorithm is
superior to the market-based method in terms of task completion ratio regardless of
the initial resource level condition, and also in terms of resource consumption per
task when resources are balanced among robots at the beginning of the operation.
However, a key issue that must be addressed in the implementation of a welfare-
based algorithm is how to determine the value of the inequality aversion parameter
ε. Since there is no general rule to tune this parameter, its value must be defined by
the decision maker for each specific application context supported by a simulation
tool as shown in this experiment.

Fig. 5.3 Residual resources in the balanced initial condition; reprinted from [2] with permission
from Elsevier (5, 091, 020, 736, 620)

Fig. 5.4 Residual resources in the unbalanced initial condition; reprinted from [2] with permission
from Elsevier (5, 091, 020, 736, 620)
64 5 Task Allocation in Multi-robot Systems—Resource Welfare

Table 5.4 Parameters used in


Robot Capability Resource Current resource
simulated experiment #2;
capacity vector consumption level
reprinted from [2] with
vector
permission from Elsevier (5,
091, 020, 736, 620) R1 [1, 1, 0, 0] [70, 60, 0, 0] 2500
R2 [1, 0, 1, 0] [50, 0, 70, 0] 2000
R3 [0, 1, 0, 1] [0, 40, 0, 30] 2200
R4 [1, 1, 1, 0] [50, 80, 40, 0] 2300
R5 [1, 0, 1, 1] [40, 0, 20, 40] 2000
R6 [1, 1, 0, 0] [70, 60, 0, 0] 2500
R7 [1, 0, 1, 0] [50, 0, 70, 0] 2000
R8 [1, 0, 1, 1] [40, 0, 20, 40] 2000

5.3.2 Simulated Experiment #2

The second simulated experiment aims to assess the performance of the welfare-based
algorithm in diverse conditions by varying the number of robots in the system and
the number of tasks to be processed. The parameters of the eight robots considered
in this experiment are presented in Table 5.4.
In the first stage of the experiment, 4 to 8 robots were deployed into the system to
process 50 tasks. Figure 5.5 shows the comparison of the performance of the methods
in terms of average number of tasks completed and average resource consumption per
task. It can be seen in Fig. 5.5a that the welfare-based algorithm performs better than
the market-based method in terms of tasks completion ratio for any number of robots
in the system and regardless of the inequality aversion parameter ε. However, the
market-based method performs somewhat better than the welfare-based algorithm
in terms of resource consumption (see Fig. 5.5b).
In the second stage of the experiment, the number of tasks to be processed in the
system was varied to analyze the performance of the methods (30 to 80 tasks). In

Fig. 5.5 Performance comparison by varying the number of robots; reprinted from [2] with
permission from Elsevier (5, 091, 020, 736, 620)
5.4 Summary 65

Fig. 5.6 Performance comparison by varying the number of tasks; reprinted from [2] with
permission from Elsevier (5, 091, 020, 736, 620)

this setting, the first five robots shown in Table 5.4 (R1 to R5) were considered in the
experiment. Figure 5.6 summarizes the results for both performance measures. In
Fig. 5.6a, it can be seen that for a small number of tasks, the two analyzed methods
accomplish almost all tasks. However, as the number of tasks increases, the welfare-
based algorithm completes more tasks on average than the market-based method.
This is the result of balancing the resource levels among robots over time, keeping
all members available for a longer period before total depletion. Nevertheless, this
advantage of the welfare-based method comes at a higher cost in terms of resource
consumption per task, as it can be appreciated in Fig. 5.6b.
In summary, this experiment demonstrates that when a higher number of tasks is
expected, a higher level of preparedness is required for the team of robots in order to
increase the task completion ratio by balancing resource consumption. The welfare-
based algorithm becomes a valuable tool to achieve that objective. Analogous to
experiment #1, a key issue is how to determine the value of the inequality aversion
parameter for the algorithm.
Based on the results of both experiments, it can be concluded that there is no
general rule to choose the best value for this parameter, and it should be determined
for the specific context of the problem considering the objective of the system, the
number of robots in the system, their initial resource levels, the number of tasks,
and the characteristics of tasks and robots in terms of capabilities requirement and
capacity. A simulation approach would be useful to choose the most appropriate
value of parameter ε.

5.4 Summary

This chapter presented an algorithm that uses a resource welfare metric to allocate
tasks in multi-robot systems. The resource welfare measure was developed based
on the Atkinson social welfare function which allows to pursue simultaneously
66 5 Task Allocation in Multi-robot Systems—Resource Welfare

resource consumption minimization and task completion ratio maximization. The


algorithm was thoroughly presented with clear numerical examples that explain how
to implement it to make real-time decisions.
Two simulated experiments were performed to analyze the performance of the
developed algorithm in comparison with a market-based approach that pursues only
the resource consumption efficiency. The results demonstrated the superiority of the
algorithm and its robustness to different conditions of the system, specifically the
arrival rate of tasks and the number of robots in the system. The reason for the higher
performance is the higher level of preparedness that results from implementing the
welfare-based algorithm. Nevertheless, one key challenge in the implementation of
the algorithm is choosing the appropriate value of the inequality aversion parameter,
which has to be determined for the specific characteristics and context of the problem.
Chapter Review Questions
Question 1. What are the two main objectives in the multi-robot task allocation
problem, and why is this a complex problem?
Question 2. Briefly explain why the welfare-based algorithm is said to be a flexible
method to allocate tasks in a multi-robot system. What does flexibility mean in this
case?
Question 3. Show that when the inequality aversion parameter in the resource welfare
metric equals zero (ε = 0), the objective of the problem only aims at minimizing
resource consumption.
Question 4. For a coalition of four robots with remaining resource level 60, 205, 150,
and 75 resource units, respectively:
(a) Calculate the resource welfare with an inequality aversion parameter ε = 2.5.
(b) Now calculate the resource welfare with an inequality aversion parameter ε =
1.5 and compare this result with the one obtained previously in part (a). What
can you conclude about the difference in resource welfare values and the effect
of using a higher inequality aversion parameter?
(c) Assume that another possible coalition of three different robots could perform
the same task and that their remaining resource level would be 175, 120, and
105 resource units respectively. Using an inequality aversion parameter ε = 1.5,
decide to which coalition of robots the task should be assigned based on the
resource welfare measure.
Question 5. Assume that a task has just arrived and there are five robots available in
the multi-robot system as shown in Table 5.1:
(a) How many different coalitions could be identified to perform the task if it
requires capabilities “push”, “carry”, and “lift heavy”?
(b) How many different coalitions could be identified to perform the task if it
requires capabilities “pull”, “lift”, and “lift carry”?
References 67

(c) Calculate the resource welfare for all possible coalitions of robots identified in
part (b) using an inequality aversion parameter ε = 1.5. Which coalition should
be chosen based on the welfare-based algorithm?
Question 6. For the scenario shown in Table 5.3:
(a) How many different coalitions could be identified to perform a task that requires
the capability vector [1, 2]?
(b) Which coalition would consume the least total amount of resources?
(c) Calculate the resource welfare for all possible coalitions of robots identified in
part (a) using an inequality aversion parameter ε = 1.5. Which coalition should
be chosen based on the welfare-based algorithm?

References

1. Farinelli, A., Iocchi, L., & Nardi, D. (2004). Multirobot systems: a classification focused on
coordination. IEEE Transactions on Systems, Man, and Cybernetics, Part B (Cybernetics), 34(5),
2015–2028.
2. Kim MH, Kim SP, Lee S (2012) Social-welfare based task allocation for multi-robot systems
with resource constraints. Comput Ind Eng 63(4):994–1002
3. Gerkey BP, Mataric MJ (2002) Sold!: Auction methods for multirobot coordination. IEEE Trans
Robot Autom 18(5):758–768
4. Vig L, Adams JA (2007) Coalition formation: From software agents to robots. J Intell Rob Syst
50(1):85–118
5. Atkinson AB (1970) On the measurement of inequality. Journal of economic theory 2(3):244–
263
6. Seiver DA (1979) A note on the measurement of income inequality with interval data. Review
of Income and Wealth 25(2):229–233
Chapter 6
Resource Sharing in Cyber-Physical
Systems—Utility Welfare

6.1 Introduction to Resource Sharing-Based Framework


(RSBF)

Cyber-physical systems (CPSs) are multidisciplinary systems that integrate compu-


tation and communication capabilities on widely distributed embedded computing
networks which enable real-time, reliable, dynamic, and safe collaboration with phys-
ical engineered systems [1]. These systems typically work with limited resources
that are shared among CPS’s subsystems and other CPSs to perform a set of tasks
that results in utility for the whole system of systems. Sharing resources across
CPSs in a dynamic environment leads to complexities regarding the allocation of
these resources during the operation. In this context, tasks that require a certain
shared resource for their execution form a community, and in large-scale CPSs, these
communities commonly overlap across many components of the CPS.
Although there have been significant advances in the technologies that enable
CPSs, theory still lacks a general modeling framework to cope with different types of
CPSs. This chapter focuses on one of the initiatives reported in literature to overcome
this challenge, the Resource Sharing-Based Framework (RSBF) [2]. This framework
provides a flexible conceptual approach to represent complex CPSs and understand
their behavior to maximize utility for the whole system.
At its core, RSBF models CPSs as an overlapping network where nodes represent
tasks, and edges represent the link between tasks that share a specific resource. The
objective of RSBF is to maximize utility for the whole system subject to constraints
from availability of resources. Figure 6.1 shows an example of these overlapping
networks based on a manufacturing process that transforms Component 1 into a
finished product according to the RSBF model proposed in [2].
A particular characteristic of RSBF is that it uses a social welfare function to
combine the utility from the various task communities to maximize utility for the
whole system. To implement a social welfare function, a utility function must be
defined first for each task community, and then, the social welfare function aggregates
the utilities from all those communities. By using this approach, fairness in the

© The Author(s), under exclusive license to Springer Nature Switzerland AG 2023 69


F. Munoz et al., Engineering Applications of Social Welfare Functions, Automation,
Collaboration, & E-Services 13,
https://doi.org/10.1007/978-3-031-20545-3_6
70 6 Resource Sharing in Cyber-Physical Systems—Utility Welfare

Fig. 6.1 Example of overlapping networks of tasks and shared resources following the RSBF model
proposed in [2]

allocation of shared resources is increased among overlapping CPSs. The following


sections explain this framework in more detail.

6.1.1 Fundamentals of RSBF

This section introduces the fundamental concepts and terms used in RSBF as
presented in the original paper [2]. There are two main sets in any CPS: (1) a set of
tasks T to be executed in the system, and (2) a set of resources R that are used to
perform these tasks. A resource unit r ∈ R is any productive unit required to perform
an activity, for instance, labor, a machine, capital, land, etc. On the other hand, a task
t ∈ T is a piece of work that must be processed by one or several resources Rt ⊆ R
which may be shared with other tasks (within the same CPS subsystem or in other
CPSs).
In this approach, tasks can be grouped into task communities. For example, in the
context of a smart factory, a task community would comprise all operations required
to complete a specific job. As another example, consider a smart grid with several
factories and energy sources. In that case, a task community would be the completion
of an order for a given product across all factories. The criterion to determine these
communities is that all tasks within a community must be completed to create utility
for the task community: completing all operations of a job in the case of a smart
factory or meeting the demand of a certain product across all factories in the case of
a smart grid.
In RSBF, the set of task communities is denoted by A, and S a ⊆ T refers to the
set of tasks contained in task community a ∈ A. Following this notation, a utility
function U a must be defined for each task community a ∈ A, and its value depends
on how resources are allocated to tasks in the community. Task communities aim to
maximize the benefit they obtain from the resources allocated to them, therefore, the
6.1 Introduction to Resource Sharing-Based Framework (RSBF) 71

objective of each task community is to maximize its utility U a . On the other hand,
the utility of the whole CPS (denoted by U s ) is a function that aggregates utilities
obtained across all task communities.
Another important concept in RSBF is the resource sharing community which
groups tasks that share a specific resource unit r ∈ R. This set is denoted by T r .
This concept is important because in large CPSs it is not possible to use a central
coordinator to allocate resources to individual tasks due to the resulting computa-
tional complexity of that decision or because it is technically infeasible, for example,
when direct communication between components of the system and a central station
is not possible. In this case, it is more appropriate to implement a distributed
control approach where a coordinator in each resource sharing community allo-
cates resources for a task (Rt ) among tasks in a task community (t ∈ S a ) aiming to
maximize the utility for the task community (U a ). Under this distributed decision-
making approach, a social welfare function is used by the local coordinator to ensure
fairness in resource allocation. The underlying idea of this method is that such fair-
ness spreads across the complete CPS, which in turn maximizes the overall utility of
the system (U s ).

6.1.2 Utility Functions in RSBF

As mentioned before, the utility of a task community is a function of the resources


allocated to the tasks within the community. To make distributed resource allocation
decisions in the CPS, controllers in each resource sharing community must use
a resource sharing function among tasks from the resource r they control. Such
function may be modeled as a restricted function denoted by h|t (function restricted
to a particular task t). Using this concept, the resource sharing function hr for resource
r may be obtained as the union of functions restricted to a particular task, which can
be mathematically expressed as shown in Eq. 6.1.

(6.1)

The resource sharing function hr will be used by local coordinators to assess


changes in internal resource allocation among tasks within the same resource sharing
community.
On the other hand, the utility of a task community is a function that depends on
the utility of its tasks, which depends in turn on resource sharing community of each
task. Mathematically, utility of a task community can be expressed as presented in
Eq. 6.2.
 
Ua = g ' h r|t ∀r ∈ Rt , ∀t ∈ Sa (6.2)
72 6 Resource Sharing in Cyber-Physical Systems—Utility Welfare

Finally, the utility of the whole system can be obtained by aggregating the utility
of all task communities as shown in Eq. 6.3.

Us = g(Ua ∀a ∈ A) (6.3)

A particular characteristic of RSBF is that it implements a social welfare function


to obtain the utility of the system U s . For social welfare, task communities are consid-
ered as the population, and their individual utilities (U a ) represent their income.
As originally proposed by the authors of RSBF, an Atkinson’s welfare function is
suggested to calculate the utility of the system as shown in Eq. 6.4.
    1−ε
1

1  Ua 1−ε  Ua
Us = U wher e U = (6.4)
|A| a∈A U a∈A
|A|

In Eq. 6.4, parameter ε is called the inequality aversion parameter. When this
parameter equals zero, there is no penalty for inequality across task communities’
utility. The higher the value of the inequality aversion parameter, the higher the
penalty for inequality.

6.1.3 Coordination Among Local Coordinators

Under a distributed decision-making approach, local coordinators decide how to


allocate resources within their respective resource sharing communities based on
local information and incentives. This approach may destabilize the system and
create conflicts since local coordinators assume that resources are always available
for their communities. However, resource availability would depend also on decisions
made simultaneously by other local coordinators, which results in conflicts of using
shared resources.
For this reason, a fundamental idea in RSBF is that fairness in resource alloca-
tion may drive the system to a stable and optimal condition when local coordinators
make decisions aiming to reach equilibrium. The framework proposes to make deci-
sions in the following sequence: (1) resources are allocated first to task communities
based on their individual requirements while ignoring the interaction with other task
communities, (2) local coordinators interact to modify the allocation of resources as
required by task communities until reaching a feasible allocation, and (3) by using
a social welfare function, local coordinators modify resource sharing until system
equilibrium is achieved.
The original paper presents examples of the application of RSBF in a smart factory,
in a smart grid, and in information routing for multi-robot systems. The next section
focuses on the use of this approach in optimal scheduling in smart factories.
6.2 Application of RSBF to Flexible Job Shop Scheduling in Smart Factories 73

6.2 Application of RSBF to Flexible Job Shop Scheduling


in Smart Factories

In the context of manufacturing systems, a job shop refers to the generic system
architecture in which jobs that arrive to be processed at a given facility do not neces-
sarily have the same route. The route of a job specifies both the machines to visit in
each operation and the operations sequence. In the traditional job shop model, the
route of each job is fixed and known, which implies that the machine assigned to each
operation is determined when the job is released, and therefore, the processing time
of the operation is also known from the beginning. On the other hand, in a flexible
job shop, operations could be performed in any of several machines and processing
times might depend on the machine that is assigned to the operation. Consequently,
flexible job shops are more complex to manage than traditional job shops because
an additional decision must be made in selecting a machine for each operation.
Smart factories may be modeled as flexible job shops because of the high flex-
ibility offered by the autonomous machines and robots that collaborate connected
on the Internet. Scheduling operations in a flexible job shop aiming to optimize a
specified objective is called the Flexible Job-shop Scheduling Problem (FJSP). This
problem is very difficult to solve because of its computational complexity [3]. In
the static case, where all jobs are released at the beginning of the planning horizon,
this problem involves two decisions: (1) assigning a feasible machine to each oper-
ation, and (2) sequencing operations on each machine while satisfying precedence
constraints determined by jobs’ routes. The most common objective in FJSP liter-
ature is minimizing the makespan (maximum completion time of any operation).
Minimizing the makespan helps to reduce the idle time of all machines in the system
which translates into a higher efficiency.
To better understand the FJSP, take for example the numerical situation shown
in Table 6.1 where three jobs (J1, J2, and J3) need to be scheduled in a flexible job
shop that has four machines (M1, M2, M3, and M4). Jobs have several operations
which are labeled Oij , where i is the job number and j the operation sequence. In
total, eight operations must be scheduled in this problem. Table 6.1 also shows the
processing time of each operation in each feasible machine. For instance, the second
operation of the first job (O12 ) might be processed in machine M2 or M4. If machine
M2 were assigned to this operation, then processing time would be 8 time-units,
otherwise processing time would be 4 time-units in machine M4. The objective in
this scheduling problem is to minimize the makespan.
An arbitrary solution to the problem is presented in Fig. 6.2, where scheduling
decisions are graphically displayed using Gantt charts for each machine. The
makespan for that solution is 14 time-units which is the completion time of the
last operation in the set (operation O23 ). It can be clearly seen that this solution could
be further improved, for example, machine M2 was not assigned to any operation.
Therefore, moving one or more operations that could be performed in machine M2
might potentially yield a shorter makespan. This basic idea of starting with a feasible
74 6 Resource Sharing in Cyber-Physical Systems—Utility Welfare

Table 6.1 Numerical example of a FJSP taken from [4] where eight operations must be scheduled
in a system with four machines
Job Operation Processing time
M1 M2 M3 M4
J1 O11 2 6 5 3
O12 N/A 8 N/A 4
O13 4 N/A 3 6
J2 O21 3 N/A 6 N/A
O22 4 6 5 N/A
O23 N/A 7 11 5
J3 O31 8 6 3 5
O32 3 5 N/A 3

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
M1 O11 O21 O22
M2
M3 O31 O13
M4 O12 O32 O23

Fig. 6.2 Gantt chart of an arbitrary solution to the FJSP data set shown in Table 6.1

schedule and implementing iterative modifications to improve the performance of


the system is called an improvement heuristic algorithm.
A naive way of solving this problem would be evaluating all feasible machine
assignments and operation sequences in each machine. Such approach is called an
exhaustive search [5]. However, the number of feasible solutions is huge, even
in small-size problems, which makes this approach computationally infeasible.
Research on scheduling theory and algorithms is vast and the interested reader is
referred to [6] as good source of information on this topic.
The key insight from the small data set presented in Table 6.1 is that the FJSP
cannot be solved optimally in large-size problems due to the high computational
complexity, and for this reason, a heuristic approach must be implemented to find
a good solution. For more information about heuristic algorithms to solve the FJSP
see [7] and [8].
6.2 Application of RSBF to Flexible Job Shop Scheduling in Smart Factories 75

6.2.1 RSBF Framework to Solve the FJSP in Smart Factories

Before implementing RSBF to solve the FJSP, it is important to recognize the


elements of the framework for the specific characteristics of the problem. In this
context, a resource sharing community (T r ) comprises all the operations that could
be performed in a specific machine. For example, in the case presented in Table 6.1,
one resource sharing community is the set of operations T M2 = {O11 , O12 , O22 , O23 ,
O31 , O32 }; the set of all the operations that could be performed on machine M2. On
the other hand, a task community (a) comprises all the operations of the same job.
For instance, operations O31 and O32 form a task community as they make up all the
operations of job J3.
Finally, the utility of a task community (U a ) could be interpreted in this case as
the inverse of the completion time of the last operation of a specific job (the lower
the completion time, the higher the utility for the job), while the utility of the system
(U s ) could be determined by the inverse of the maximum completion time of all
operations in the system. For example, in the solution presented in Fig. 6.2, task
community utility for job J1 is U J1 = 1/9 = 0.1111. Meanwhile, total utility of the
system for that solution is U s = 1/14 = 0.0714, given that the maximum completion
time is 14 time-units (completion time of operation O23 ).

6.2.2 Steps to Implement RSBF to Solve the FJSP

This section shows the application of the RSBF to solve the FJSP aiming to minimize
the makespan. As discussed in Sect. 6.1.3, the first step to implement RSBF is to
allocate resources to each task community ignoring the interaction with other task
communities. For this case, it means that resources will be initially allocated to
each job ignoring the interaction with other jobs. Figure 6.3 shows the result of this
individual allocation where machines are assigned in order to minimize the makespan
of each job independently.
In Fig. 6.3, it can be observed that jobs compete for time slots on each machine to
perform their operations based on their individual schedules. For example, operations
O11 and O21 compete at time zero for machine M1. Based on this individual allocation
procedure, the next step is to generate a feasible schedule for all the operations in
the system. When two or more operations are competing for the same time slot on
any machine, a simple rule to define a feasible schedule is to choose an operation
that can be only performed in that machine as the primary criterion, and as a second
criterion, to choose the operation with the shortest processing time.
Returning to the numerical example, operations O11 and O21 compete at time zero
for machine M1. None of these operations have machine M1 as a unique machine
in their route, therefore, the shortest operation is chosen (second criterion) which
is operation O11 . On the other hand, operation O31 is easily assigned at time zero
to machine M3, as no other operation competes for that time slot. Continuing with
76 6 Resource Sharing in Cyber-Physical Systems—Utility Welfare

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
M1 O11 M1 O21 O22
M2 M2
M3 O13 M3
M4 O12 M4 O23

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
M1 O32
M2
M3 O31
M4

Fig. 6.3 Gantt charts for the individual allocation of resources for each job independently for the
FJSP data set shown in Table 6.1

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
M1 O11 O21 O32 O22
M2
M3 O31 O13
M4 O12 O23

Fig. 6.4 Gantt chart of an initial feasible schedule for the FJSP data set shown in Table 6.1

these simple rules to aggregate the individual schedules of each job, a first feasible
schedule is obtained, as illustrated in Fig. 6.4, where the makespan is 17 time-units.
After aggregating the individual task communities’ solutions into an initial
feasible schedule, now a social welfare function is implemented to modify the
schedule aiming to increase the utility function of the system (U s ) in each iteration.
Several methods could be randomly used at each iteration to search new solutions
in the neighborhood. According to the original paper [2], three basic operations are
useful for this heuristic search: (1) adding one operation to the machine with the
fewest number of operations, (2) choosing a random machine and removing then a
job that could be performed in another machine, and (3) interchanging the operating
sequence of any pair of adjacent operations on a given machine, if it is feasible to do
so.
Before starting with the iterations to search new schedule solutions in the neigh-
borhood, the utility of the system for the initial feasible solution must be calculated
first. As explained before, the utility of the system in RSBF is calculated based on
an Atkinson’s welfare function, as presented in Eq. 6.4. Assume that the inequality
aversion parameter is set to ε = 1.5. Hence, the utility for each task community (job)
is calculated based on the inverse of the completion time of each job as follows (see
Fig. 6.4): U J1 = 1/9 = 0.11111, U J2 = 1/17 = 0.05882, U J3 = 1/9 = 0.11111. Then,
Eq. 6.4 is used to aggregate these utilities which yields a social welfare (system
utility) of U s = 0.08782. Now the idea in each iteration is to improve this utility.
6.2 Application of RSBF to Flexible Job Shop Scheduling in Smart Factories 77

Moving O11 to M2: Moving O23 to M2:


1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
M1 O21 O32 O22 M1 O11 O21 O32 O22
M2 O11 M2 O23
M3 O31 O13 M3 O31 O13
M4 O12 O23 M4 O12

Moving O12 to M2: Moving O31 to M2:


1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
M1 O11 O21 O32 O22 M1 O11 O21 O32 O22
M2 O12 M2 O31
M3 O31 O13 M3 O13
M4 O23 M4 O12 O23

Moving O22 to M2: Moving O32 to M2:


1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
M1 O11 O21 O32 M1 O11 O21 O22
M2 O22 M2 O32
M3 O31 O13 M3 O31 O13
M4 O12 O23 M4 O12 O23

Fig. 6.5 Gantt charts of all possible movement of operations to machine M2 in the first iteration

Assume that in the first iteration, the first operation is randomly chosen (moving
an operation to the machine with the fewest number of operations). Hence, machine
M2 is chosen because it has the fewest number of operations, indeed, no operation at
all (see Fig. 6.4). Operations that could be added to this machine are the operations
in the resource sharing community T M2 = {O11 , O12 , O22 , O23 , O31 , O32 }. Figure 6.5
shows all the feasible schedules obtained by this method.
After identifying all the possible solutions in the neighborhood, the next step
is to choose the solution that maximizes utility for the system (U s ). For example,
let us calculate the social welfare function for the solution associated with moving
operation O11 to machine M2 (shown on upper left of Fig. 6.5). First, the utility for
each task community (job) is: U J1 = 1/13 = 0.07692, U J2 = 1/15 = 0.06667, U J3
= 1/6 = 0.16667. Then, Eq. 6.4 is applied to aggregate these utilities which yields
a social welfare of U s = 0.09131. Applying this same procedure to all the solutions
presented in Fig. 6.5, the highest social welfare is achieved when operation O32 is
moved to machine M2 (lower right solution in Fig. 6.5), which yields a social welfare
of U s = 0.09317. Given that this utility is higher than in the initial case (it was U s
= 0.08782 for solution in Fig. 6.4), then the first iteration ends by modifying the
schedule accordingly: operation O32 is moved to machine M2.
Assume that in the second iteration, the second operation was randomly chosen
(removing a job from a given machine), and that machine M3 was randomly selected
to apply this operation. At the beginning of the iteration, machine M3 has two oper-
ations assigned to it, operations O31 and O13 . According to the routes, operation O31
could be also performed in machines M1, M2, and M4, whereas operation O31 could
be alternatively moved to machines M1 and M4. Figure 6.6 shows the Gantt charts
of all these solutions in the neighborhood.
By applying the social welfare function to calculate utility for the system for each
of these solutions, it is concluded that moving operation O31 to machine M2 yields
the highest social welfare (U s = 0.08896). However, this welfare value is lower than
78 6 Resource Sharing in Cyber-Physical Systems—Utility Welfare

Moving O31 to M1: Moving O13 to M1:


1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
M1 O31 O11 O21 O22 M1 O11 O21 O22 O13
M2 O32 M2 O32
M3 O13 M3 O31
M4 O12 O23 M4 O12 O23

Moving O31 to M2: Moving O13 to M4:


1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
M1 O11 O21 O22 M1 O11 O21 O22
M2 O31 O32 M2 O32
M3 O13 M3 O31
M4 O12 O23 M4 O12 O13 O23

Moving O31 to M4:


1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23
M1 O11 O21 O22
M2 O32
M3 O13
M4 O31 O12 O23

Fig. 6.6 Gantt charts of all possible solutions in the neighborhood in the second iteration (removing
an operation from machine M3)

the case at the beginning of the iteration (it was U s = 0.09317). Consequently, no
modification is made in this iteration.
The idea of the algorithm in RSBF applied to the FJSP is to continue exploring
new solutions in the neighborhood in each iteration by implementing a random
operation and moving to an improved schedule when a higher social welfare (utility)
is achieved. This procedure is repeated until reaching equilibrium, meaning that
social welfare can no further be improved.

6.2.3 Performance of RSBF Application to the FJSP

The performance of the RSBF approach was compared in [2] with other heuristic
and metaheuristic techniques in solving several benchmark problems in job shop
scheduling. The comparison showed that RSBF achieved good results in very
less computational. The benchmark problems in that study included: LA01 with
5 machines and 10 jobs, LA06 with 5 machines and 15 jobs, LA11 with 5 machines
and 20 jobs, LA16 with 10 machines and 10 jobs, LA21 with 10 machines and 15
jobs, LA26 with 10 machines and 20 jobs, and LA31 with 10 machines and 30 jobs.
The advantage of getting good results in very less computational time is that RSBF
may be effectively incorporated into systems that need to schedule operations in
real-time.
6.3 Application of RSBF to Other Cyber-Physical Systems 79

6.3 Application of RSBF to Other Cyber-Physical Systems

The authors of the RSBF approach suggested other two important cyber-physical
systems where the method could be effectively applied [2]: energy distribution
through smart grids and information routing in resource-constraint multi-robot
systems. The application of RSBF to these systems is briefly discussed in the
following sections.

6.3.1 Optimal Energy Distribution Through a Smart Grid

In this case study, a system of CPSs from power distribution through a smart grid is
analyzed. Assume that there is a set of energy sources G, for example power plants,
wind farms, and solar farms. On the other hand, there is a set of factories F (cyber-
physical systems). Electricity prices depend on the time of the day due to demand
patterns, and the day is divided into a set H of 1-h time periods. Therefore, electricity
cost for time period i ∈ H is yi . Figure 6.7 illustrates the system of CPSs.
Factories plan hourly electricity demand with an anticipation of one day and
communicate their plan to the energy providers. Electricity demanded by factory f
∈ F from source g ∈ G for hour i ∈ H is denoted by efg i . The objective of the grid is
to minimize overall energy consumption cost, while the objective of each individual
factory is to minimize its total electricity cost. The set of products that are produced

Fig. 6.7 Representation of energy distribution problem in RSBF analyzed in [2]


80 6 Resource Sharing in Cyber-Physical Systems—Utility Welfare

in the system is J, and d j is the energy required to produce one unit of product j ∈
J. For the case study, it is assumed that the electric energy available in a factory is
available to all the products.
Based on the described situation, the resource sharing function hr for a task (d j
in this case) on resource g ∈ G is given in Eq. 6.5, where pj is the proportion of
total energy for product j ∈ J as a measure of the number of units produced relative
to total demand N jf . The utility of a task community is presented in Eq. 6.6 and it
corresponds to the number of products produced in terms of electric energy supplied.
On the other hand, the utility of the overall system is calculated in Eq. 6.7 which
corresponds to total energy consumption cost.

eif g p j
i∈H
hr = , ∀ f ∈ F, ∀g ∈ G (6.5)
dj Nj f
∑ ∑ ∑ i
e fg pj
g∈G f ∈F i∈H
Ua = (6.6)
Njf

Us = eif g y j (6.7)
g∈G f ∈F i∈H

This case study shows how RSBF can be implemented to optimal energy distribu-
tion in factories with its utility functions. Alternative utility functions may be defined
depending on the objective and formulation of the problem. Following the notation
introduced in [2], a resource community comprises products using energy from the
same source g, a task is the energy supplied for product d j , a task community is
the completion of demand of an order of N jf units, and utility of the system is total
energy consumption.

6.3.2 Optimal Information Routing in Resource-Constraint


Multi-Robot Systems

This case study shows the application of RSBF to a dynamic environment where a
network of wireless sensors forms a multi-robot system. The purpose of the system
of sensors is to transmit data related to events that occur in a given area to a central
base station for consolidation and processing. The problem is that each sensor has
a limited level of energy (provided by its battery) and data transmission consumes
an amount of energy that is proportional to the square of the distance between the
sender and the receiver (see Chap. 2). For this reason, it would be more effective
in some cases to relay data to other sensors located in the neighborhood instead of
transmitting data directly to the central base station over a long distance.
6.4 Summary 81

The network consists of a set N of wireless sensors, where each sensor i ∈ N


interacts with a subset of sensors N i located in its neighborhood. Transmission of a
data packet from sensor i ∈ N to sensor j ∈ N i in the neighborhood requires eij energy
units of sensor i. Similarly, transmitting a data packet directly to the central base
station requires eib energy units of sensor i. The residual energy level of sensor i ∈ N
at a given moment is E i . Lifetime of the network is measured based on the number
of functional sensors L n that are still active after transmitting t data packets.
In this system, a task community corresponds to all data transfers between the
sensor that originates the data packet and the central base station. On the other hand,
the resource community includes all the sensors involved in data transmission from
sender i ∈ N to the central base station, and a task corresponds to each data packet
transfer between any pair of nodes that interact in the system. The overall objective
of the system is to maximize the lifetime of the network (L n ). Following the notation
introduced in [2], a resource community comprises sensors involved in data trans-
mission from origin to central base station, a task represents data transferred between
two nodes t ij , a task community is composed of the steps involved in transmitting
data from sensor i to central base station b, and utility of the system is lifetime of the
sensor network after transmitting t data packets.
Equation 6.8 presents the restricted resource sharing function h|t for this case.
Then, Eq. 6.9 shows how to calculate the utility of a task community, where x ij = 1
if data is transferred from sensor i ∈ N to sensor j ∈ N. Finally, Eq. 6.10 calculates the
utility of the system based on the number n of active sensors. Given the similarity
between this problem and the system analyzed in Chap. 2, the concept of energy
welfare using social welfare functions can be applied directly to this case too.

eib (data to central base)


h r|t = (6.8)
ei j (data to sensor j)
1
Ua = ∑ (6.9)
ei j xi j + eib xib
j∈Ni

Us = n|E i , ∀i ∈ N (6.10)

6.4 Summary

This chapter introduced the Resource Sharing-Based Framework (RSBF) as a general


approach to represent cyber-physical systems. In summary, RSBF models cyber-
physical systems as an overlapping network of tasks and resources and implements
a social welfare function to maximize the utility for the whole system based on
decisions made by local coordinators. The chapter showed how to conceptually
map tasks and resources of the system into task communities and resource sharing
82 6 Resource Sharing in Cyber-Physical Systems—Utility Welfare

communities. Three applications of RSBF to cyber-physical systems were discussed


throughout the chapter, however, the application to smart factories was analyzed in
greater detail.
The main characteristics of the flexible job shop scheduling problem in smart
factories and its high computational complexity were also discussed in this chapter.
Compared to other solution techniques proposed in literature, RSBF proved to find
good solutions to the flexible job shop scheduling problem in very less computa-
tional time, when the objective of the system is makespan minimization. The results
demonstrated that RSBF is an effective approach to support real-time scheduling
decisions which is critical in cyber-physical systems like smart factories.
Chapter review questions
Question 1. Explain in your own words what is the Resource Sharing-Based
Framework (RSBF).
Question 2. Briefly explain the three key steps for implementing RSBF.
Question 3. What is the main difference between the Job Shop Scheduling Problem
(JSP) and the Flexible Job Shop Scheduling Problem (FJSP)? What does that differ-
ence imply in terms of computational complexity? Illustrate your answer with a
numerical example.
Question 4. Summarize the network structure of the RSBF model applied to the
Flexible Job Shop Scheduling Problem (FJSP) on a table (use Figs. 6.3 and 6.4 as a
reference).
Question 5. For the numerical FJSP presented in Table 6.1:
(a) Ignoring the operations sequence decision in each machine, how many different
schedules could be generated for this problem?
(b) Try to find a schedule by trial and error that yields a better result (a shorter
makespan) than the solution presented in Fig. 6.2.
Question 6. For the solutions in the neighborhood presented in Fig. 6.5 for the first
iteration of the heuristic search using RSBF:
(a) Aggregate the utility of all task communities (jobs) using Eq. 6.4 with an
inequality aversion parameter of ε = 1.5 and verify that the solution with the
highest social welfare in that iteration is moving operation O32 to machine M2.
(b) Recalculate social welfare utility in part (a) but using an inequality aversion
parameter of ε = 2.5 instead. Does it change the decision on which solution to
choose in that iteration?
(c) Assume that the operation applied in the second iteration is to remove a job
from machine M1 (instead of machine M3). Create all the Gantt charts of the
solutions in the neighborhood and evaluate the social welfare function in all of
them using an inequality aversion parameter of ε = 1.5. What would be the
decision in that iteration?
References 83

References

1. Liu Y, Peng Y, Wang B, Yao S, Liu Z (2017) Review on cyber-physical systems. IEEE/CAA J
Autom Sin 4(1):27–40
2. Nayak A, Reyes Levalle R, Lee S, Nof SY (2016) Resource sharing in cyber-physical systems:
modelling framework and case studies. Int J Prod Res 54(23):6969–6983
3. Garey MR, Johnson DS, Sethi R (1976) The complexity of flowshop and jobshop scheduling.
Math Oper Res 1(2):117–129
4. Liangxiao J, Zhongjun D (2015) An improved genetic algorithm for flexible job shop scheduling
problem. In: 2015 2nd international conference on information science and control engineering.
IEEE, pp 127–131
5. Michalewicz Z, Fogel DB (2013) How to solve it: modern heuristics. Springer Science &
Business Media
6. Pinedo ML (2016) Scheduling. Springer International Publishing AG, Cham
7. Xie J, Gao L, Peng K, Li X, Li H (2019) Review on flexible job shop scheduling. IET Collab
Intell Manuf 1(3):67–77
8. Gao K, Cao Z, Zhang L, Chen Z, Han Y, Pan Q (2019) A review on swarm intelligence and
evolutionary algorithms for solving flexible job shop scheduling problems. IEEE/CAA J Autom
Sin 6(4):904–916
Chapter 7
Conclusion, Limitations, and Research
Opportunities

7.1 Conclusion and Discussion

We have introduced research results of social welfare applied in five different engi-
neering applications, defining various welfare metrics pertaining to the characteristics
of the application.
The “energy welfare” in wireless sensor network measures richness of sensors in
energy and a routing decision is made such that the energy welfare of each local sensor
society is maximized. When local sensor societies try to maximize their respective
energy welfare, globally efficient energy-balancing emerges over the entire sensor
network leading to the extension of its lifetime.
The “preparedness welfare” in emergency medical services quantifies the
preparedness level of a service area by aggregating preparedness levels of individual
zones. For each emergency call received, a dispatching decision is made such that
the preparedness welfare is maximized thereby enabling to reduce response times of
next incoming calls.
The “preference welfare” in intelligent shared environments leads to the decision
that corresponds to the opinions of real people for groups. The preference welfare
combines all the three important properties of preference distribution (average,
fairness, and misery) which people usually consider for their decisions for groups.
The “resource welfare” in multi-robot task allocation quantifies the efficiency of
utilizing distributed (consumable) resources across robots. When the alternative is
selected that results in the highest resource welfare minimizing resource consumption
and at the same time minimizing inequality, more robots keep active over time and
thus the robot team becomes well prepared for dynamic events in the future.
The “utility welfare” in complex cyber-physical systems enables to achieve global
performance through local resource-sharing efforts. Each individual resource coordi-
nator allocates its shared resource to the participating task communities, such that the
utility welfare of the entire society (composed of task communities) is maximized.
This leads to spreading the fairness across the complete CPS and in turn maximizing
the overall welfare of the system.

© The Author(s), under exclusive license to Springer Nature Switzerland AG 2023 85


F. Munoz et al., Engineering Applications of Social Welfare Functions, Automation,
Collaboration, & E-Services 13,
https://doi.org/10.1007/978-3-031-20545-3_7
86 7 Conclusion, Limitations, and Research Opportunities

7.2 Limitation and Challenges

The notion of social welfare can be applied in various engineering applications


providing opportunities to design dynamic resource allocation decision models in
a unified framework. The core challenge here will be how to define the welfare
metric appropriate to the application based on its performance goals and operating
characteristics and constraints. We present several other limitations and challenges
that are meaningful to explore to take full advantage of the opportunities that this
unified framework can offer.
Heterogeneity of members: Members of a society may not be homogeneous in
their social influence (or importance) within the context of the engineering applica-
tion, making it unreasonable to treat them equivalently when computing welfare of
the society. For example, wireless sensors may be different in importance of their
sensed data, mobile robots may have different capacity or versatility levels, inhabi-
tants of a shared environment may be different in their sensitivity to the environment,
and zones in an emergency medical service area may have different rates of urgent
calls. It is therefore imperative to develop a methodology of incorporating the social
influence structure into the aggregation process.
For given social influences (or weights) of members, we can transform the hetero-
geneous society into a homogeneous one so that the social welfare function can
be directly applied. There could be two transformation methodologies. One is to
multiply in-dividual quantities (e.g., energy levels) by their influences. However,
this method has a critical limitation because it amplifies inequality if a decision is
beneficial to more influential entities. Another method is a population-based trans-
formation (Fig. 7.1) that duplicates each quantity proportional to its influence. This
method seems reasonable at a glance but requires a careful examination by defining
certain desirable properties (similar to the four properties of social welfare function
discussed before).

Fig. 7.1 Transformation by population


7.2 Limitation and Challenges 87

Decentralized coordination: Maximizing welfare of a society is basically solving


an optimization problem with a (nonlinear) social welfare function as performance
objective and causal effects and allowed ranges of (discrete or continuous) decision
variables as constraints. However, there could be practical difficulties when solving
the optimization problem. Since the problem needs to be solved frequently in different
local societies at different times, it is necessary to be able to quickly solve the problem
to support real-time decisions even though the problem size is large (e.g., thousands
of inhabitants in an intelligent airport environment).
Because data or information of individual members can be misused by some
malicious entities, information security/confidentiality needs to be supported by pre-
venting members from directly revealing their sensitive information. A member may
want to send false information for its own benefits, for example if the society consists
of self-interested people or multi-institutional artifacts, which then requires an incen-
tive compatibility mechanism design that aligns incentives for truthful information
revelation. It is a challenging topic to develop a decentralized coordination method
to overcome all these barriers, and market-based approaches such as auction markets
(solving problems through a bidding process) can be a plausible methodological
framework.
Parameter calibration: Applying the notion of social welfare requires choosing
an appropriate welfare function and its inequality aversion parameter (if Atkinson
function is chosen). Though availability of different welfare functions and provi-
sion of adjustable parameter enhance methodological flexibility to adapt to different
application environments, it adds difficulty in calibrating the methodology according
to the characteristics of each application environment. The calibration is laborious
and time-consuming since each possible choice has to be tested in various possible
scenarios of the application. So, desirable is to design a parameter matching func-
tion in advance that relates environment features to the best parameters to apply, for
example employing a machine learning technique such as neural network.
Behavioral constraints: The system can exhibit wasteful behaviors, for example,
extensive detours, recirculation (coming back to the same location), and dead-locks. It
would be possible to identify, theoretically or experimentally, certain conditions that
can avoid such undesirable behaviors, in the choice of welfare function or inequality
parameter. In our previous work, for example, we identified a constraint in the wire-
less sensor network where each sensor routes sensed data to the base station through
their neighboring sensors. Our proposed routing method was to select a neighboring
sensor that will result in maximum energy welfare of the local sensor society; and
within this decision framework, we could prove that a data packet will not be recir-
culated to the same sensor node if the Atkinson welfare function with ε > 1 is used
(see Chap. 2).
88 7 Conclusion, Limitations, and Research Opportunities

7.3 Research Opportunities in Emerging Applications

We present research opportunities in several (emerging) applications, where the social


welfare can play a significant role.

7.3.1 Production Scheduling

Manufacturing companies are confronted with multifaceted challenges such as


volatile demand, highly customized products, and short product lifecycles. Frequent
occurrence of social/natural outbreaks has led to the surge of unprecedented disrup-
tions in manufacturing systems and their supply chains, such as facility shutdowns
and overwhelming demands. The so-called “Industry 4.0” has emerged to cope with
these challenges as an initiative to exploit various digitization enabling/enabled tech-
nologies—IoT/IoS, Big Data/Cloud Computing, AI/machine learning, augmented
reality, 3D printing, and collaborative/autonomous robots. This concept reshapes the
structure and methods upon which factories operate, and fosters the “smart factory”
that supports the capability of managing such increasingly “complexified” factory
dynamics, such as data-driven predictive analytics and real-time planning/operational
decision support.
However, though the denominated “Industry 4.0” provides the “necessary” digital
transformation technologies (see Fig. 7.2), it does not instruct how to apply the data
to operate a complexified factory. “Scheduling” is responsible for the bridging role,
which is a real-time decision/coordination process that assigns tasks (machining,
assembling, inspecting, transporting, assisting) to resources (machines, tools, vehi-
cles, robots, operators) over time—thus governing the dynamics of the factory.
Scheduling, however, has long been unsolved due to its intractability in computational
complexity and sensitivity to changes in system configurations and dynamics. Real
factories are continuously and increasingly subject to dynamic changes/disruptions
in both external demands and internal resources (including human resources)
and existing scheduling techniques fall behind with their ability to address such
challenges of future manufacturing.
It is possible to design a scheduling technique from a completely different perspec-
tive, by introducing the “workload welfare.” The workload of a machine can be
defined as total remaining process time of the jobs for their current operations or for
their remaining operations. When making a scheduling decision such as job selection
or machine selection, the workload welfare of (local) machines can be computed for
each decision alternative and the decision maximizing the welfare can be chosen.
This scheduling mechanism will reduce and at the same time balance workloads of
individual machines, thus minimizing occurrences of bottlenecks and leading to high
throughput and high resource utilization.
7.3 Research Opportunities in Emerging Applications 89

Triggers material
handling vehicles
Navigate with Remote monitoring of
maps and sensors equipment/tool health
conditions

Collect
map data Robot Transport
lot size of 1
assistant
Volatile Augmented Augmented
demand Cobot reality reality Cobot
Manufacture
to order
Customized 3D printer
products of Collaborate
lot size 1 with human
workers
Avoid
On-demand collisions
assistance 3D printer
Sensing products Autonomous material
and materials handling vehicle
Navigate with
maps and sensors

Fig. 7.2 Production scheduling

7.3.2 Foodbank Operation Guidance

In the United States (see Fig. 7.3), 200 regional foodbanks collect donated, purchased,
and government-supplied foods, and distribute them to their 60,000 locally affiliated
food agencies which will provide groceries and hot meals, through their meal pro-
grams such as food pantries and soup kitchens, to annually 46 million Americans
exposed to food insecurity (16 million are children) [1]. The core principles governing
the distribution of foods to the agencies are “as much as possible” and “as equi-
table as possible.” Accordingly, food distribution of a foodbank is typically planned,
executed, and evaluated in performance indices such as total pounds distributed and
distribution equity among counties (or agencies).

200
Food Banks
60,000
Food Pantries & Meal Programs
46,000,000
Americans Served

Fig. 7.3 Foodbank operation guidance


90 7 Conclusion, Limitations, and Research Opportunities

Two fundamental issues can be pointed out here regarding the distribution perfor-
mance metrics that will drive the way food distribution operations are conducted.
First, due to the lack of appropriate tradeoff between total and equity, various distribu-
tion strategies can be applied, possibly producing irrational outcomes. For instance,
consider three agencies responsible for equal-sized food-insecure populations. If one
takes more into account the equity, a food distribution solution [100 100 100] can be
preferred to its alternative solution [100 150 100], though the latter clearly dominates
the former.
Second, the performance indices are based on the quantity alone despite the fact
that nutritional quality has a potential to make a critical difference in the health
outcome of recipients. Together with concerns about obesity and diet-related chronic
diseases such as diabetes, foodbanks are increasingly aware of the need to improve the
nutritional quality of charitable foods, in the form of nutrition profiling (quantitatively
score the nutritional value), nutrition policies (guide efforts to eliminate unhealthy
products such as soda or candy), or fresh produce (increase to fill the nutritional
gaps) [2, 3]. However, no attention has been paid to date on how to distribute foods
in a nutrition-rich or nutrition-balanced manner.
To overcome these problems, the “nutrition welfare” can be defined as a guidance
for food bank operation, which trades off between the total and equity and at the same
time consider both quantity (hunger) and quality (health). The nutrition welfare can
be computed by a social welfare function upon the Healthy Eating Index (HEI)
values of counties or agencies. HEI is a measure of nutrition quality of foods created
by the USDA in 1995 and it is a standardized way to quantify adherence to the
Dietary Guidelines for Americans [4]. The latest iteration of the HEI is the HEI-2015,
which provides an overall score on a 0–100 point scale based on thirteen nutrient
components. There are strong evidences that the HEI is a valid and reliable measure
of diet quality, inversely related with risk of major chronic diseases, overweight and
obesity, and all-cause mortality.

7.3.3 Multi-Robot Navigation

Autonomous delivery robots such as aerial drones, ground robots, and those used for
material handling within a facility, offer distinguished benefits in delivery speed and
cost savings [5–8]. However, due to the expected surge of robot adoption in various
delivery services, the society will face an unprecedented problem, “the congestion
with delivery robots,” in urban skies, on the streets, and within facilities. As more and
more robots are deployed, congestion-induced inefficiencies will become vital, such
as heightened chance of collisions between robots or with humans and other mobile
objects, and delayed deliveries caused by collision-avoiding motions or detours.
Collisions can be further extended to the secondary accidents, for example, if drone
debris fall on the ground vehicles, pedestrians, or roads. As such, congestion can
become a limiting factor of robot delivery systems hindering their promise.
7.3 Research Opportunities in Emerging Applications 91

Multi-robot navigation problem (Fig. 7.4), which is the core task in delivery logis-
tics, has a direct relation with the congestion issue. To address the congestion from the
navigation perspective, it can be propositioned that a motion or a sequence of motions
of a robot will be adverse to the long-term performance of the entire delivery system
if it tends to escalate local or global congestion. Therefore, individual robots need
to pursue three multiscale performance goals when navigating towards their destina-
tions: (1) self delivery performance, (2) local congestion, and (3) global congestion.
These three goals when pursued by individual robots are expected to collectively and
systematically lead to favorable delivery performance of the entire delivery system.
Distance is the shortest distance to reach a destination avoiding stationary obstacles.
Local congestion can be measured in weighted degree of the robot node with respect
to all other mobile entities (robots, humans, and mobile objects). Global congestion
is an aggregation of local congestion levels of individual robots. The “congestion
welfare” can be defined here to represent the global congestion level of the robot
society combining both average and inequality of local congestion levels—to better
represent robustness and preparedness of the robot delivery system for future tasks
and events.

goal

Fig. 7.4 Multi-robot navigation


92 7 Conclusion, Limitations, and Research Opportunities

References

1. Feeding America, https://www.feedingamerica.org/


2. Campbell E, Webb K, Ross M, Crawford P, Hudson H, Hecht K (2015) Nutrition-focused food
banking. Discussion Paper, Institute of Medicine, Washington, DC. http://nam.edu/wp-content/
uploads/2015/06/Foodbanking
3. Handforth B, Hennink M, Schwartz MB (2013) A qualitative study of nutrition-based initiatives
at selected food banks in the Feeding America network. J Acad Nutr Diet 113(3):411–415
4. Healthy Eating Index, https://www.fns.usda.gov/healthy-eating-index-hei
5. Zaveri M (2019) Wing, owned by Google’s parent company, gets first approval for drone deliv-
eries in US. The New York Times. https://www.nytimes.com/2019/04/23/technology/drone-del
iveries-google-wing.html
6. UPS (2019) UPS flight forward attains FAA’s first full approval for drone airline. https://www.
pressroom.ups.com/pressroom/ContentDetailsViewer.page?ConceptType=PressReleases&id=
1569933965476-404
7. Palmer A (2020) Amazon wins FAA approval for Prime Air drone delivery fleet.
CNBC. https://www.cnbc.com/amp/2020/08/31/amazon-prime-now-drone-delivery-fleet-gets-
faa-approval.html
8. Edwards D (2020) Amazon now has 200,000 robots working in its ware-houses. Robot.
Autom News. https://roboticsandautomationnews.com/2020/01/21/amazon-now-has-200000-
robots-working-in-its-warehouses/28840/
Index

A Euclidian distance, 44, 46, 47, 52, 54


Algorithm, 8–24, 28–31, 34, 36, 38–41, Exhaustive search, 74
56–58, 60–67, 74, 78 Experiment, 18, 20, 50, 52, 61, 63–65
Allocation, 1, 3, 55–57, 60, 61, 66, 69–72,
75, 76, 85, 86
Ambulance, 1, 25–31, 33, 34, 36, 38–40 F
Atkinson, 2, 3, 46–49, 52–54, 56, 65, 72, Fairness, 69, 71, 72, 85
76, 87 Flexible job shop, 73, 82
Average satisfaction, 43–48, 52, 54

G
C Gini index, 2, 36, 37
Centralized, 7, 9, 23, 55 Greedy, 8, 9, 55
Coalition, 55–58, 60, 61, 66, 67 Group decision-making, 43, 44, 47, 51
Common agreement, 44 Group preference, 1
Communication network, 5, 11, 15, 24
Community, 69–71, 75–77, 80, 81
Computational complexity, 71, 73, 74, 82, H
88 Heuristic, 74, 76, 78, 82
Coordination, 4, 87, 88
Coverage, 25, 27, 28
Cyber-physical systems, 1, 69 I
Inequality, 1–4, 10–13, 15, 18, 23, 24, 36,
38, 46, 47, 49, 50, 52, 53, 56–58,
D 60–67, 72, 76, 82, 85–87, 91
Dagum welfare, 2, 36, 37, 49, 52, 53
Data routing, 1
Dispatching, 1, 26–40, 85 L
Distributed, 3, 5, 7–10, 16, 19, 22, 23, 55, Lifetime, 5, 9, 10, 16, 17, 19, 20, 22, 23, 81,
56, 69, 71, 72, 85, 89 85
Lorenz curve, 2, 36, 37

E
Emergency medical services, 1, 25, 85 M
Emergent property, 4, 13 Makespan, 73, 75, 76, 82
Energy welfare, 10–13, 24, 81, 85, 87 Market-based method, 60–65
© The Editor(s) (if applicable) and The Author(s), under exclusive license 93
to Springer Nature Switzerland AG 2023
F. Munoz et al., Engineering Applications of Social Welfare Functions, Automation,
Collaboration, & E-Services 13,
https://doi.org/10.1007/978-3-031-20545-3
94 Index

Masthoff’s experiment, 50 Robustness, 13, 18–20, 22, 27, 36, 39, 66,
MaxEW algorithm, 10–24 91
Misery, 43–50, 52–54, 85 Routing, 5–16, 18, 19, 22, 23, 72, 79, 80,
Multi-robot, 1, 55, 90, 91 85, 87

N S
Neighborhood, 5, 11, 24, 76–78, 80–82 Scheduling, 72–74, 78, 82, 88, 89
Sen welfare, 1, 2, 36, 37, 49, 52, 53
Sequencing, 52, 73
P Shared environment, 1, 43, 46, 51–53, 85
Performance, 1, 3, 16–19, 21, 22, 25–28, Simulation, 31, 34, 38, 60, 61, 63, 65
31, 33–35, 38–40, 46, 51, 53, 55, Smart factory, 70, 72, 88
60–62, 64–66, 74, 78, 85–87, 89–91 Smart grid, 70, 72, 79
Policies, 27–29, 33, 90 Social agreeability, 44, 47, 49, 53, 54
Preference, 43, 44, 46, 47, 50–54, 85 Social influence, 43, 51, 53, 54, 86
Preparedness, 12, 27–32, 34, 36–41, 56, Social welfare, 1–3, 10, 22, 28, 36, 38, 39,
57, 60, 65, 66, 85, 91 46, 47, 49–53, 56, 65, 69, 71, 72,
76–78, 81, 82, 85–88, 90
Stochastic dominance, 28, 40
R
Readiness, 55
Real-time, 22, 26, 27, 40, 55, 66, 69, 78,
82, 87, 88 T
Reliability, 55 Task completion, 55, 60, 62, 63, 65, 66
Resource consumption, 55, 56, 58–66, 85
Resource sharing, 1
Resource Sharing-Based Framework, 69, U
81, 82 Utility welfare, 85
Resource sharing function, 71, 80, 81
Resource welfare, 56–58, 60, 61, 65–67, 85
Response time, 25, 27–29, 31, 33–35, W
38–40 Wireless sensor, 1, 5–8, 10, 17, 80, 81, 86
Restricted function, 71 Wireless sensor networks, 1, 5, 10, 19, 22,
Robot, 55–58, 60–67, 73, 85, 86, 88, 90, 91 23

You might also like

pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy