Let's Share: A Game-Theoretic Framework for Resource Sharing in Mobile Edge Clouds

Let's Share: A Game-Theoretic Framework for Resource Sharing in Mobile   Edge Clouds

In this section, we give a brief overview of Multi-Objective Optimization (MOO), cooperative game theory, and the core.

Multi-Objective Optimization

Multi-Objective Optimization (MOO) identifies a vector $`\boldsymbol{x}^*=[x_1^*,x_2^*,\cdots ,x_t^*]^T`$ that optimizes a vector function

\begin{equation}
\label{eq:vectorobjective}
    \centering 
    \bar{f}(\boldsymbol{x})=[f_1(\boldsymbol{x}),f_2(\boldsymbol{x}),\cdots,f_N(\boldsymbol{x})]^T
\end{equation}

such that

\begin{align}
\label{eq:constraints}
    \centering 
    & g_i(\boldsymbol{x})\geq 0, \; i=1,2,\cdots,m, \\
    &h_i(\boldsymbol{x})=0\;\; i=1,2,\cdots,p. \nonumber
\end{align}

where $`\boldsymbol{x}=[x_1,x_2,\cdots ,x_t]^T`$ is a vector of $`t`$ decision variables and the feasible set is denoted by $`F`$. The fundamental difference between a single objective optimization (SOO) and MOO is that MOO involves a vector of objective functions rather than a single objective function. Hence, the resulting solution is not a single point, but a frontier of solutions known as Pareto frontier or Pareto boundary (see for details). Some basic definitions related to MOO are:

Pareto Improvement or Pareto Dominated Solution: Given an initial allocation, if we can achieve a different allocation that improves at least one individual function without degrading any other, then the initial allocation is called Pareto improvement.

Pareto Optimality: For any minimization problem, $`\boldsymbol{x}^*`$ is $`Pareto\; Optimal`$ if the following holds for every $`\boldsymbol{x} \in F`$,

\begin{align}
\label{eq:paretoptimality}
    \bar{f}(\boldsymbol{x}^*)\leq\bar{f}(\boldsymbol{x}).
\end{align}

where $`\bar{f}(\boldsymbol{x}^*)=[f_1(\boldsymbol{x}^*),f_2(\boldsymbol{x}^*),\cdots,f_N(\boldsymbol{x}^*)]^T`$.

MOO with two objective functions

Figure 1 shows a MOO problem with two objective functions $`f_1`$ and $`f_2`$. The boundary $`\overleftrightarrow{ab}`$ is the Pareto frontier as it consists of all the Pareto optimal solutions.

Cooperative Game Theory

Cooperative game theory provides a set of analytical tools that assist in understanding the behavior of rational players in a cooperative setting . Players can have agreements among themselves that affect strategies as well as utilities obtained by the game players. Coalition game, a type of cooperative game, deals with the formation of coalitions, namely groups of two or more cooperating players. Formally,

Coalition Game : Any coalition game with non-transferable utility (discussed below) can be represented by the pair $`(\mathcal{N},\mathcal{V})`$ where $`\mathcal{N}`$ is the set of players that play the game, while $`\mathcal{V}`$ is a set of payoff vectors such that :

  1. $`\mathcal{V}(S), \forall S \subseteq \mathcal{N}`$ should be a closed and convex subset of $`\mathbb{R}^{|\mathcal{N}|}`$.

  2. $`\mathcal{V}(S)`$ should be comprehensive, i.e., if we are given payoffs $`\mathbf{x} \in \mathcal{V}(S)`$ and $`\mathbf{y} \in \mathbb{R}^{|S|}`$ where $`\mathbf{y}\leq \mathbf{x}`$, then $`\boldsymbol{y} \in \mathcal{V}(S)`$. In other words, if the members of coalition $`S`$ can achieve a payoff allocation $`\mathbf{x}`$, then the players can change their strategies to achieve an allocation $`\mathbf{y}`$ where $`\mathbf{y}\leq \mathbf{x}`$.

  3. The set $`\{\mathbf{x}| \mathbf{x} \in \mathcal{V}(S) \;`$ and $`\; x_n \geq z_n, \forall n \in S \}`$, with $`z_n = \max\{y_n|\mathbf{y} \in \mathcal{V}(\{n\}) \}\le \infty \; \forall n \in \mathcal{N}`$ should be a bounded subset of $`\mathbb{R}^{|S|}`$. In other words, the set of vectors in $`\mathcal{V}(S)`$ for a coalition $`S`$ where the coalition members receives a payoff at least as good as working alone (non-cooperatively) is a bounded set.

Utility: The payoff or gain a player receives in the game is known as utility.

Value of a coalition: The sum of utilities of the coalition members is known as the value $`{v}`$ of a coalition.

Non-Transferable Utility (NTU): If the total utility of any coalition cannot be assigned a single real number or if there is a rigid restriction on utility distribution among players, then the game has a non-transferable utility. In other words, the payoff each player receives and the value of coalition depend on the game strategy. Utility cannot be transfered freely among the players.

Characteristic function: The characteristic function for any coalition game with NTU is a function that assigns a set of payoff vectors, $`\mathcal{V}(S) \subseteq \mathbb{R}^{|S|}`$, to game players where each element of the payoff vector $`x_n`$ represents a payoff that player $`n \in S`$ obtains given a strategy selected by the player $`n`$ in the coalition $`S`$.

Characteristic Form Coalition Games : A coalition game is said to be of characteristic form, if the value of coalition $`S \subseteq \mathcal{N}`$ depends only on the members of the coalition. (This means that players that are not part of the game don’t impact the value of coalition.)

Superadditivity of NTU games: A canonical game with NTU is said to be superadditive if the following property is satisfied.

\begin{align}
\label{eq:superadditivity}
  & \{x \in \mathbb{R}^{S_1\cup S_2}|(x_n)_{n \in S_1} \in \mathcal{V}(S_1), (x_m)_{m \in S_2}\nonumber \\
& \in \mathcal{V}(S_2)   \}   \subset \mathcal{V}(S_1 \cup S_2) \;  \forall S_1 \subset \mathcal{N}, S_2 \subset \mathcal{N}, S_1 \cap S_2 =\emptyset. 
%v(S_1 \cup S_2 )\geq v(S_1)+v(S_2) \; \forall S_1 \subset \mathcal{N}, S_2 \subset \mathcal{N}, s.t. S_1\cap S_2 =\emptyset.
\end{align}

where $`x`$ is a payoff allocation for the coalition $`S_1 \cup S_2`$.

That is, if any two disjoint coalitions $`S_1`$ and $`S_2`$ form a large coalition $`S_1 \cup S_2`$, then the coalition $`S_1 \cup S_2`$ can always give its members the payoff that they would have received in the disjoint coalition $`S_1`$ and $`S_2`$. It is worth mentioning that $`\mathcal{V}`$ is the set of payoff vectors while $`{v}`$ is the sum of payoffs for all coalition players.

Canonical Game: A coalition game is canonical if it is superadditive and in characteristic form.

The core is a widely used concept for dealing with canonical games as discussed below.

Core

To help us explain the core, we first define some terms .

Group Rational: A payoff vector $`\textbf{x}\in \mathbb{R}^\mathcal{N}`$ for distributing the coalition value $`v(\mathcal{N})`$ to all players is group-rational if $`\sum_{n \in \mathcal{N}}x_n=v(\mathcal{N})`$.

Individual Rational: A payoff vector $`\textbf{x}\in \mathbb{R}^\mathcal{N}`$ is individually rational if every player can obtain a payoff no less than acting alone (not in a coalition), i.e., $`x_n \geq v(\{n\}), \forall n\in \mathcal{N}`$.

Imputation: A payoff vector that is both individual and group rational is an imputation.

Grand Coalition: The coalition formed by all game players $`\mathcal{N}`$ is the grand coalition.

Based on the above definitions, we can define the core of an NTU canonical coalition game as:

Core: For any NTU canonical game $`(\mathcal{N}, \mathcal{V})`$, the core $`C_{NTU}`$ is the set of imputations in which no coalition $`S\subset\mathcal{N}`$ has any incentive to reject the proposed payoff allocation and deviate from the grand coalition to form the smaller coalition $`S`$ instead. Mathematically, this is

\begin{align}
\label{eq:coreTU}
    \mathcal{C}_{NTU}&= \{ \mathbf{x} \in \mathcal{V}(\mathcal{N}) | \forall S \subset \mathcal{N}, \nexists \mathbf{y} \in \mathcal{V}(S) \; such\; that \; y_n > x_n, \nonumber \\
    &  \forall n \in S    \}.
    %\bigg \{ \mathbf{x}: \sum_{n \in \mathcal{N}}x_n=v(\mathcal{N}) \; and \; \sum_{i \in S} x_i \geq v(S)\; \forall\; S\subseteq \mathcal{N}.\bigg\}
\end{align}

Any payoff allocation from the core is Pareto-optimal as evident from definition of the core. Furthermore, the grand coalition formed is stable, i.e., no two players will have an incentive to leave the grand coalition to form a smaller coalition.

However, the core is not always guaranteed to be non-empty. If the core is non-empty, it will be a convex set , whereas a convex set consists of infinite convex combinations of the points within the set . Therefore, a non-empty core is large and finding a payoff allocation (vector) in the core is not easy.

User/Application Request Satisfaction: The extent to which a request for resources is satisfied. Mathematically, if $`r`$ is the requested amount and $`x`$ is the provisioned amount, then application request satisfaction is given by $`x/r`$.