0% found this document useful (0 votes)
3 views27 pages

A Genetic Algorithm-Based Approach For Placement in The Fog of Latency-Sensitive Multiplayer Game Servers

This paper presents a Genetic Algorithm-based approach for optimizing the placement of latency-sensitive multiplayer game servers in Fog computing environments. It addresses the challenges of resource management and server placement to minimize costs and latency while ensuring a high Quality of Experience (QoE) for players. The proposed method includes both static and dynamic models, demonstrating effective performance through extensive simulations.

Uploaded by

leyaufpi
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)
3 views27 pages

A Genetic Algorithm-Based Approach For Placement in The Fog of Latency-Sensitive Multiplayer Game Servers

This paper presents a Genetic Algorithm-based approach for optimizing the placement of latency-sensitive multiplayer game servers in Fog computing environments. It addresses the challenges of resource management and server placement to minimize costs and latency while ensuring a high Quality of Experience (QoE) for players. The proposed method includes both static and dynamic models, demonstrating effective performance through extensive simulations.

Uploaded by

leyaufpi
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/ 27

Cluster Computing

https://doi.org/10.1007/s10586-024-04521-4 (0123456789().,-volV)(0123456789().
,- volV)

A Genetic Algorithm-based approach for placement in the fog


of latency-sensitive multiplayer game servers
Amira-Rayane Benamer1 • Nejib Ben Hadj-Alouane1,3 • Khaled Boussetta2 • Atidel B. Hadj-Alouane4

Received: 3 January 2024 / Revised: 17 April 2024 / Accepted: 18 April 2024


 The Author(s), under exclusive licence to Springer Science+Business Media, LLC, part of Springer Nature 2024

Abstract
First-Person Shooter (FPS) games are among the most popular latency-sensitive multiplayer online games. A separate
game server manages each multiplayer group hosted appropriately to meet the given Quality of Service (QoS) and Quality
of Experience (QoE) requirements of the game and the players. Cloud computing is typically used to host these game
servers to cope with changing workload requirements, given its elasticity, scalability, and on-demand provisioning
characteristics [1]. However, the Cloud still suffers from known latency limitations, especially when dealing with latency-
sensitive applications such as FPS games. Hence, Fog computing can be a good alternative for hosting FPS game servers,
given that Fog nodes hosting the servers can be placed close to the players, thereby reducing latency. However, a careful
resource management is necessary given the Fog’s capacity unpredictability. This paper introduces an optimization-based
game server placement approach that minimizes server costs while optimizing latency delays and, eventually, QoE for the
players. A static model for the server placement problem is formulated as an Integer Linear Program (ILP) with valid
inequalities. Given the complexity of the problem, a resolution strategy based on a non-linear, double penalty relaxation
technique in conjunction with a proven Genetic Algorithm (GA) is developed. A dynamic version of the placement
problem is also formulated to cope with the realistic scenarios dealing with changing multiplayer groups and Fog servers. A
two-step dynamic scheme, based on the developed GA, is applied. Extensive simulations are conducted showing a good
performance of the proposed approach both in terms of solution quality and execution time.

Keywords Latency-sensitive games  FPS  Integer programming  Fog  Genetic Algorithm  Quality of experience

1 Introduction games and moderate-paced games. Typically, servers


hosting fast-paced, highly interactive games, such as First-
The online gaming market has consistently recorded high Person Shooters (FPS), can only support dozens of players.
revenues, reaching $180 billion by 2021 [2]. According to These games are highly computationally and network-in-
the speed of their interactions, online games can be non- tensive. Studies conducted on FPS games in [3], have
exhaustively classified into two categories: fast-paced demonstrated that player performance and quality of

2
L2TI, Institut Galilée, University Sorbonne Paris Nord, Paris,
& Amira-Rayane Benamer France
[email protected]
3
Electrical and Computer Engineering Department, American
Nejib Ben Hadj-Alouane University in Dubai, Dubai, UAE
[email protected]
4
Department of Industrial Engineering and Engineering
Khaled Boussetta Management, College of Engineering, University of Sharjah,
[email protected] Sharjah, UAE
Atidel B. Hadj-Alouane
[email protected]
1
OASIS Lab, National Engineering School of Tunis,
University of Tunis El Manar, Tunis, Tunisia

123
Cluster Computing

experience improve linearly as latencies decrease from 125 The second pertains to the placement of these game servers
ms to 25 ms. on the available Fog nodes. Although static approaches
In these games, players from all over the world can have been proposed in the literature to offer integrated
participate and engage in group play, experiencing minimal solutions to these problems [9–12], they often lead to either
differences in network delay throughout what is termed a over-provisioning, which incurs additional costs, or under-
game session. Each game session, involving a specific provisioning, which compromises the Quality of Experi-
group of players, is typically coordinated and managed by ence (QoE) and fails to meet server demand requirements.
a single software application instance, referred to as a game Other studies proposed dynamic techniques for over-
server [4]. It is well-documented that distributing a game coming these challenges, based on the Cloud [13–18].
session across multiple servers leads to a reduction in the However, such techniques are not applicable to FPS, which
overall Quality of Experience (QoE) of the game session. are latency-sensitive and with a fast interaction pace [3].
This reduction is due to difficulties in maintaining game Other research works, dealing with Fog placement, tend to
consistency and the introduction of additional communi- focus on the mobility of the players and ignore the mobility
cation delays [5]. of the Fog nodes and any changes in the overall load
Game servers are currently hosted on Cloud-based dynamics [19–21].
Virtual Machines (VMs), which incur costs based on the The present paper proposes a comprehensive and cost-
requirements set by the game operator. In First-Person effective FPS game server placement approach using Fog
Shooter (FPS) games, low latency is a crucial requirement, infrastructure, for latency-sensitive multiplayer games in
and any degradation in latency, even affecting only a few compliance with different QoE requirements. The proposed
players in a group, can significantly deteriorate the overall approach is dynamic in nature as it can deal effectively
quality of the gaming session [1]. with the various events linked to the normal progress of
Faced with the significant challenges posed by Cloud FPS game sessions throughout a large time span. These
computing, Fog computing emerges as a promising solu- changes include the arrival and departure of players,
tion for hosting game servers, thanks to its closer proximity groups, and Fog nodes. The approach works iteratively and
to players [6, 7]. Being situated at the edge of the network, continuously adapts to these above changes by making
Fog nodes can host game servers and achieve lower delays, allocation adjustments and necessary provisioning deci-
provided they are reasonably close to all players in a group. sions for Fog nodes.
Fog nodes can be either physical devices, such as laptops or As a starting point of the approach, the integrated
servers/nano-servers, or virtualized environments like vir- problem of resource allocation and placement is considered
tual machines or containers [6]. statically, where the groups of players, their network
Despite the potential benefits of Fog computing, its delays, and the Fog resources are fixed. The static problem
implementation comes with its own challenges that deals with minimizing the total cost of Fog resource allo-
demand systematic optimization. Unlike the centralized cation while respecting the various capacity constraints of
architecture of Cloud computing, Fog computing relies on the deployed Fog resources and the players’ latency
a network of densely populated and widely dispersed deadlines.
resources [6]. This widespread distribution poses signifi- The static problem is formulated as an Integer Linear
cant challenges, particularly for FPS games, which require Programming (ILP) model, which fits into the well-known
a large number of game servers [8]. As a result, the effi- NP-complete category of Facility Location Problems [22].
cient allocation of a vast number of game servers in a The model is further strengthened with valid inequalities
timely manner becomes a critical optimization challenge which reduces the problem’s search space. However, this
for Fog resource management. has proven to be insufficient to find optimal solutions in a
Moreover, the dynamic nature of Fog deployments, reasonable time span (i.e., a few seconds). Therefore, a
which must account for varying configurations due to well-known Genetic Algorithm (GA)is adapted to our
changes in Fog nodes’ availability, game groups’ geo- problem by introducing a double penalty relaxation [23].
graphical locations, and network delays, further compli- The used GA has shown excellent results in terms of
cates matters. The system must adapt to groups and their solution quality and computation time, even for very large
players, as well as Fog nodes, dynamically entering and instances.
exiting between successive game sessions. Following the resolution of the static problem, the
Hence, two interrelated problems must be effectively approach enters its dynamic phase, which consists of
addressed to render Fog-based infrastructure for game making on-the-fly placements of new requests while
servers feasible. The first problem involves resource pro- adjusting previously taken decisions. Throughout this
visioning, which entails determining the necessary game phase, the constraints of the player groups are not a trivial
servers in terms of capacities and geographical locations. task. From the game operator’s standpoint, this satisfaction

123
Cluster Computing

should always be cost-effective. In contrast to a static heuristics for the strategic deployment of data centers and
system, the game operator has also to pay the adjustment edge nodes within a real-world context. Subsequently, they
costs. We formulate this problem mathematically as an developed strategies for the distribution of games across
ILP. Since it is an NP-Complete problem, so it is very time- the established servers to optimize player coverage. While
consuming. To ensure on-the-fly decision-making, a two- this research underscores the potential benefits of Fog
step method is proposed. It is based on the proposed GA- computing for game hosting, it primarily addresses the
based heuristic for the static problem. However, this time, placement of games as applications rather than focusing on
we adapted it to manage the dynamic scenarios. The first the placement of game servers hosting active sessions.
step is filtering the game servers that should be placed or For Quality of Experience (QoE) improvements, par-
adjusted, called Selection Policy (SP). This step aims at ticularly in scenarios where a group of players shares the
reducing the optimization time without affecting the same game session, several studies have aimed at opti-
quality of the solutions. The second step is based on non- mizing server placement to minimize delays under various
linear relaxation combined with GA, but this time it deals constraints. The authors in [10] concentrated on reducing
with three penalties at once. the inter-player delay, adhering to latency and maximum
Due to the lack of real data sets to validate the proposed interaction delay constraints, by strategically placing the
approach, we propose a method to generate the data con- players’ Virtual Machines (VMs) in the Cloud. Similarly,
sidering several real parameters. To measure the optimality researchers in [25] aimed at minimizing the maximum
of this approach and its time scale, we compare our latency between players within the same group by
approximate methods with the formulated mathematical deploying computing tasks on Cloudlets positioned close to
models and the state-of-the-art [11, 12, 24]. Simulation the players. In alignment with these objectives, the dual
results show that the proposed approach can guarantee goals of minimizing inter-player delay and reducing elec-
high-quality solutions in seconds for more than 5000 tricity costs for Cloud servers is addressed in [12], while
groups with 20 players per group. considering latency, GPU, and CPU resource capacity
The remainder of the paper is structured as follows: constraints.
Section 2 provides a comprehensive review of the lit- The approaches outlined in earlier works, while
erature, exploring both static and dynamic approaches. addressing latency and cost optimization, may lead to
Section 3.1 delves into the architecture and system model scalability issues and network congestion in dynamic
employed throughout the paper. Sections 3.2 and 3.3 pre- gaming systems due to the traffic generated from interac-
sent the static and dynamic versions of the proposal, tions and migrations of virtual machines. Addressing these
respectively. Section 5.2 demonstrates the experimental challenges, a novel strategy aimed at enhancing user
results of the static version, followed by an evaluation of experience in edge computing-based cloud gaming systems
the dynamic adapted version in Sect. 5.3. Finally, Sect. 6 is presented in [26]. The study focuses on reconciling the
draws conclusions from the paper and discusses potential conflicting demands of minimizing user-perceived latency
avenues for future research. and ensuring video fluency. It introduces a client-side video
latency optimization scheme designed to strike a balance
between these factors, thereby significantly enhancing the
2 Related work gaming experience. Through the formulation and resolu-
tion of an online optimization problem, the study demon-
The issue of game server placement has been extensively strates substantial performance improvements over
explored in the literature, addressing various aspects of conventional algorithms.
game sprawl. This body of work generally falls into two At the edge, researchers in [4] advocated for the uti-
main categories: offline/static and online/dynamic. Within lization of Fog computing to bring graphics rendering
each of these categories, research efforts can further be closer to the players, enhancing the gaming experience.
distinguished by their focus on either the cost implications Initially, the study introduced a mechanism to incentivize
from the game operator’s viewpoint or the quality of Fog node owners to share their resources. Subsequently, it
experience from the player’s perspective. Static or offline outlined a latency-based policy for assigning players to Fog
placement strategies involve making decisions based on a nodes, coupled with an adaptive selection of bit rates for
fixed state of the system and are often regarded as a pre- QoE optimization. To mitigate traffic from player interac-
liminary step towards accommodating dynamic changes tions, it suggested colocating players with social links on
within the system. the same server. In contrast, our work focuses on multi-
Given a static system snapshot, a hybrid Cloud-Edge player games where all players of a single group are hosted
architecture to accommodate latency-sensitive games is on the same game server, eliminating the need for social
implemented in [7]. The authors initially introduced link-based matching. Instead, our primary concern is to

123
Cluster Computing

satisfy the latency requirements for each player within the Starting from a static baseline, authors in [20] intro-
group. duced a heuristic designed to adapt to system variations
The work of [27] focused on minimizing the costs over time, with a primary strategy centered around fore-
associated with cloud resource allocation and bandwidth casting future workloads. The aim was to minimize the
for multiplayer game sessions, under the constraints of long-term costs associated with activating or deactivating
real-time network latency. The authors proposed a set of Fog nodes. However, this approach did not factor in
heuristics intended to solve the placement problem within latency considerations in the temporal allocation of Fog
polynomial time. Unlike our approach, which assumes node placements, potentially compromising service quality
players are responsible for rendering, authors of [27] for a significant user base, even when Fog nodes are
advocate for a cloud gaming service model that employs proximately located.
remote rendering. Moreover, the scalability of these In a distinct empirical investigation within the Cloud
heuristics has not been thoroughly evaluated across a broad domain, the work of [29] tackled the challenges of request
spectrum of game sessions or in dynamic gaming dispatching and Cloud server provisioning for Massively
scenarios. Multiplayer Online Games (MMOGs). The objective was
Research in [20] targeted the strategic placement of Fog to reduce provisioning expenses across a geographically
nodes in regions characterized by high demand to reduce distributed Cloud infrastructure, considering both response
the energy costs associated with these nodes. Subsequently, and queuing delay constraints. The authors proposed an
the study proposed assigning players to Fog nodes based on online control algorithm to dynamically adjust to evolving
latency metrics. This approach primarily addresses single- demands. This work differs is particularly focused on the
player game contexts, where each player is allocated a streaming of video games from the Cloud, highlighting a
separate and dedicated server. In contrast, our research is distinct avenue of research from the presented study.
directed towards multiplayer games, wherein players of a Researchers in [30] targeted the challenge of adaptively
single group are accommodated on the same game server, allocating bit rates under latency constraints, aiming to
thus diverging in focus and presenting a distinct set of balance resource allocation costs with bit rate optimization.
challenges and considerations. The authors introduced an online control algorithm,
The challenge of placing FPS multiplayer game servers grounded in the Lyapunov framework, to facilitate rapid
within the Fog environment, was tackled in [24], where resource allocation. Unlike our approach, the authors pri-
each player group, sharing a single game session, is hosted marily address Cloud Gaming services, focusing on
on a unified game server. This placement is meticulously streaming issues. Furthermore, their methodology is rooted
determined, taking into account both latency and Fog in Cloud measurements, which are not directly applicable
resource capacity constraints. Given the NP-Hardness of to Fog computing environments.
the problem, the authors employed an innovative approach The authors of [14] developed a cost-effective resource
that integrates constraint elasticity with a hybrid method- allocation framework that leverages CPU/GPU virtualiza-
ology combining Grouping Genetic Algorithm and Particle tion. Their approach aimed at dynamically handling player
Swarm Optimization. This strategy enables rapid genera- requests by utilizing centralized Cloud data centers and
tion of placement decisions, albeit its applicability is lim- offering remote rendering services, all while adhering to
ited to small-scale problem scenarios. latency constraints. In contrast, our research is focused on
Dynamic or online placement is crucial for adapting to deploying latency-sensitive games at a large scale within a
changes within the game system over time, such as fluc- densely distributed Fog environment, showcasing a dif-
tuations in the number of player groups, players joining or ferent set of priorities and technical challenges.
leaving sessions, or variations in network conditions. These Utilizing historical data from MMOGs, the authors in
changes necessitate dynamic approaches to sustain system [4] leveraged the ARIMA (Auto-Regressive Integrated
performance effectively. Moving Average) model to forecast player counts, enabling
In [28] the dynamic aspect of game server placement cost-effective resource management and mitigating over-
with a dual focus is addressed, where one model aimed at or under-provisioning issues. Similarly, within the domain
maximizing the game operator’s profit against Cloud of zone-based MMOGs, modeling processing times was
operating expenses, while another prioritized enhancing the emphasized in [15] as being critical for maintaining global
QoE for all participating players, with QoE metrics coherence in virtual worlds populated by thousands of
including frame rate and processing time. While our work avatars. This study proposed advanced player count pre-
also strives to offer cost-effective solutions within latency dictions to better anticipate resource allocation needs,
constraints, the approach of [28] concentrates on Cloud focusing on improving QoE by considering both processing
gaming services and does not specifically address the
nuances of team-based gaming scenarios.

123
Cluster Computing

and network times, using the Seasonal ARIMA model 3 Proposed approach framework
(SARIMA).
The strategy of [31] involved sharing load statuses The proposed approach works with two phases and is
among Cloud servers to facilitate load balancing, illustrated in Fig. 1. The onset of system operations starts
employing Markov-based load prediction (MCP) that with the static phase, where the first placement of the game
accounts for player arrivals and departures. In contrast, the servers on the Fog nodes is determined and applied. From
approach of [16] aimed at reducing power consumption in there, and onwards the system enters the dynamic phase
private Cloud setups by dynamically adjusting virtual and uses a time window mechanism. As mentioned earlier,
machine placements based on workload predictions, uti- the length of this time window can be tens of seconds or
lizing neural network models for forecasting incoming minutes and can be varied during the system’s lifetime.
player volumes and Genetic Algorithms for dynamic The length of the time window has no impact on our
placement. In [32] predictive models are adopted, includ- approach, but, the system is more reactive to player
ing the Artificial Neural Network (ANN) and the Adaptive demands with a short time window.
Neural Fuzzy Inference System (ANFIS), for future load When in the dynamic phase, the system moves from
estimation to proactively allocate VMs, thereby enhancing one-time window to the next, iterating on the following
QoE without incorporating latency considerations. steps, as shown in Fig. 1. During a given time window, the
A series of studies, [13, 17, 18], employed autonomous system collects requests from the players and Fog Nodes.
control loops to adapt to workload fluctuations and At the end of the time window, the new system configu-
dynamically adjust resource allocations within latency and ration is computed and put into effect. The new time
budget constraints. The approach of [18] combines Linear window starts with the new configuration. Decisions for the
Least Squares (LLR) regression with a fuzzy linear self- new configuration consist of placements and migrations.
learning algorithm, authors in [17] utilized ANFIS with a The details of how these decisions are computed are given
fuzzy decision tree, while integrated ARIMA with Learn- in the last two subsections. The following subsection
ing Automaton (LA) is proposed in [13] for resource explains the architecture of the system and various
provisioning. important parameters used by the approach
In [33] the synergy between mobile edge computing
(MEC) and cloud gaming is investigated by introducing a 3.1 Architecture and parameters
model-free deep reinforcement learning algorithm for
optimizing service offloading and placement, considering This work takes the perspective of an online game service
factors such as latency, cost, bandwidth, and load balanc- provider who has the tasks of enlisting Fog nodes to be
ing, and incorporating LSTM for future bandwidth pre- used as infrastructure for the game’s servers and managing
dictions. Contrary to studies focusing on FPS games, these all the resources necessary for providing a good environ-
works predominantly utilize MMOGs data, widely acces- ment for the game. Obviously, this provider has costs
sible online. linked to the usage/enlistment of Fog nodes and revenues
For VR-MMOG latency optimization, the edge layer generated from the users of the game (players). The main
was utilized for local processing and graphics rendering, as strategy of our work consists of minimizing the total since
outlined in [19]. This approach includes task migration the revenue depends on the set of player groups and not
following player mobility, with a preference for edge nodes where they are placed. In the following, we present the
offering the lowest migration and transmission costs. proposed system architecture and relevant parameters.
Similarly, authors in [21] treat the game engine as a
Directed Acyclic Graph (DAG), with a focus on dynami- 3.1.1 System architecture
cally optimizing the placement of the graphics rendering
module to serve mobile VR group games effectively. This A multi-tier architecture is proposed (Fig. 2). Each player
optimization, aimed at minimizing allocation costs, lever- can access a catalog of available games through a Web
ages edge computing. The development and periodic exe- portal or a centralized front-end interface, similar to the
cution of an online algorithm, grounded in model distribution platforms of Steam, GOG, or WeGame. The
predictive control, facilitate adaptation to player mobility. game portal also offers user management functionalities,
Contrary to the focus of [19] and [21] on player including authentication, subscription to services, and user
mobility, our research addresses the broader challenge of data storage.
responding to workload dynamics over time, thereby For stability purposes, the game portal is hosted in the
expanding the scope to encompass both spatial movements Cloud (Fig. 2). This layer also includes a Resource Man-
and temporal demand fluctuations. ager (RM), which is in charge of placing game servers in

123
Cluster Computing

Fig. 1 Proposed approach main


workflow

the Fog. The RM interacts with the Fog layer to discover, the quality of the connection to the server is acceptable),
monitor, and enlist the Fog nodes. Detailed resource the player joins the group session, which is typically run for
management of the Fog layer is out of the scope of this a given period. A session begins when a given number of
paper, but readers who are interested in this topic could players join the game server instance and are ready to start
refer to [34, 35]. The RM functionality covered in this a new game. It ends when the challenge is won or when a
paper consists of placing game servers on Fog nodes. This certain number of players leave the game. Servers are often
placement must be performed for each game. We thus configured to allow sessions to be chained on their own.
suppose that an RM per game is instantiated in the Cloud. Thus, when a session ends, a new game session can start,
As stated earlier, given their popularity and the challenges for the players to play again.
they pose from system and network perspectives, we focus The proposed architecture has autonomous features and
on latency-sensitive online multiplayer games. In seeking the placements are seamless for the users. In fact, from the
notation simplicity and without a loss of generality, we will player’s viewpoint, the placement should satisfy target
suppose that the game managed by a given RM is an FPS. QoE requirements. From the operator’s perspective, the
When the client selects such a game, for example, the placement should maximize the number of concurrent
FPS ‘‘CS:GO’’, the portal returns a list of public servers. sessions while minimizing the cost induced by using Fog
Each is an instance running a server part of the game resources. Moreover, the placement needs to manage the
engine software. Each server is customized through con- scalability problem associated with the multitude of Fog
figuration files. For example, these files can be used to nodes and game sessions and provide a fast placement
define the game map, set the target score for winning the response time to avoid losing impatient players.
challenge, limit the maximum size of the player group, or
define rules for dropping players (e.g., those with high 3.1.2 Problem parameters and conditions
network latency). An IP address and a TCP/UDP port
number identify each game server instance. Let G be the set of all multiplayer groups ready to launch
A player selects a particular server and requests to join new FPS game sessions at the next time interval. Each
the game. In case the request is accepted (for example, if active group g 2 G, is associated with a given online
multiplayer game server. Each server is responsible for
processing and updating the overall game state based on
the actions of remote players. The game state can refer to
the score and ranking of the players. Once the update is
complete, the server sends the new state and specific audio
and graphics rendering information back to each player.
Most online multiplayer game servers perform this
process within discrete time frames (i.e., milestones),
called ticks, to limit network load. The typical duration of
each tick is a few milliseconds, typically less than 50 ms
[3]. For simplicity, we assume a uniform tick value for all
game servers, denoted by s. At each tick, the server com-
putes and returns the new game state (e.g., the new score)
and all the information useful for rendering the game scene
on the client side. If the client endpoint is lightweight
(Cloud Gaming [1]), the server creates the rendering, the
code, and the stream. In that case, the processing requires
more resources. Otherwise, the client-side renders the
graphics and displays the new state on its screen.

Fig. 2 Multi-tier architecture for online gaming

123
Cluster Computing

To the best of our knowledge, there is no model in the the server located on the Fog node s 2 S. This constraint
literature to characterize the processing time of a delay- can be expressed as follows:
sensitive online multiplayer game server. Let us denote by
Tnet ðp; g; sÞ þ Tc ðg; pÞ  T ð3Þ
Pg the set of players in group g. We assume that the
average processing time per tick for each player p 2 Pg is where, Tnet ðp; g; sÞ is the round trip network delay between
given by, the player p 2 Pg and the server located on Node s 2 S.
wp The placement shall satisfy the above constraint for a
Tc ðg; pÞ ¼ ð1Þ fraction c of players within each group g 2 G. Specifically,
Rg
when c ¼ 1, the latency constraint should be satisfied for
where, all players within a group. However, when for example, c is
• wp is the average number of instructions per tick the set to 0.9, the constraint is relaxed for 10% of the players in
game server processes for player p 2 Pg , each group.
• Rg is the allocated processing capacity, in MIPS, to A Fog node s 2 S is thus eligible to host the game server
group g. of a given group g 2 G if the average end-to-end delay
constraint given in Eq. 3 is satisfied for a portion c of the
For simplicity purposes, and without loss of generality, we player group Pg where Pg 2 Pg . To ensure the smooth
assume that wp is the same for all players, thus denoted by
running of the game, we assume that T ¼ s.
w. The allocated processing capacity Rg must be sufficient
Table 1 summarizes all the parameters used notations
to execute the required number of instructions (MIPS) at used to characterize our problem.
each tick for all players in group g. We therefore consider
that 8g 2 G: 3.2 Server placement: static phase
w  jPg j
Rg ¼ ð2Þ
s This section addresses the first step of our proposed
approach, consisting of the static placement problem for-
As stated above, each game server should be hosted on an
mulated as an ILP with valid inequalities. The solution to
appropriate Fog node. Let S be the set of available Fog
this problem is given by adapting the GA of [23]. Given a
nodes. Each s 2 S node has a limited processing capacity,
particular game system, the cost of allocating servers is the
denoted by Cs . A Fog node s 2 S is a candidate for server
primary concern of the game operator. The Resource
placement if it has sufficient processing and communica-
Manager (RM) should find an appropriate placement on the
tion resources to support a new game server. Indeed, as
Fog infrastructure represented by S for the game servers
game servers are allocated to Fog nodes, the remaining
corresponding to the G groups.
resources may no longer be sufficient to support additional
The decision variables for the ILP placement problem
servers. A Fog node s 2 S can have one or more servers
formulation, are as follows:
already hosted in it and may have residual capacity. A node
can host a server associated with group g 2 G if the • zgs equals 1 if group g is assigned to the Fog node
residual capacity of that node is larger than, Rg , the s 2 Seg ; otherwise, 0.
required resource needed by the group. We denote by, • ys equals 1 if Fog node s is selected; otherwise 0.
Seg  S, the subset of nodes that can host a game server • Us : allocated CPU for the VMs placed on s.
associated with group g 2 G based on residual node The following ILP-Static can be given as a formulation for
capacities. our placement problem.
X
The server should receive the players’ inputs, process, and Minimize f ðzÞ ¼ Us :cs ð4Þ
return the data at each period to provide an appropriate s2S
QoE. Ideally, the QoE for a player p belonging to Pg , is X
Us ¼ Rg :zgs 8s 2 S ð5Þ
satisfied if the end-to-end delay is less than a preset
g2G
threshold, denoted by T.  However, in practice, it is very
difficult to guarantee this requirement at each tick and for Us  ys :Cs 8s 2 S ð6Þ
all players. Indeed, such a hard constraint is almost X
zgs ¼ 1 8g 2 G ð7Þ
impossible to satisfy due to unpredictable network fluctu-
s2Seg
ations and imperfections (e.g., congestion, and losses on
wireless access networks). Therefore, we will seek to sat-
isfy this constraint statistically. First, we consider a con-
straint on the end-to-end delay between a player p 2 Pg and

123
Cluster Computing

Table 1 Parameters and


Parameters Description
Notations
G Set of multiplayer groups
Pg Set of players belonging to group g 2 G
S Set of Fog nodes, available to the resource manager
Seg Set of eligible Fog nodes where Se  S
Tc ðg; pÞ Processing delay corresponding to a player p, belonging to g
Tnet ðg; p; sÞ Network delay between node s and a player p, belonging to g
wp Computation capacity (in MIP) needed by one player p
Rg Computation capacity (in MIPS) needed by one group g
s Game refresh rate
T Maximum latency deadline threshold
Cs The CPU capacity of Fog node, s 2 S, in (MIPS)
cs Fog node s 2 S CPU usage cost
c Required percentage factor of players with latency  T

ðTc ðg; pÞ þ Tnet ðg; p; sÞÞ:zgs  T 8g 2 G; p 2 Pg ; s 2 Seg 3.3 Server placement: dynamic phase
ð8Þ
X The dynamic phase is key in our server placement
ys  jGj ð9Þ approach, as it operates iteratively over the lifetime of the
s2S system. It is window-based, in the sense that there is a time
ys 2 f0; 1g; Us  0 8s 2 S ð10Þ window at the end of which the current configuration of the
system is examined and appropriately changed using an
zgs 2 f0; 1g 8g 2 G; s 2 Seg ð11Þ optimization technique, adapted from the one used in the
static phase.
The objective function (4) is to minimize the operating
The length of the time window can be appropriately
costs of the Fog nodes selected to host the game servers.
adjusted by the game operator and can be tens of seconds
Equation (5) expresses the total CPU capacity allocated to
or minutes. Its length does not affect the way the dynamic
all game servers that are assigned to each given Fog node.
phase is used but it influences the reactivity of the system.
Constraint (6) ensures the respect of the Fog node capacity
In fact, embracing a windowed solution in our game sys-
if it is used. Ensuring that each game server is assigned to
tem’s temporal dynamics is a strategic choice that presents
exactly one Fog node is expressed by the constraint (7).
many advantages. It simplifies system state management,
Constraint (8) guarantees that a game server is only placed
making it easier to monitor and troubleshoot. In addition, it
on a Fog node that meets the latency requirements of each
ensures the system’s adaptability to increasing computa-
player of the corresponding of the corresponding group.
tional demands.
Constraint (9) is a valid inequality that is introduced to
Within the time window, the system receives requests
reduce the search space. Finally, constraints (10) and (11)
from players, to leave certain game sessions, to enter
are binary and non-negativity restrictions on the decision
existing ones, to end existing game sessions, or to start new
variables.
ones. Moreover, decisions to leave the system are received
It is noted that the constraint (9) is not necessary for the
from Fog nodes. The system, also works actively, to enlist
correctness of the model. It is an additional constraint that
any necessary Fog nodes.
helps better guide the search for a solution, especially when
At the end of each time window, the resource manager
using an enumeration or decomposition-based algorithms
makes the following decisions, simultaneously, based on
(e.g., Branch-and-Bound with Cplex). It is a valid
the existing system configurations and the various new
inequality stating that limits the number of Fog nodes
requests:
deployed to the total number of groups. This is obviously
true since a game server for any given group needs to be • It generates placement decisions for the new game
using exactly one Fog node. sessions initiated by arriving groups;
• It reviews the placement of already active game servers
for the next time window.

123
Cluster Computing

Table 2 Notations for the


Parameter Description
dynamic phase
G Set of groups that are continuing from the previous time window
M Migration time threshold
VMS(g) Size of virtual machine/container size corresponding to group g
s; sÞ
BWð Available network bandwidth between two different Fog nodes, s0 and s
Mtgðs;sÞ
 Migration time of the game server corresponding to g from Fog node s to Fog node s
l Migration unit cost

In fact, the second decision is needed for game sessions ðs;sÞ


 
VMSðgÞ
given the conditions stated above is Mtg ¼ BWð  . For
s;sÞ
that may experience latency degradation or resource
this migration decision to be taken by the server, this
requirement changes. The latency degradation may be due 
migration time must not exceed a threshold, denoted M.
to (1) changes in the geographical location or network
We also apply a unit migration cost, l, to this migration
conditions of the hosting Fog node, or (2) changes in the
time.
group composition or geographical location of group
Table 2 summarizes all notations used in the dynamic
players. Resource requirements of a game session server
formulation.
might change due to the arrival or departure of players.
With the above notations, the optimization problem,
Notably, our system adeptly manages group and player
denoted by ILP-Dynamic for the decisions to be made at
departures by efficiently releasing their allocated resources.
the beginning of each time window is given as follows:
This dynamic resource management ensures optimal uti- X XX
lization, enabling the system to adapt seamlessly to Minimize gðzÞ ¼ cs Us þ lMgss maxð0; zgs
  zgs

evolving player and group dynamics. s2S  G s2S
g2
The parameters and notations used in the static phase are ð12Þ
still applicable. However, more parameters are needed for X
formulating the problem that shall be used in this dynamic Us ¼ Rg zgs 8s 2 S ð13Þ
g2G
phase.
Let us denote by G 2 G the set of groups that remain Us  ys Cs 8s 2 S ð14Þ
active at the beginning of a new time window. A group that X
 It is important to note zgs ¼ 1 8g 2 G ð15Þ
remains active is denoted by g 2 G.
s2S
that the set G includes G along newly arrived groups. For a
given continuing group, g,  we denoted its current hosting ðTc ðg; pÞ þ Tnet ðg; p; sÞÞzgs  T 8g 2 G; p 2 Pg ; s 2 S
Fog node by sg. ð16Þ
A given continuing group, G, currently hosted on node X
ys  jGj ð17Þ
sg, that experiences changes in its composition or the
s2S
conditions of its corresponding Fog nodes, may need to be
Mtgss  maxð0; zgs  zgs 
 Þ  M 8g
s2S
 2 G; ð18Þ
migrated by the resource manager to a node s. When this
happens, the network corresponding to sg is used and its
ys 2 f0; 1g; Us  0 8s 2 S ð19Þ
bandwidth is denoted by BWð sg; sÞ. If we define VMS(g) as
the size of the virtual machine/container used by the server zgs 2 f0; 1g 8g 2 G; s 2 S ð20Þ
corresponding to sg, then the migration time of this server

123
Cluster Computing

research [23], has inspired our choice for game server


placement on Fog nodes. In [23], GA is employed with a
penalty function-a promising proposal that efficiently dis-
cards infeasible solutions while applying genetic operators.
Our choice to leverage a GA for game server placement
on Fog nodes is motivated by its demonstrated effective-
ness in tackling similar optimization problems and its
inherent simplicity. This decision was made following a
comprehensive evaluation, which included experiments
with various metaheuristics, such as the Grouping Genetic
Algorithm and Penguin Search [24, 36]. While emerging
techniques like Deep Reinforcement Learning (DRL) show
potential, we prioritize GA due to its simplicity, efficiency,
and the well-established community that leverages it for
Fig. 3 Execution time with/without valid Inequality Eq. (9) solving classical problems analogous to our placement
challenge. In the following sections, we describe the pro-
posed GA algorithm, which can be directly applied to the
The objective function (12) is the total cost for the game static model. Subsequently, a two-step approach utilizing
operator, which includes the resource allocation costs and the proposed GA is presented to address the more complex
the migration costs. The constraints of the above model are problem of the dynamic phase.
the same as those of the ILP-Static, with the exception of
constraints (18), ensuring that migration times are all below 4.1 Proposed penalty-based GA
the threshold parameter. As in ILP-Static, the same deci-
sion variables, zgs and Us , are used. The assignment In [23], problem constraints are classified into hard and soft
assignment during the previous time window, indicated by categories. Hard constraints can be handled through proper
zgs are given as input to the model ILP-Dynamic. They are genetic encoding, while soft constraints are transformed
used to compute the migration costs. into a single nonlinear penalty function, introduced into the
objective function, to be minimized, as pk ðxÞ, where x
represents the decision variables and k is the penalty
4 Heuristic resolution method parameter. For any feasible solution x, the penalty value is
null; otherwise, it is positive. To find a solution with a null
Despite adding the inequality in Eq. (9), which helps penalty, the multiplier k must be set to a sufficiently large
reduce the resolution time, the problem remains unsolvable value. However, finding such a value can be challenging.
within a reasonable time frame that meets the system’s The key innovation of [23] lies in varying the multiplier
requirements. To this end, given the results presented in value as the GA search progresses. This approach alter-
Fig. 3 for the static phase, a heuristic algorithm, based on nates between prioritizing the selection of feasible, high-
the well-known Genetic Algorithm of [23], is proposed to quality solutions and diversifying the search process by
address our problem. accepting infeasible ones (with a positive penalty value, for
The effectiveness of Genetic Algorithms (GA) in solv- low values of k). This dynamic adjustment of the penalty
ing facility location problems, as demonstrated in prior

123
Cluster Computing

Algorithm 1 Multiplier value adjustment [23]

if during the last Nf generations, all top best solutions have pλ (x) > 0 then
λ = λ ∗ β1
Re-evaluate the current generation with new λ
else if during the last Nf generations, all top best solutions have pλ (x) = 0 then
λ = λ/β2
Re-evaluate the current generation with new λ
end if

XX
parameter is described as follows: pk3 ðzÞ ¼ k3gs ½minð0; M  Mgps s  maxð0; zgs
  zgs
 Þ
2

 G s2Seg
g2

ð26Þ
In the described scheme, b1 and b2 are two scalars that
are arbitrarily chosen and merely need to be distinct. Thereby, transforming ILP-Dynamic into the following
Additionally, the initial value of k is selected randomly. It nonlinear model:
is crucial to highlight that, in this scheme of multiplier
Minimize gðzÞ þ pk1 ðz; yÞ þ pk2 ðzÞ þ pk3 ðzÞ ð27Þ
adjustment, the multiplier k is maintained at its current
value if the penalty value fluctuates between null and Subjectto : ð28Þ
positive during the preceding Nf generations.
ð13Þ; ð15Þ; ð17Þ ð29Þ
Adapting this concept to the static phase model involves
consolidating all Fog node capacity constraints and latency The general structure of the GA we propose bears resem-
limits into a single penalty function for the static phase. In blance to that described in [23], where a solution is enco-
the dynamic phase, the migration time limit is also treated ded as a chromosome of length equal to the number of
as a soft constraint and incorporated into the penalty groups, denoted as |G|. Each gene within this chromosome,
function. Preliminary experiments did not yield favorable corresponding to the server assigned to group g, can
results, as the three types of constraints, despite all quali- assume any value (or allele) s 2 S, indicating the Fog node
fying as soft constraints, differ significantly in nature. to which it is allocated. Beyond the separation of penalty
To address this challenge, we propose the introduction functions, our adaptation of the GA incorporates the fol-
of separate penalty functions and the corresponding mod- lowing two distinctive features:
ification of the GA search mechanism. For both the static
and dynamic phases, we introduce two distinct penalty • Generation of the Initial Population: As the initial
functions, derived from resource capacity constraints and population represents the starting point of the Genetic
latency limits, respectively: Algorithm, ensuring its appropriate diversification is
X X crucial. To this end, two distinct sets of chromosomes
pk1 ðz; yÞ ¼ k1 ½minð0; ys :Cs  Rg :zgs Þ2 ð21Þ are included in the population. The first set comprises
s2S g2G
chromosomes representing feasible solutions, that
XX
pk2 ðzÞ ¼ 
k2 ½minð0; T  ðTc ðg; p; sÞ þ Tnet ðg; p; sÞÞ:zgs Þ2 respect both capacity and latency constraints. The
g2G p2Pg second set consists of chromosomes with alleles that are
ð22Þ randomly generated. The proportions of these two sets
in the initial population are 80% and 20%, respectively.
Applying this penalty transformation to ILP-Static, results
in the following model:
Minimize f ðzÞ þ pk1 ðz; yÞ þ pk2 ðzÞ ð23Þ
Subjectto : ð24Þ
ð5Þ; ð7Þ; ð9Þ ð25Þ

In the dynamic phase, an additional penalty, representing


the migration time limit, is introduced as follows: Fig. 4 On-the-fly approach applied at the end of each time window

123
Cluster Computing

• Reproduction (elitism): The reproduction operator • New groups: the game system may encounter events
selects the best Nc % chromosomes from the current where new incoming groups send requests to instantiate
population, according to the so-called fitness function game servers. In response to such events, the resource
given by the formula (23). These selected chromosomes manager is tasked with generating placement decisions
are inserted into the next population. Reproduction has within the Fog network. These decisions must comply
an objective to keep a certain elite in the population with both latency requirements and Fog resource
across iterations. However, Nc should be set to a low capacity constraints.
number to ensure diversification. In our case, it is set at • Old groups: Groups that persistently stay connected
10%, which seems appropriate after conducting multi- experience fluctuations due to player dynamics: mem-
ple tests and in line with guidelines set by GA users bers may depart, and new ones may join, while the
[23]. network locations of remaining members may evolve.
• Crossover: In [23], the GA employs a gene-by-gene The aim is to identify groups for which the latency to
crossover, also known as multi-point uniform cross- their respective game servers exceeds a predefined
over. However, in our study, we opt for the two-point  These groups become candidates for the
threshold, T.
crossover method. This decision is grounded in multiple optimization phase, necessitating further adjustments,
preliminary experiments we conducted, which indicated such as potential server migration. It is important to
that the multi-point crossover tends to slow down the highlight that, within the scope of this paper, the
algorithm’s execution without offering any significant emphasis is placed on adjusting the placement of game
improvements to the solution’s quality, compared to the servers between different nodes, termed migration time.
two-point crossover. The intricacies of how migration is implemented fall
• Mutation (immigration): To avoid premature conver- beyond the scope of this study. This selection process is
gence with solutions having local minima, GA requires applied to each existing group, denoted as g, following
the application of mutation, which we prefer to call a predetermined sequence of steps:
immigration. Mutation consists of randomly generating
1. Determine and compare the maximum latency
1% of the next population, using the approach adopted
within a group to the latency threshold T. 
for generating the initial population.
2. If the current placement of the game server,
corresponding to a group g,  satisfies the latency
4.1.1 A two-step approach for dynamic placement constraint for c% players, the server remains fixed.
of multiplayer game servers 3. Otherwise, the percentage of players experiencing
latency higher than T is calculated. In this compu-
This problem formulation results in exponential execution tation, 1  c players are excluded from the violation
times for medium to large problem instances, as detailed in percentage. In this case, we introduce a migration
Sect. 5.3. To mitigate scaling time issues, a two-step GA- percentage threshold V that we define to decide
based approach is proposed for addressing the problem in whether to maintain one group placement or not.
the dynamic phase (see Fig. 4). The first step involves 4. If the migration threshold is not violated, the
identifying the groups that require new placement or placement of the group’s game server will remain
readjustment decisions. The output of this step serves as unchanged.
input for the second step, which entails solving the ILP- 5. Otherwise, the group is selected as a candidate for
dynamic with a significant number of decisions fixed in re-allocation in the optimization step.
advance. This solution utilizes the GA described earlier,
incorporating three separate penalty functions. The selection policy is designed to prevent trivial migra-
The selection step is aimed at identifying groups that tions, thereby avoiding unnecessary costs. Moreover, it
either require placement for the first time or need adjust- contributes to optimization by reducing the problem size.
ments to satisfy the latency requirements of the players. At Following this selection step, the optimization phase is
the conclusion of each time window and before the com- carried out using the previously described GA, which
mencement of the next, the game system can be charac- incorporates three separate penalty functions, as presented
terized by the following two types of events: in Algorithm 2.

123
Cluster Computing

Algorithm 2 A two-step approach for dynamic placement of multiplayer game servers algorithm

1: Fix the value of Nf , the alteration frequency of λ1 , λ2 and λ3 to small random


values
2: Set the maximum number of iterations Nmax
3: Set two constants β1 > β2 > 1, used to manipulate the value of λ1 , λ2 and λ3
4: Initialize an empty list tobeP lacedGroups
 Selection Policy
5: for each new arrival group g in G − Ḡ do
6: Add g to tobeP lacedGroups
7: end for
8: for each old group ḡ in Ḡ do
9: if M ax latency(ḡ) ≤ T̄ then
10: The server game of ḡ remains in the current node
11: else
12: P T = (percentage of players within ḡ with latency > T̄ ) - γ
13:
14: if P T ≤ V̄ then
15: The server game of ḡ remains in the current node
16: else
17: Add ḡ to tobeP lacedGroups
18: end if
19: end if
20: end for
 Optimization using GA
21: Generate the initial population following the initialization described above while
considering groups in tobeP lacedGroups
22: while Nmax iterations are not completed do
23: Apply the reproduction, crossover, and immigration operators, respectively
24: Multiplier value adjustment 1 for λ1 , λ2 and λ3 , separately
25: end while
26: Return the top best placement solution.

5 Performance evaluation To gather this data, we utilized the Valve API [1] to
track the game ‘‘CS:GO’’ in Europe for a month-long
This section presents and discusses the outcomes of solving campaign (August 12th - September 6th). The API allowed
both the static and dynamic models using the generated us to query existing game servers, reaching a peak of 400
datasets. The performance of the proposed GA is bench- as shown in Fig. 5. We retrieved data on server IP
marked against state-of-the-art methods for the static addresses, ports, and the number of connected players to
phase. Table 3 outlines all methods under comparison, each server. Figure 6 depicts the average number of players
including a commercial solver known as Cplex 12.9. per server over time. These figures revealed a peak of 400
servers and a maximum group size of 16 players.
5.1 Data generation Our data collection efforts encountered two key limita-
tions. Firstly, privacy concerns arose: retrieving individual
Evaluating our proposed system necessitates considering player IP addresses would violate their privacy and impede
various parameters, starting with player distribution. This our ability to pinpoint their geographical distribution. As
encompasses understanding the number of players, their ethical research practices are paramount, we respected
geographical distribution, group sizes, and group connec- these concerns and avoided collecting this data. Secondly,
tion/disconnection rates. Fog node distribution is equally the lack of established Fog node infrastructure presented a
critical for our system. This refers to the number, location, challenge: without a single, well-established provider
and resources available on Fog nodes. offering Fog nodes, we could not directly obtain data on
their distribution. This limited our ability to gather

123
Cluster Computing

Table 3 Compared approaches


Method Ref Description

OPT (4) Solution of ILP model (our benchmark)


GGA- [24] GGA solution is based on the Grouping Genetic Algorithm (GGA). It is also proposed in the same context as ours.
Repair Nevertheless, the chromosome is divided into two parts. The first part manipulates the groups of players. The second part
manipulates the Fog nodes selected to host the player groups. This approach is based on a repair heuristic to ensure the
feasibility of the solutions in terms of problem constraints
GGA-Pen [24] This is a variant of the proposed GGA. However, the infeasibility of the constraints is managed by the penalty transformation
(as in our present proposal)
GW [12] Grey Wolf is based on the penalty transformation presented in this paper
PSO [11] Particle Swarm Optimization is based on the penalty transformation presented in this paper

Real data sets, consisting of the locations of players, their


formations into groups, and the locations of real Fog nodes,
were not readily available to us. Therefore, we had to revert
to the generation of synthetic data sets to perform extensive
evaluations of the proposed approach and algorithms.
However, in doing so, we were inspired by realistic FPS
group game configurations and parameters [37], which we
detail later.
These datasets differ primarily in size,1 represented by
the number of groups, the number of players in each group,
and the number of Fog nodes available for placement.
Another important set of parameters concerns the relative
location of players and Fog nodes. Other parameters
regarding network delays, latencies, and quality of expe-
Fig. 5 Number of game servers rience of players and groups are used. We also define
typical metrics used to size the Fog nodes and their costs.

5.1.1 Multiplayer groups characteristics

Before data generation, we establish the number of groups


|G| and players per group jPg j. It’s crucial to note that all
groups have an equal size.

5.1.2 Players location model

To ensure a high Quality of Experience (QoE), multiplayer


servers sensitive to latency often exclude players with high
Round-trip time (RTT). Typically, only players with short
and nearly similar network delays to the server are
accepted Fig. 7. Since network latency correlates with
Fig. 6 Multiplayer group size distribution
physical distance, we can infer that in practice, the majority
of players competing in latency-sensitive game sessions are
comprehensive information about the current Fog node
geographically close to each other. This assumption is
landscape. Despite these limitations, we employed alter-
reinforced by the fact that these groups often consist of
native strategies, such as data generation, to address the
clans of players residing, studying, or working in the same
missing information and conduct a thorough evaluation of
area.
our proposed system.
Through this section, we describe the data generation
process used for the evaluation of the proposed approach. 1
https://github.com/amiraBenamer20/GamingSim/tree/main

123
Cluster Computing

Fig. 7 Synthetically generated The remaining players, ð1  cÞ%, are generated in the
group of players [38] concentric gray circle. The radius of the gray circle,

pffi , allowing for
denoted Dnet , is determined as Dnet ¼ q Dnet
c
scaling with a parameter q  1.

5.1.3 Fog nodes dimensioning and location model

After generating groups, Fog nodes’ coordinates are gen-


erated following a uniform distribution. Any remaining
Fog nodes n are generated to fill gaps, ensuring each grid in
To adhere to this observation, we model the geograph- the placement plane has sufficient capacity for latency
ical distribution of each group of players as follows: requirements.
The plane is sized to ensure that each player group has at
• The studied area is represented by a square of least one Fog node meeting latency requirements, expres-
dimensions Dim * Dim, expressed in kilometers (as sed as jSj
 1
.
dim2  2
pDnet
illustrated in Fig. 8).
This is achieved by overlaying a grid on our generation
• A set of G points associated with the location of each
plane, where each square’s dimensions are Dnet*  
Dnet.
group is randomly deployed according to a uniform
distribution. Each point cg corresponds to the geo- Closing the capacity gap within each grid ensures that
groups inside have at least one Fog node meeting the
graphic centroid of the group g.
latency requirements of their c players per group.
• For each group g, we randomly generate player
Subsequently, we calculate the number of Fog nodes,
locations in the vicinity of the centroid cg for two-
denoted as |S|. This involves determining an initial number,
player population categories. The first population called
denoted as N, which heavily depends on the number of
Dnet , consists of a fraction c of group G whose latency
groups and the required resources Rg . Each Fog node s to
constraint, expressed in Eq. 16, must be strictly satis-
be generated possesses a resource capacity of Cs , with the
fied. The second population, known as Dnet , comprises
simplicity of equal resources for all Fog nodes.
the remaining players for whom the latency constraint
The initial number of Fog nodes N is calculated as
might not be fulfilled. P R
follows: N ¼ U g2G Cgs , where U ¼ 0:8. This ensures that
To model the first population, c players are randomly
the resources offered by the Fog nodes are nearly equal to
generated around the centroid cg following a uniform dis-
U of the sum of the needs required by the groups. To fill in
tribution within a circle of radius Dnet . As shown in Fig. 7,
the remaining percentage (i.e., 20%), we later set the
the second population is also randomly generated around
remaining number of Fog nodes, denoted n. This would be
the centroid cg following a uniform distribution within a
based on the distribution of the groups over the plane. The
larger circle of radius Dnet . Once parameters are set, groups
idea is to ensure that the generated scenario is feasible
are generated with random centroid coordinates and player
regarding resource capacity and latency constraints.
coordinates are distributed within white or gray circles
The generation of the new Fog nodes n is orchestrated to
using a uniform distribution and the c parameter.
guarantee that the capacity offered in each square exceeds
Each player group is considered a circle with a centroid
the required capacity of /, where / is a parameter varying
at coordinates (x, y), as illustrated in Fig. 7. The white
in the range [0.2, 1]. The overall number of Fog nodes is
circle represents the perimeter where players c should be
then determined as jSj ¼ N þ n.
generated to ensure that the latency is less than or equal to
In Fig. 8, a dataset instance is depicted with a total of
Tnet ¼ T  Tc .
100 groups denoted as |G|. The squares represent the
The white circle network radius, denoted Dnet,  repre- players, and each color represents a group. The stars rep-
sents half of the maximum tolerable network time. Since resent the Fog nodes where the game server could poten-
we are in the distribution stage, the focus shifts to the tially be hosted.
network distance between each player and the candidate The Fog node resource capacities considered are Cs ¼
Fog node. To convert network time into a physical dis- 1000 MIPS and Cs ¼ 5000 MIPS. Each group requires
tance, the physical radius of the white circle is denoted as 1000 MIPS. It is noteworthy that when the Fog node
 ¼ Tnet2 , where a is a parameter derived from experi-
2
Dnet a capacity is set to 1000 MIPS, each Fog node can handle
mental data [39]. only one group. On the other hand, if the capacity is

123
Cluster Computing

Fig. 8 Examples of the


generated data |G|= 100

increased to 5000 MIPS, each Fog node can accommodate close our GA-based approach is to the optimum when
up to five groups. optimizing the fitness function (see Eq. 23). We also con-
The impact of these resource capacities on the distri- sider the time for generating the placement decisions pre-
bution plane is evident in Fig. 8a and b. In Fig. 8a, where sented as the execution time. This metric is essential to
Fog nodes have a capacity of 1000 MIPS, the distribution evaluate the scalability of our solution with respect to the
plane needs to be larger to include more Fog nodes, each problem size. The quality of the solutions can also be
catering to one group due to the specified resource shown by the latency distribution of the player groups,
requirement. Conversely, in Fig. 8b, where Fog nodes have which is represented by the Cumulative Distribution
a capacity of 5000 MIPS, the distribution plane can be Function (CDF).
more compact as fewer Fog nodes are needed to meet the Table 4 lists all the evaluation parameters.
requested resource capacity for multiple groups. To assess the quality of the solutions of our GA-based
proposal, we compare it with the optimal model named
5.2 Results and discussion: static phase OPT, and other related work. We refer to the quality by the
fitness function, see Eq. 23, which GA shall optimize so
In this evaluation, different comparison metrics are con- that it can be close to the optimal, see Eq. 4. Recall that the
sidered: the quality of the solutions, which measures how optimal does not tolerate any violation of the constraints,

123
Cluster Computing

Table 4 Experiments parameters used in the static placement methods, under different problem sizes. It is clear that our
evaluation proposal (GA), GGA, and PSO-based methods overlap
Parameters Values with OPT with close fitness values; except GW. This
overlap is obtained in the absence of violation penalties.
System and application
Hence, the output is only equal to the objective function,
|G| 100 - 5000 see Eq (4), which is proportional to the number of allocated
jPg j 20 Fog resources, as shown in Fig. 10.
wp (MIP) 0.25 Figure 11 represents the time required to generate the
Rg (MIPS) 1000 placement decisions. It can be noted that GA (i.e., the
C (MIPS) 1000, 5000 proposed approach) and GW can evolve linearly with the
cs ($=h) 0.1 number of groups. However, GW converges faster but with
Tc ðg; pÞðmsÞ 0.25 a poor quality of solutions compared to our proposed

TðmsÞ; sðmsÞ 20 technique.
GA, GGA-Pen, GGA-Repair Algorithm Figure 12 shows the distribution of player latency for
Population size [|G|, 3|G|] the different methods. This should ideally be subject to a
Nmax 5000 maximum latency threshold, in this case, 20 ms. We can
b1 , b2 4, 0.7 clearly observe that our proposal, namely GA, ensures
Nc 0.1 acceptable latencies, as well as the others except for GW.
Nm 0.01 This graph confirms Fig. 9.
Nf jGj Figure 13 shows the impact of c on the latency distri-
2
k1 , k2 0.0005
bution of the players, applying GA. When c ¼ 1, all
players must have latency less than or equal to T.  By
GW
Population size 100
reducing c to 0.9, we tolerate some latency violations for
10% of the players in case there is no appropriate place-
Nmax 5000
ment subject to the latency constraint.
w, h1, h2 30, 0.8, 0.1
Since GA relies on different parameters and operators,
PSO
in the following, a set of experiments are carried out to
Population size 100
track its efficiency with respect to the optimum under
Nmax 5000
different values including the type of the crossover oper-
w, c1, c2 0.7, 2, 2
ator, the maximum number of iterations Nmax , the amount
of reproduction Nc , the frequency of alteration Nf , and the
population size. The scaling relationship between the
problem size and Nmax is also examined.
unlike our GA-based proposal which minimizes violations Figure 14 represents the quality of the solutions found
until it converges to the optimal. by GA using different types of crossovers. It can be noticed
Figure 9 shows the quality of the solutions measured by that the two-point crossover is the best in terms of quality
the fitness function (23). This metric is evaluated on all

Fig. 9 Solution quality Fig. 10 Resource allocation cost

123
Cluster Computing

Fig. 11 Placement decision time Fig. 14 GA under different types of crossover

applying one-point or four-point crossovers. Gene-by-gene


(GC) crossover is the worst compared to the others.
Gene-by-gene crossover may offer increased diversity
compared to other methods. By individually exchanging
genes between parents, it has the potential to explore a
wider range of solutions. However, it tends to be slower
and less efficient, especially in complex search spaces.
Four-point crossover, while potentially offering increased
diversity, may introduce unnecessary complexity without
necessarily improving solution quality. Conversely, a two-
point crossover offers a compromise between complexity
and efficiency. It divides the parents’ chromosomes at two
crossover points and exchanges the intermediate sections,
allowing for a more diversified exploration of the search
Fig. 12 Cumulative density function of the latency distribution space while maintaining convergence toward optimal
solutions. Experimentation has shown that two-point
crossover can converge towards the optimum more

Fig. 13 Latency distribution for different c values using GA

due to its closeness to the optimum. However, as the


number of groups increases, the quality deteriorates when
Fig. 15 GA under different values of Nmax

123
Cluster Computing

effectively while maintaining the necessary genetic diver-


sity to avoid stagnation in the search.
Figure 15 reveals a clear correlation between the
required number of GA iterations and the number of
groups. As the number of groups increases, the GA
necessitates more iterations to converge to an optimal
solution (OPT) with zero latency and capacity violations.
For 5000 groups, for example, 10000 iterations are needed.
It’s worth noting that our other experiments used different
iteration counts based on the number of groups: 5000 for
less than 3000 groups, 7500 for groups between 3000 and
5000, and 10000 for exceeding 5000 groups. This dynamic
approach ensures the GA has sufficient time to optimize
and eliminate violations effectively.
Figure 16 presents the quality of the solutions under Fig. 17 GA under different values of Nf
different Nc values (i.e., reproduction factor). It can be
noted that the reproduction of 10% is the best choice
compared to the others. This means reproducing the 10%
best solutions from one iteration to another is enough to
promote diversification within a population.
Figure 17 tracks the GA’s behavior of the GA under
different Nf values. As mentioned above, this parameter
indicates how often the penalty is revised for possible
alteration. When the modification is repeated frequently at
each small step, the qualities are better.
Figure 18 shows the behavior of GA when applying
different population sizes. It can be noted that it always
finds the best solution, whatever the size.
For the sake of scalability in terms of execution time, the
problem instance is distributed over a set of threads run-
ning simultaneously. To achieve this, the distribution plane
Fig. 18 GA under different sizes of the population
is subdivided into equal sub-areas, each handled by a
thread separately. The results of all threads are then merged
experimental results indicate that this last step has no
to form a population. To ensure the quality of the solutions,
impact on the quality of the final solution.
the GA is run again on the merged global population to
Figure 19 illustrates the execution time of the Genetic
yield, after 1000 iterations, a final global solution. The
Algorithm (GA) under varying thread counts. Notably,

Fig. 16 GA under different values of Nc Fig. 19 Execution time of GA using a different number of threads

123
Cluster Computing

there is a proportional decrease in execution time with an varies between 10% and 25% over time. Leveraging these
increasing number of threads, emphasizing the efficiency observations, we will utilize these insights to simulate the
gains achieved through parallel processing. This reduction dynamic scenarios described subsequently.
in execution time is crucial for expediting server allocation The starting point for tracking system changes is the
decisions before the initiation of the game, ensuring a swift static solution. This is generated when the system is ini-
and responsive process. Importantly, this optimization does tially instantiated at t0 . We then track the system at each
not compromise the quality of solutions, which consistently time step, ideally the game session duration, to generate
remains close to optimal. The practical implication is an new placement schemes. Note that each new solution at
accelerated decision-making process for server placement, t þ 1 is based on the previous one found at t. At the end of
contributing to operational efficiency without directly one session, we may distinguish a set of changes that
impacting player latency. This underscores the scalability encompasses the arriving/leaving of groups following
and effectiveness of the GA in managing diverse thread appearance Xg- , and disappearance Xg& percentages. In
configurations for optimal game server allocation. addition, within a group, players can join/leave the group
Based on the different experiments, we found that the based on the appearance Xpg- and the disappearance Xpg&
number of iterations necessary to guarantee near-optimal percentages, respectively. Moreover, the network positions
solutions is proportional to the problem size, Nmax ¼ ajGj, of players that remain connected since the last session may
where a is an experimental parameter. change for various reasons, such as changes in Point of
Access (PoA), network variations, or mobility. For this
5.3 Results and discussion: dynamic phase work, we choose mobility variations. The players are
assumed to change their position following a velocity noted
To evaluate the performance of the proposed approach, this v towards a direction noted dr. The Fog nodes also change
section first presents the dynamic scenario generation. over time. We represent this scenario using percentages of
Then, we proceed to the evaluation. Xs- entry and Xs& exit.
We randomly generate the bandwidth matrix BW with
5.3.1 Dynamic scenario generation dimensions jSj  jSj. We assume that all Fog nodes can
communicate with each other, via the Internet, with
Before delving into the data generation process of dynamic bandwidth values ranging from 10 to 100 MB/s. Three
scenarios, we should highlight key insights gleaned from different VMS sizes are considered (512 MB, 1024 MB,
our data collection campaign. These insights inform the and 2048 MB). Table 5 lists all input parameter values.
simulation of realistic dynamic scenarios. Observations Starting from an existing solution and fixing the
from the Data Collection include Group Arrival/Departure appearance and disappearance percentages for the
Rates Fig. 20. Figure 21 illustrates how the percentage of groups/players/Fog nodes to 0.1, the instance shown in
groups arriving and departing fluctuates over time, with an Fig. 22 is obtained. This instance results from the selection
average rate of approximately 10% between sessions. In policy applied to the given solution at time t. Figure 22a
addition, we observed player group size variations. We shows that the number of groups that change is also small
noted in Fig. 20 that the number of players within a group at low player velocities. Therefore, the probability of
maintaining the placement of game servers corresponding
to these groups is still high. As the speed increases to
medium and then to high, the number of groups selected
for the optimization step increases ( Figure. 22b and Fig-
ure. 22c.
Figure 23 shows the appearance and disappearance
percentages set to 0.3. It can be noticed that the number of
groups considered in the optimization step is higher than
0.1. This is because the dynamics of the game system,
including groups, Fog nodes, and players within groups,
also increase. Therefore, the state of the system would most

Fig. 20 Multiplayer group size over time

123
Cluster Computing

Fig. 21 Temporal evolution of dynamic groups

Table 5 Experiments parameters used in the dynamic placement likely be obsolete. In this case, as dynamics increase, the
evaluation number of groups selected by the selection policy for a
Parameters Values potential optimization step will increase. Figures. 23a, 23b
System and application and 23c show the distribution of groups under different
velocity values.
|G| 100 - 5000
jPg j 20
5.3.2 Results and analysis
Rg (MIPS) 1000
C (MIPS) 5000 First, we study the quality of the solutions generated by our
Tc ðg; p; sÞðmsÞ 0.25 two-step approach with the proposed optimization model.
cs ($=session) 0.1 It allows for assessing the quality of the approximate

TðmsÞ 20 solutions compared to the optimal ones. Figure 24 illus-
V % 10 trates the placement cost (Eq. 12) composed of resource

MðsÞ 120 allocation and migration costs for OPT and GA. The
Xg- ,Xg& , Xpg- , Xpg& ,Xs- , Xs& 0.1 comparison includes scenarios with and without the SP
lð$=sÞ 0.02 phase applied, for game server placements ranging from
fg ð$=sessionÞ 0.02 100 to 5000 groups. In both cases (with and without SP),
v low, medium, high OPT minimizes both costs, achieving similar low costs.
dr 30 However, GA performs better in optimizing the placement
VMS(MB) 512,1024,2048 cost when the SP phase is applied. This is because the SP
GA phase restricts the search space, preventing unnecessary
Population size [|G|, 3|G|] migrations, which is not achieved without the SP phase.
Nmax 5000 This confirms the role of the SP phase in assisting GA, as it
b1 , b2 4, 0.7
converges to values close to OPT, leading to improved
Nc 0.1
placement decisions.
Next, we evaluate the placement optimization time. This
Nm 0.01
jGj
metric allows us to assess the proposed approach’s scala-
Nf
2 bility for different problem sizes. Figure 25 shows that
k1 , k2 , k3 0.0005 using a problem instance filtered by the SP step, OPT takes
GW Algorithm less time to find optimal solutions than without it. When
Population size 100 GA is coupled with SP, it takes less time to converge from
Nmax 5000 9000 s without SP to 170 s. This finding confirms our
w, h1, h2 30, 0.8, 0.1 claim that SP helps to reduce time without affecting the
benefit.

123
Cluster Computing

Fig. 22 Example of instances with different velocity values, incoming/departure of groups/players/Fog nodes = 0.1

We propose tracking the placement cost, which GA, when preceded by the selection method, shows some
encompasses resource usage and migration costs, over time stability over time. It is not the case without the selection
for the Genetic Algorithm (GA) both with and without the method, where the execution time varies between 7000 s
application of the Selection Policy (SP), as depicted in and 9000 s.
Fig. 26. This tracking sheds light on the migration costs to To evaluate the proposed approach’s scalability against
analyze changes in the overall placement cost. We con- player group dynamics, particularly their movement speed,
ducted a 24-hour tracking campaign on an instance with we propose varying a parameter called velocity (v). This
5000 groups. We simulated a dynamic environment where parameter influences the players’ spatial distribution across
10% of groups/players/fog nodes appear and disappear, and the environment. We experimented with low-velocity val-
players’ physical locations change with a low velocity (less ues: low (less than 10 kms per game session) and high
than 10 kms per game session). Our results demonstrate (more than 30 kms per game session). The experiment was
that GA with the SP phase exhibits more efficient behavior run on the same instance with 5.000 groups, and Fig. 28
in optimizing placement costs compared to GA alone. shows the migration cost over time. Initially, GA with SP
Additionally, we found that the SP selection policy pro- exhibits fluctuating behavior, but it eventually stabilizes
vides stability to GA over time, while GA alone is more across all velocity values.
sensitive to dynamic environments. In the same context, we vary the arrival and departure
Figure 27 shows the execution time of GA with/without values of groups/players within groups. An injection of
SP. It can be noted that the selection policy reduces the new ones with the same departure percentage usually fol-
execution time considerably. In addition, we observe that lows the departure of groups/players. The proposed

123
Cluster Computing

Fig. 23 Example of instances with different velocity values, incoming/departure of groups/players/Fog nodes = 0.3

Fig. 24 Placement cost with/without the selection policy (SP) Fig. 25 Execution time

123
Cluster Computing

Fig. 26 Placement vs Migration costs GA- with/without SP Fig. 29 Execution time for different values of group variation rates

can confirm that the proposed approach is not sensitive to


such variations. It always manages to satisfy the maximum
number of groups subject to the problem constraints.
However, the only difference concerning this variation
is in the convergence time (Fig. 29). When the group/-
player/Fog node change factor is set to 30%, GA takes
more time to generate a placement decision. The execution
time reduces proportionally as this factor decreases. At
10% for 5000 groups, GA converges after 170 s. Then, it
takes 203 s to 263 s for 20% and 30%, respectively. When
the factor is high, it implies more dynamics in the instance.
The appearance of new groups/players/Fog nodes expands
the instance size considered in the optimization step.
Therefore, this implies more optimization time and vice
Fig. 27 Execution time of GA with or without selection policy versa.

6 Conclusion & future work

In this study, we harness Fog computing to mitigate latency


challenges in multiplayer games sensitive to delay by
optimally positioning game servers on Fog nodes near
users. This strategy integrates considerations for Fog
resource allocation costs, capacities, and game latency
demands into an Integer Linear Programming (ILP) model,
structured into two main phases: a Static phase and a
Dynamic phase.
The Static phase serves as the foundation of our
approach, where we address a scenario with stationary
player groups, players, and Fog nodes. The focus here is on
minimizing the costs associated with allocating Fog
Fig. 28 Migration cost for different velocity values
resources. Due to the NP-hard classification of the problem,
we introduce a model transformation that relaxes capacity
approach maximizes the profit by varying this percentage and latency constraints by applying penalties for any
from 10 to 30 percent. It is noteworthy that the migration breaches. A Genetic Algorithm (GA) adaptation is utilized
costs are insignificant, not exceeding 3 for 5000 groups to secure near-optimal solutions rapidly, marking a
when the variation rate is fixed at 10%. Based on this, we

123
Cluster Computing

significant enhancement in terms of cost, latency, and 10. Chen, Y., Liu, J., Cui, Y.: Inter-player delay optimization in
execution time compared to existing approaches. multiplayer cloud gaming. 2016 IEEE 9th International Confer-
ence on Cloud Computing (CLOUD), 702–709 (2016)
Transitioning into the Dynamic phase, the system adapts 11. Dinaki, H.E., Shirmohammadi, S., Hashemi, M.R.: Boosted
to changes over time, including variations in groups, metaheuristic algorithms for qoe-aware server selection in mul-
players, and Fog nodes. This phase is designed to itera- tiplayer cloud gaming. IEEE Access 8, 60468–60483 (2020)
tively update the system at each time window, with the aim 12. Gao, Y., Wang, L., Zhou, J.: Cost-efficient and quality of expe-
rience-aware provisioning of virtual machines for multiplayer
of minimizing the total cost involved in resource allocation cloud gaming in geographically distributed data centers. IEEE
and server migration, all while maintaining player satis- Access 7, 142574–142585 (2019)
faction by adhering to latency requirements. Similar to the 13. Aslanpour, M.S., Ghobaei-Arani, M., Heydari, M., Mahmoudi,
Static phase, a penalty-based model transformation is N.: Larpa: a learning automata-based resource provisioning
approach for massively multiplayer online games in cloud envi-
employed here, complemented by a two-step strategy to ronments. Int. J. Commun. Syst. 32(14), 4090 (2019)
minimize unnecessary migrations and refine execution 14. Basiri, M., Rasoolzadegan, A.: Delay-aware resource provision-
time. Initially, a selection policy identifies the necessity for ing for cost-efficient cloud gaming. IEEE Trans. Circuits Syst.
server migrations, followed by an optimization phase that Video Technol. 28(4), 972–983 (2016)
15. Dhib, E., Boussetta, K., Zangar, N., Tabbane, N.: Modeling cloud
applies an adapted GA. This methodology’s performance, gaming experience for massively multiplayer online games. 2016
in terms of convergence time and solution quality, 13th IEEE Annual Consumer Communications & Networking
demonstrates the proposed approach’s effectiveness. Conference (CCNC), 381–386 (2016)
Future directions include the introduction of a predictive 16. Gao, Y., Wang, L., Xie, Z., Guo, W., Zhou, J.: Energy-efficient
and quality of experience-aware resource provisioning for mas-
phase to further improve the placement decisions by sively multiplayer online games in the cloud. International
anticipating changes, enhancing both efficiency and cost. Conference on Service-Oriented Computing, 854–869 (2018)
This will involve initiating a comprehensive data collection 17. Ghobaei-Arani, M., Khorsand, R., Ramezanpour, M.: An auton-
effort to secure authentic operational data for analysis. omous resource provisioning framework for massively multi-
player online games in cloud environment. J. Network Comput.
Appl. 142, 76–97 (2019)
18. Khorsand, R., Ghobaei-Arani, M., Ramezanpour, M.: A self-
learning fuzzy approach for proactive resource provisioning in
References cloud environment. Software: Pract. Exper. 49(11), 1618–1642 ,
(2019)
1. Cai, W., Shea, R., Huang, C.-Y., Chen, K.-T., Liu, J., Leung, 19. Zhang, W., Chen, J., Zhang, Y., Raychaudhuri, D.: Towards
V.C., Hsu, C.-H.: A survey on cloud gaming: Future of computer efficient edge cloud augmentation for virtual reality mmogs.
games. IEEE Access 4, 7605–7620 (2016) Proceedings of the Second ACM/IEEE Symposium on Edge
2. Newzoo Free. Global games market report (2021). https://new Computing 8 (2017)
zoo.com/insights/articles/the-games-market-in-2021-the-year-in- 20. Jie, Y., Li, M., Guo, C., Chen, L.: Game-theoretic online resource
numbers-esports-cloud-gaming allocation scheme on fog computing for mobile multimedia users.
3. Liu, S., Claypool, M., Kuwahara, A., Sherman, J., Scovell, J.J.: China Commun. 16(3), 22–31 (2019)
Lower is better? The effects of local latencies on competitive 21. Zhang, Y., Jiao, L., Yan, J., Lin, X.: Dynamic service placement
first-person shooter game players. In: Proceedings of the 2021 for virtual reality group gaming on mobile edge cloudlets. IEEE
CHI Conference on Human Factors in Computing Systems, J. Select Areas Commun. 37(8), 1881–1897 (2019)
pp. 1–12 (2021) 22. Farahani, R.Z., SteadieSeifi, M., Asgari, N.: Multiple criteria
4. Lin, Y., Shen, H.: Cloudfog: leveraging fog to extend cloud facility location problems: a survey. Appl. Math. Modell. 34(7),
gaming for thin-client MMOG with high quality of service. IEEE 1689–1709 (2010)
Trans. Parallel Distrib. Syst. 28(2), 431–445 (2016) 23. Ben Hadj-Alouane, A., Bean, J.C.: A genetic algorithm for the
5. Liu, S., Xu, X., Claypool, M.: A survey and taxonomy of latency multiple-choice integer program. Oper. Res. 45(1), 92–101
compensation techniques for network computer games. ACM (1997)
Computing Surveys (CSUR) (2022) 24. Benamer, A.R., Hadj-Alouane, N.B., Boussetta, K.: Online
6. Mahmud, R., Kotagiri, R., Buyya, R.: Fog computing: a taxon- games servers placement in fog computing: an hybrid bio-in-
omy, survey and future directions. Internet of everything, spired approach. 2020 IEEE 45th LCN Symposium on Emerging
103–130 (2018) Topics in Networking (LCN Symposium), 141–149 (2020)
7. Choy, S., Wong, B., Simon, G., Rosenberg, C.: A hybrid edge- 25. Jia, M., Liang, W.: Delay-sensitive multiplayer augmented reality
cloud architecture for reducing on-demand gaming latency. game planning in mobile edge computing. Proceedings of the
Multimedia Syst. 20(5), 503–519 (2014) 21st ACM International Conference on Modeling, Analysis and
8. Boroń, M., Brzeziński, J., Kobusińska, A.: P2p matchmaking Simulation of Wireless and Mobile Systems, 147–154 (2018)
solution for online games. Peer-to-peer Network. Appl. 13(1), 26. Wang, Z., Sun, G., Xu, D.: Online optimization algorithms for
137–150 (2020) edge computing-based cloud gaming user experience, 70–75
9. Dhib, E., Boussetta, K., Zangar, N., Tabbane, N.: Cost-aware (2023). IEEE
virtual machines placement problem under constraints over a 27. Deng, Y., Li, Y., Seet, R., Tang, X., Cai, W.: The server allo-
distributed cloud infrastructure. 2017 sixth international confer- cation problem for session-based multiplayer cloud gaming.
ence on communications and networking (ComNet), 1–5 (2017) IEEE Trans. Multimedia 20(5), 1233–1245 (2017)
28. Hong, H.-J., Chen, D.-Y., Huang, C.-Y., Chen, K.-T., Hsu, C.-H.:
Placing virtual machines to optimize cloud gaming experience.
IEEE Trans. Cloud Comput. 3(1), 42–53 (2014)

123
Cluster Computing

29. Wu, D., Xue, Z., He, J.: icloudaccess: Cost-effective streaming of
Amira-Rayane Benamer is a
video games from the cloud with low latency. IEEE Trans. Cir-
Ph.D. Research Scholar, cur-
cuits Syst. Video Technol. 24(8), 1405–1416 (2014)
rently working as an R&D pro-
30. Tian, H., Wu, D., He, J., Xu, Y., Chen, M.: On achieving cost-
ject manager at a French
effective adaptive cloud gaming in geo-distributed data centers.
company. She received her
IEEE Trans. Circuits Syst. Video Technol. 25(12), 2064–2077
Ph.D. from the Faculty of Sci-
(2015)
ences of Tunis in 2023, where
31. Saeed, A., Olsen, R.L., Pedersen, J.M.: Optimizing the loads of
she was a member of the OASIS
multi-player online game servers using markov chains. 2015 24th
lab at the National Engineering
International Conference on Computer Communication and
School of Tunis, University of
Networks (ICCCN), 1–5 (2015)
Tunis El Manar. She holds a
32. Weng, C.-F., Wang, K.: Dynamic resource allocation for mmogs
Master’s degree from the
in cloud computing environments. 2012 8th International Wire-
University of Abdelhamid
less Communications and Mobile Computing Conference
Mehri Constantine, Algeria,
(IWCMC), 142–146 (2012)
obtained in 2017. Her current
33. Gao, Y., Li, Z.: Deep reinforcement learning based rendering
research focuses on leveraging latency-sensitive IoT application
service placement for cloud gaming in mobile edge computing
placement at the Edge/Cloud, infrastructure orchestration employing
systems. In: 2023 IEEE 47th Annual Computers, Software, and
optimization and machine learning, network quality of service, and AI
Applications Conference (COMPSAC), pp. 502–511 (2023)
model deployment. She has published papers in IEEE Globecom,
34. Ghobaei-Arani, M., Souri, A., Rahmanian, A.A.: Resource
IEEE LCN, HPCC, and ICA3PP conferences.
management approaches in fog computing: a comprehensive
review. J. Grid Comput. 18(1), 1–42 (2020)
Nejib Ben Hadj-Alouane re-
35. Martinez, I., Hafid, A.S., Jarray, A.: Design, resource manage-
ceived the B.S. in computer
ment, and evaluation of fog computing systems: a survey. IEEE
engineering from Syracuse
Internet Things J. 8(4), 2494–2516 (2020)
University, Syracuse, NY, in
36. Benamer, A.R., Teyeb, H., Hadj-Alouane, N.B.: Penguin search
1984, and the M.S.E. and Ph.D.
aware proactive application placement. In: Algorithms and
in computer information and
Architectures for Parallel Processing: 19th International Confer-
control engineering from the
ence, ICA3PP 2019, Melbourne, VIC, Australia, December 9–11,
University of Michigan, Ann
2019, Proceedings, Part II 19, pp. 229–244 (2020). Springer
Arbor, in 1986 and 1994. He
37. Python Valve Library. https://github.com/thel3l/python-valve
joined the American University
(2019)
in Dubai (AUD) in September
38. Benamer, A.R., Hadj-Alouane, N.B., Boussetta, K.: On-the-fly
2022, as a Professor of Com-
servers placement for online multiplayer games in the fog. 2021
puter Engineering, specializing
IEEE 23rd Int Conf on High Performance Computing & Com-
in Artificial Intelligence. Prior
munications; 7th Int Conf on Data Science & Systems; 19th Int
to that, he was a Professor of
Conf on Smart City; 7th Int Conf on Dependability in Sensor,
Computer Engineering at the Information and Communication
Cloud & Big Data Systems & Application (HPCC/DSS/Smart-
Technology department at the National Engineering School of Tunis
City/DependSys), 115–122 (2021)
(ENIT). And, before he occupied the positions of Assistant and then
39. Papp, I., Varga, L., Afifi, M., Gere, I., Néda, Z.: Scaling in the
Associate Professor of Computer Engineering at the National School
space-time of the internet. Scient. Rep. 9(1), 1–9 (2019)
of Computer Sciences in Tunisia (ENSI). Before joining the academic
world, he worked extensively in industry. While in the USA he was
Publisher’s Note Springer Nature remains neutral with regard to R&D consultant at the Dow chemical corporation where he developed
jurisdictional claims in published maps and institutional affiliations. highly reliable software/systems for the automated control of chem-
ical plants. He also worked on various projects for the FHWA and
Springer Nature or its licensor (e.g. a society or other partner) holds MDOT, designing and developing simulation software for traffic and
exclusive rights to this article under a publishing agreement with the route guidance systems. In Tunisia, he served as the Information
author(s) or other rightsholder(s); author self-archiving of the Systems Director for a large group, and had the mission of integrating
accepted manuscript version of this article is solely governed by the modern ERP software in the group’s industrial and hotel sectors. As a
terms of such publishing agreement and applicable law. researcher, he authored over 90 publications in reputed journals and
conferences. More recently, his research focused on the use of AI
techniques for the optimization of software, networks and computing
infrastructures. He is also working on the adaptation of machine and
deep learning techniques, to design smart agriculture/irrigation sys-
tems, focusing on water conservation, to accurately forecast power
output of renewable energy plant, and the diagnosis of neurological
diseases. He is also an entrepreneur. He was a founding member of
software start-up where he served for over 10 years as a mentor for
the company’s engineers an architected their flag software for the
management of the human resources for remote mining operations in
Canada.

123
Cluster Computing

Khaled Boussetta is full profes- Analysis of Service and Industrial Systems (OASIS) research labo-
sor at Université Sorbonne Paris ratory. She is also a member of the Modeling and Optimization of
Nord. He received a Ph.D. Sustainable Operations and Supply Chains (MOSOS) research group.
degree in Computer Science She is a leading researcher in optimization and supply chain design
from University of Versailles in and management. Her current research interests include integrated
2003 and an HDR (Habilitation logistics systems and sustainable logistics, smart scheduling, and OR
à Diriger des Recherches) from applications to telecommunications, cloud systems, and health
University Paris 13 in 2018. His services.
research interests cover design-
ing, modeling and performance
evaluation of wireless networks.
Currently, his research work
focuses on IoT, vehicular net-
works, Edge/Fog/Cloud, infras-
tructures dimensioning and
network mechanisms to support delay sensitive applications. He is co-
author of 6 book chapters and 95 international publications. He is also
actively involved in many top-tier conferences and journals.

Atidel B. Hadj-Alouane is cur-


rently the Head of the Depart-
ment of Industrial Engineering
and Engineering Management at
the University of Sharjah in the
UAE. Until June 2021, she was
a Professor of Industrial Engi-
neering at the National Engi-
neering School of Tunis (ENIT),
Tunisia. She holds M.S.E. and
Ph.D. degrees in Industrial and
Operations Engineering from
the University of Michigan, Ann
Arbor, and a Principal Engi-
neering degree in Industrial
Engineering from ENIT. She is the founder of the Optimization and

123

You might also like