Introduction
Cloud computing has emerged as a fundamental component in contemporary trade and service exchanges [1]. Its expansion is marked by three notable trends: 1) the swift progress of the Internet of Things (IoT) and explosion in number of its devices [2]; 2) the need for advanced applications, such as VR/AR; and 3) the imperative of ensuring security and privacy. This growth may soon surpass the centralized cloud and its backhaul network’s capacity [3]. To address this, Fog and Edge Computing have been introduced to decentralize and meet demand by bringing services closer to users [4]. Nonetheless, the capabilities of idle, powerful consumer devices like PCs, smart devices, wearables, vehicles, and appliances are underutilized [5], [6]. These devices have evolved from specialized hardware to versatile computing tools [3].
User devices have the potential to create an underutilized tier of edge computing, which we term extreme edge computing (XEC). This involves processing done exclusively on user devices, characterized by their proximity to end-users and modest processing power [7]. XEC harnesses collective idle computational resources across numerous devices rather than relying on singular device capabilities [8]. This has become possible due to nascent technologies, such as unikernels and microcontainers [9], [10]. While inherently decentralized, XEC can also adopt a semi-decentralized architecture. edge crowd computing (ECC) represents this semi-decentralized model, where service providers distribute their offerings through third-party devices within the user’s vicinity, paralleling the service provision models of companies like Uber or Airbnb [11].
ECCs present a notable use case in game streaming services over wireless networks. For low-capability devices like smartphones, the service provider uses edge servers for streaming sophisticated games, aiming to reduce latency and enhance the user experience. Mobility-related connectivity issues, for instance, on a train, may disrupt service access, preventing enjoyment of the game [12]. Although mobile devices can store the game, they often lack the necessary processing power and battery life to run it effectively. To counter unreliable connections, the service provider might transfer game assets directly to the user’s device, which temporarily coordinates gameplay by utilizing nearby devices, such as those of fellow passengers, by sharing the game’s workload [13]. These “worker” devices would receive compensation from the service provider. While not yet viable with current technology, this model is foreseen with the advent of 6G and D2D URLLC advancements in XEC and ECC frameworks [14], [15].
Edge Cloud Computing (ECC) is promising but comes with unique challenges. This study tackles two main concerns: 1) the need for user-owned devices to perform reliably despite being multitenant and 2) the diversity in usage, connection, and capabilities among these devices. Deploying ECC on personal devices is complex, primarily due to their and their owners’ unpredictable reliability, often linked to the owners’ behavior. Similar to mobile crowd sensing (MCS), which leverages incentives to manage participant engagement [16], we argue that such strategies can be adapted for computational tasks in ECC. However, while MCS rewards are for human input, ECC incentives compensate for any device performance dips when sharing computational tasks. Thus, incentives are crucial in ECC for converting computational resources into tradable assets [11].
Several studies have explored Edge Computing frameworks where there is an interaction between customers and service providers. Harth-Kitzerow and Garrido [17] tackled the issue of mutual self-interest—workers wanting maximum reward for least effort and customers wanting maximum service for least payment—by introducing a validation entity to ensure job execution fidelity by re-evaluating job samples. Additionally, [18] presents a macroeconomic analysis based on a double auction model, focusing on enhancing social welfare considerations that align the objectives of both service providers and customers. Similarly, [19] proposes a dynamic pricing strategy in a sharing economy context to improve social welfare. Although social welfare is an important overarching metric, it is essential to acknowledge the diverse array of more immediate system performance indicators, such as latency and throughput, especially given the variable and delay-sensitive nature of edge computing environments [20].
XEC and ECC systems are emerging technologies that have not been extensively explored in existing research. The untapped computational resources of advanced edge devices are now more accessible, thanks to advancements in virtualization, software-defined networking, and containerization [9], [12], [21], [22]. These technologies enhance network adaptability and autonomous organization, facilitating seamless computational handover from user devices to proximal devices [23]. The efficacy of new semi-decentralized XEC systems, like ECC, remains unquantified. Performance largely depends on workers’ profit motives. Deployers of ECC orchestrators can gain from understanding the correlation between incentives and performance. This insight is crucial for reducing recruitment costs and maximizing profits while delivering services on time and to customer satisfaction. Therefore, investigating the incentives-performance relationship is imperative.
This study examines ECC systems with orchestrator oversight, where incentives mitigate uncertainty. We introduce the incentive-vacation queueing (IVQ) framework, a queueing-theory method, to evaluate how incentives influence a worker’s output. IVQ focuses on multitenant worker devices adopting a vacation scheme, whereby the device attends to its owner’s requirements post ECC service. We assess our model via vacation queueing theory, specifically the M/G/1 queue with restricted pure vacations, noting that incentives, being stochastic, alter vacation lengths. This article’s contributions are as follows.
We propose the IVQ model with an incentive-vacation function, investigate the impact of its convexity on the system’s preference of workers and orchestrator, and the performance of workers in the system.
We formulate a general form of a variable preference incentive-vacation function and propose two incentive-vacation function families, the log-family and the rational-family. Furthermore, we provide a general framework for analyzing systems in which incentives can impact performance.
We derive closed-form expressions for performance in an ECC system as well as propose two sharing economy-based performance metrics: a) revenue per job and b) revenue per second.
We investigate the impact of incentives distributed by the orchestrator on the worker’s performance.
The structure of this document is as follows: Section II presents a synopsis of extreme edge systems and outlines the system architecture. Section III explores vacation queueing, its connection to incentives, and introduces the IVQ model, examining the effects of their convex relationship on the system. Section IV analyzes the decision-making process of the orchestrator concerning worker incentives within IVQ systems. Section V interprets the analytical results through a numerical illustration. Section VI discusses practical implications of implementing the IVQ model. This article concludes in Section VII with a summary and prospects for subsequent research.
Extreme Edge System Overview
XEC is laden with heterogeneity and uncertainty because it relies on user-owned infrastructure that suffers from numerous sources of uncertainty [24], [25]. Efficient utilization of XEC infrastructure involves taming with uncertainty and constraining it so that the system’s behavior can be predicted. However, the nature of user-owned devices is sporadic as they are used by their owners. Thus, an XEC system should seek to utilize the idle resources abundant on these user-owned devices in spite of their owner’s access to them. A service can be deployed on such devices that are present in the end-user’s immediate vicinity to ultimately provide timely service to other customers. While this is possible in theory, achieving reliable service provision is a challenge of XEC. In this section, we describe an ECC system, an instance of XEC, in which the service provider’s orchestrator recruits user-owned devices, or workers, to provide service to customers. The worker devices agree to provide their resources as infrastructure for the service provider, an ECC orchestrator, in exchange for an incentive payment. Fig. 1 illustrates an orchestrated ECC system, comprised of three main entities.
Customer Devices: These are the client devices that request and use the services provided by the ECC service provider.
Worker Devices: These are user-owned devices that rent their idle computational resources to the ECC service provider in exchange for an incentive.
Orchestrator: The central component of the orchestrated ECC system that coordinates the activities of the customer and worker devices, to ensure that jobs are completed efficiently. In addition, the orchestrator is also responsible for providing incentives to the worker devices. In addition to acting as a liaison between customers and workers, the orchestrator also tracks the performance of workers and their profitability to avoid unexpected worker churning.
Fig. 2 illustrates the operation of an orchestrated ECC system. First, the customer submits a job request to the nearest orchestrator. The orchestrator can also be a latent component that is available on the customer device itself and activated when the service provider is out of reach. The orchestrator then recruits a worker to perform this job. After receiving the job request from the orchestrator, the worker and the customer directly connect to each other so that the detailed job instructions are transmitted (or required assets). Finally, the worker services the job and returns it to the customer device which acknowledges its completion. Upon acknowledgment, the orchestrator processes the incentive payment to the worker device.
Operation of an ECC system: Customers request service from the orchestrator that would recruit workers for service provision.
This system can be viewed as a server farm [26] in which the ECC orchestrator represents a scheduler with a queue in which customers’ jobs - with attached job incentives - arrive, and are then distributed to the ECC workers as illustrated in Fig. 3.
ECC job distribution model: The orchestrator distributes jobs to multitenant workers.
Generally, customer service requests can be modeled into an orchestrator arrival rate,
In this article, we investigate performance from the perspective of an individual worker. We model the service time spent on serving the owner’s jobs as a vacation whose duration is dictated by the amount of incentive the worker receives. In the following section, we will briefly overview vacation queueing prior to introducing the proposed IVQ model. Table I lists the notations used throughout this article.
Modeling of Incentive-Vacation Queueing (Worker Perspective)
In an ECC system, the availability of worker devices and their resources is heavily influenced by the users’ behavior. This spontaneity introduces a degree of uncertainty in the availability of those resources. However, the uncertainty stemming from the user’s behavior can be mitigated by the use of incentives that target the human user.
In this section, we employ vacation queueing to abstract the user behavior and the influence of stochastic incentives over it. We give an overview of vacation queueing, and introduce the IVQ model which, using vacation queueing, captures the impact of incentives in an ECC system. We provide an analysis of the system, the relationship between vacations and incentives, and the performance of an orchestrator-based ECC system.
A. Overview of Vacation Queueing
Vacation queueing is a type of queueing in which the server becomes unavailable for a period of time called a vacation. Implementing a vacation policy introduces a degree of flexibility in the modeling of real systems as vacations abstract the server’s other duties into a single random variable,
Fig. 4 depicts the general vacation server’s activity over time. If the type of vacation model allows consecutive service with no vacation in between, then the service period is the total period for which the server was busy. Similarly, if consecutive vacations have no service in between (i.e., zero-length vacation), then the vacation period is the total duration of consecutive vacations. Generally, the service cycle spans the service period and a single vacation. This is the case for general vacation models [27]. In this work, we use a certain type of vacation queueing,
B. P-Limited Vacation Queueing
P-Limited, or pure limited, Vacation Queueing is a type of nonexhaustive vacation queueing in which the server takes a vacation after each departure, limiting its service period to a single job [27], [28]. If no jobs were queued for service at a vacation completion instance, the server keeps repeating its vacations until a job arrives. Fig. 5 illustrates the server’s activity over time in PVQ.
P-limited vacation model: Each service period must be followed by a vacation period.
What makes PVQ interesting is its compatibility with multitenancy as it would abstract the worker’s activities in the vacation. The modeling of the vacation as a random variable (or a function of a random variable) simplifies the complexity of the worker’s non-XEC workload into the vacation duration \begin{equation*} \widetilde {\rho } = \rho + \lambda \mathbb {E}[V] < 1 \tag{1}\end{equation*}
C. Incentive Vacation Queueing
IVQ is a form of PVQ in which vacation duration,
Incentives have varying forms; however, they can be categorized into two main categories: 1) monetary and 2) nonmonetary incentives. Unlike monetary incentives in which money is used to incentivize, nonmonetary incentives include rewards, such as recognition, badges, points, or discounts. Nonmonetary incentives also extend to include forms of incentive that stem from an existing context, such as a game (e.g., in-game rewards or rank) or a community (e.g., contributions of a Google Maps guide), or the gamification of an activity (e.g., gamified focus timer) [30]. The design of incentives has various aspects according to the context, such as the setting in which the ECC system takes place, what audience comprises the worker devices and their demographics, or even if it is a closed setting [31].
In IVQ, we define \begin{equation*} \widetilde \rho = \rho + \lambda \mathbb {E}[V]= \rho + \lambda \mathbb {E}[r(X)] < 1 \tag{2}\end{equation*}
\begin{equation*} \mathbb {E}[r(X)] < \frac {1}{\lambda } - \frac {1}{\mu } \tag{3}\end{equation*}
Equation (3) is useful as it shows that
D. Convexity of r(X)
The choice of
Convexity of
As a consequence, the choice of a worker’s incentive-vacation function needs to take various factors into consideration. For example, if the worker is new to the system and not much information is available about them, both the orchestrator and the worker can agree on a convex
E. Variable Convexity Incentive-Vacation Function
The objective of this section is to model a wide class of incentive-vacation functions that exist in practice, and through a tuning parameter,
The concave anti-convex of \begin{equation*} r^{\prime }_{\text {cvx}}(x)=r^{\prime }_{\text {ccv}}\left ({X_{\max }+X_{\min } -x}\right ) \tag{4}\end{equation*}
\begin{equation*} r_{\text {ccv}}(x)=-r_{\text {cvx}}\left ({X_{\max }+X_{\min }-x}\right )+V_{\max } +r_{\text {cvx}}\left ({X_{\max }}\right ) \tag{5}\end{equation*}
\begin{align*} r_{\text {lnr}}(x)=&\frac {V_{\min }-V_{\max }}{X_{\max }-X_{\min }}x \\&{}+V_{\max }\left ({ 1-\frac {X_{\min }\left ({V_{\min }-V_{\max }}\right )}{V_{\max }\left ({X_{\max }-X_{\min }}\right )} }\right ). \tag{6}\end{align*}
\begin{equation*} r\left ({x,\alpha }\right )=\left ({-\alpha }\right )^{+} r_{\text {cvx}}(x) + \left ({-|\alpha |}\right )^{+}r_{\text {lnr}}(x) + \left ({\alpha }\right )^{+}r_{\text {ccv}}(x) \tag{7}\end{equation*}
The selection of the seed
It is important to note that both, the log and the rational families are two flexible examples that cover a wide range of functions. An orchestrator can mix-and-match different
The log-family stems from the choice of \begin{align*} -\log _{\beta }(A X_{\min } + B) = V_{\max }, \quad -\log _{\beta }(A X_{\max } + B) = V_{\min } \\{}\tag{8}\end{align*}
\begin{align*} A=-\frac {\beta ^{ V_{\max }}-\beta ^{ V_{\min }}}{X_{\min } - X_{\max }},\qquad B=\frac {\beta ^{-V_{\max }} X_{\max }-\beta ^{- V_{\min }} X_{\min }}{X_{\max }-X_{\min }} \\{}\tag{9}\end{align*}
\begin{align*} r^{(\log )}_{\text {cvx}} ={}-\log _{\beta } \left ({\frac {\beta ^{-V_{\max }-V_{\min }} \left ({\beta ^{V_{\max }} (x-X_{\min })+\beta ^{V_{\min }} (X_{\max }-x)}\right )}{X_{\max }-X_{\min }}}\right ). \\{}\tag{10}\end{align*}
\begin{align*}&r_{\text {ccv}}^{(\log )}=V_{\max }+V_{\min } \\&\;\quad {}+\log _{\beta } \left ({\frac {\beta ^{-V_{\max }-V_{\min }} \left ({\beta ^{V_{\max }} (X_{\max }-x)+\beta ^{V_{\min }} (x-X_{\min })}\right )}{X_{\max }-X_{\min }}}\right ) \\{}\tag{11}\end{align*}
\begin{align*}&r_{\log }(x,\alpha ,\beta ) \\&\;=(-\alpha )^{+} r^{(\log )}_{\text {cvx}}(x,\beta )+(1-| \alpha |)^{+} r_{\text {lnr}}(x)+(\alpha )^{+} r^{(\log )}_{\text {ccv}}(x,\beta ). \\{}\tag{12}\end{align*}
Similarly, we can derive the rational-family of vacation functions by taking \begin{align*} r^{(\text {rat})}_{\text {cvx}}(x)=&\frac {1}{C x + D} \\=&\frac {V_{\max } V_{\min } \left ({X_{\min }-X_{\max }}\right )}{(V_{\min }-V_{\max })x - X_{\max }V_{\min }+V_{\max }X_{\min }} \tag{13}\end{align*}
\begin{equation*} r_{\text {ccv}}^{(\text {rat})}(x)=\frac {V_{\max }^{2} \left ({x-X_{\max }}\right )+V_{\min }^{2} \left ({X_{\min }-x}\right )}{V_{\max } \left ({x-X_{\max }}\right )+V_{\min } \left ({X_{\min }-x}\right )} \tag{14}\end{equation*}
\begin{align*}&r_{\text {rat}}(x,\alpha ) \\&\;=(-\alpha )^{+} r^{(\text {rat})}_{\text {cvx}}(x)+(1-| \alpha |)^{+} r_{\text {lnr}}(x)+(\alpha )^{+} r^{(\text {rat})}_{\text {ccv}}(x). \tag{15}\end{align*}
Log-family for variable
F. Measuring r(x)
’s Preference
The convexity of the function
The second derivative, while it does not provide a solid common ground for comparing how an \begin{align*}&\int _{X_{\min }}^{X_{\max }} (r(x)-r_{\text {lnr}}(x)) \, dx = \int _{X_{\min }}^{X_{\max }} r(x)\,dx-\int _{X_{\min }}^{X_{\max }}r_{\text {lnr}}(x) \, dx \\&\;= R(X_{\max })-R(X_{\min }) - R_{\text {lnr}}(X_{\max })+R_{\text {lnr}}(X_{\min }) \\&\;=R(X_{\max })-R(X_{\min }) - \frac {1}{2} (V_{\max }+V_{\min })(X_{\max }-X_{\min }) \\{}\tag{16}\end{align*}
We now construct the two functions of maximal preference to each the orchestrator and the worker \begin{align*} r_{\text {abs,cvx}}(x)=&\begin{cases} V_{\max }, & x=X_{\min } \\ V_{\min }, & X_{\max }\geq x>X_{\min } \\ 0, & {\mathrm {otherwise}} \end{cases} \\ r_{\text {abs,ccv}}(x)=&\begin{cases} V_{\min }, & x=X_{\max } \\ V_{\max }, & X_{\max }> x\geq X_{\min } \\ 0, & {\mathrm {otherwise}}. \end{cases} \tag{17}\end{align*}
Then, we measure the proportion of twice the area acquired in (16) and (17), since the area between the \begin{align*} \gamma=&2\frac {\int _{X_{\min }}^{X_{\max }} (r(x)-r_{\text {lnr}}(x)) \, dx}{\int _{X_{\min }}^{X_{\max }} (r_{\text {abs,ccv}}(x)-r_{\text {abs,cvx}}(x)) \, dx} \\=&2\frac {R(X_{\max })-R(X_{\min }) - \frac {1}{2} (V_{\max }+V_{\min })(X_{\max }-X_{\min })}{(V_{\max }-V_{\min })(X_{\max }-X_{\min })} \\{}\tag{18}\end{align*}
Measuring preference of an IVQ function: Performance metric,
Performance Analysis
A. IVQ Performance Metrics
For IVQ in the context of ECC and XEC, there are a few performance metrics that are of concern [28]. For this work, we focus on the metrics that are related to the worker. In general, we have six main parameters: 1) the service time (or equivalently service rate); 2) \begin{equation*} \mu = \lambda \left ({ \frac {1}{1-V_{\%}} }\right ). \end{equation*}
The most fundamental metric is the average queue length [27], [28] that we express as \begin{align*} \mathbb {E}\left [{Q_{v}}\right ]=&\lambda ^{2}\frac {2S(S+\mathbb {E}[V])+\mathbb {E}\left [{V^{2}}\right ]}{2(1-\widetilde {\rho })}+\lambda \frac {\mathbb {E}\left [{V^{2}}\right ]}{2\mathbb {E}[V]} \\=&\frac {\lambda 2S(\lambda S +\mathbb {E}\left [{V_{\%}}\right ])+ \mathbb {E}\left [{V_{\%}^{2}}\right ]}{2(1-\widetilde \rho )}+\frac {\mathbb {E}\left [{V_{\%}^{2}}\right ]}{2 \mathbb {E}\left [{V_{\%}}\right ]} \tag{19}\end{align*}
The queue length can then be used to obtain the number of jobs in the system by adding the current job being processed whose service time is equivalent to PVQ server utilization \begin{align*} \mathbb E\left [{L_{v}}\right ]=&\lambda ^{2}\frac {2S(S+\mathbb {E}[V])+\mathbb {E}\left [{V^{2}}\right ]}{2(1-\widetilde {\rho })}+\lambda \frac {\mathbb {E}\left [{V^{2}}\right ]}{2\mathbb {E}[V]} + \widetilde {\rho } \\=&\frac {\lambda 2S(\lambda S + \mathbb {E}\left [{V_{\%}}\right ])+ \mathbb {E}\left [{V_{\%}^{2}}\right ]}{2(1-\widetilde {\rho })}+\frac {\mathbb {E}\left [{V_{\%}^{2}}\right ]}{2 \mathbb {E}\left [{V_{\%}}\right ]}+\widetilde {\rho } \\=&\mathbb E\left [{Q_{v}}\right ] + \widetilde \rho {.} \tag{20}\end{align*}
Consequently, the mean waiting time can also be obtained via the product of the interarrival time (which is the same as the length of the PVQ service cycle) and the queue length \begin{align*} \mathbb E\left [{T_{Q_{v}}}\right ]=&\lambda \frac {2S(S+\mathbb {E}[V])+\mathbb {E}\left [{V^{2}}\right ]}{2(1-\widetilde {\rho })}+\frac {\mathbb {E}\left [{V^{2}}\right ]}{2\mathbb {E}[V]} \\ \\=&\frac { 2S(\lambda S + \mathbb {E}\left [{V_{\%}}\right ])+ \tau \mathbb {E}\left [{V_{\%}^{2}}\right ]}{2(1-\widetilde {\rho })}+\frac {\tau \mathbb {E}\left [{V_{\%}^{2}}\right ]}{2 \mathbb {E}\left [{V_{\%}}\right ]} \\=&\frac {\mathbb {E}\left [{Q_{v}}\right ]}{\lambda } = \frac {\mathbb {E}\left [{L_{v}}\right ] - \widetilde \rho }{\lambda }. \tag{21}\end{align*}
It is important to note that while the mean waiting time captures the job-related latency, it does not capture the customer-worker-orchestrator end-to-end latency.
The queue length can also be used to obtain the mean worker’s per-job revenue, \begin{equation*} \mathbb E[R] = \frac {\mathbb {E}[X]}{\mathbb {E}\left [{Q_{v}}\right ]}. \tag{22}\end{equation*}
Per-job revenue is an important metric from the worker’s perspective as it allows the worker to assess the profitability of joining the ECC system. It is of concern for the orchestrator to ensure that workers would be available for recruitment, and thus allow the persistence of service provision.
The parameters of \begin{align*} \lambda _{\max }=&\frac {1}{V_{\min }+S}=\frac {1}{r(X_{\max })+S} \\ \lambda _{\min }=&\frac {1}{V_{\max }+S} = \frac {1}{r(X_{\min })+S} \tag{23}\end{align*}
\begin{align*} R_{\max }=&\frac {2 X_{\max } \left ({\lambda _{\max } V_{\min }-S \lambda _{\max }+1}\right )}{\lambda _{\max }^{2} \left ({2 S V_{\min }+S}\right )} \\=&\frac {2 X_{\max } \left ({V_{\%,\min }-S \lambda _{\max }+1}\right )}{\lambda _{\max } \left ({2 S V_{\%,\min }+S\lambda _{\max }}\right )} \tag{24}\end{align*}
\begin{align*} R_{\min }=&\frac {2 X_{\min } \left ({\lambda _{\min } V_{\max }-S \lambda _{\min }+1}\right )}{\lambda _{\min }^{2} \left ({2 S V_{\max }+S}\right )} \\=&\frac {2 X_{\min } \left ({V_{\%,\max }-S \lambda _{\min } +1}\right )}{\lambda _{\min } \left ({2 S V_{\%,\max }+S\lambda _{\min }}\right )}. \tag{25}\end{align*}
It should be clear from and 25 that the minimal and maximal revenue are directly impacted by the choice of parameters
B. Impact of Incentive Origin in ECC
In the IVQ model, customers pay orchestrators, who then compensate workers. Workers can receive incentives through: 1) orchestrator-determined rates; 2) orchestrator-mediated matchmaking with commission; or 3) direct payment from customers in a decentralized manner (if an orchestrating entity is completely absent, this would be a decentralized XEC scenario). From the perspective of the worker, both the second and third methods are equivalent, as the TQI can be cast as
The job incentive
C. Impact of Orchestrator Origin Incentives
In this section, we derive the first and second moments for the Uniform TQI case for both the log-family of functions, \begin{align*} f_{X,\Pi }(x) = \begin{cases} \frac {1}{X_{\max }-X_{\min }}, & X_{\min } \leq x \leq X_{\max } \\ 0, & {\mathrm {otherwise}}\end{cases} \tag{26}\end{align*}
1) Log Incentive-Vacation Family:
For the log-family, i.e., \begin{align*}&\mathbb {E}_{\Pi }\left [{V_{{\mathrm {log}}}\left ({x,\alpha }\right )}\right ] \\&\;=\left ({-\alpha }\right )^{+} \mathbb {E}_{\Pi }\left [{r_{{\mathrm {log},cvx}}(x)}\right ] +\left ({1-| \alpha | }\right )^{+} \mathbb {E}_{\Pi }\left [{r_{\text {lnr}} (x)}\right ] \\&\;\quad {}+\left ({\alpha }\right )^{+} \mathbb {E}_{\Pi }\left [{r_{{\mathrm {log},ccv}}(x)}\right ] \tag{27}\end{align*}
\begin{align*} \mathbb {E}_{\Pi }\left [{r_{{\mathrm {log},cvx}}\left ({x,\beta }\right )}\right ]=&\frac {\beta ^{V_{\max }} \left ({V_{\max }-V_{\min }}\right )}{\beta ^{V_{\min }}-\beta ^{V_{\max }}}+V_{\max } \\&{}+\frac {1}{\log \left ({\beta }\right )} \tag{28}\end{align*}
\begin{equation*} \mathbb {E}_{\Pi }\left [{r_{\text {lnr}}(x)}\right ]= \frac {V_{\max }+V_{\min }}{2} \tag{29}\end{equation*}
\begin{equation*} \mathbb {E}_{\Pi }\left [{r_{{\mathrm {log},ccv}}\left ({x,\beta }\right )}\right ]=\frac {\beta ^{V_{\max }}V_{\max }-V_{\min } \beta ^{V_{\min }}}{\beta ^{V_{\max }}-\beta ^{V_{\min }}}-\frac {1}{\log \left ({\beta }\right )}. \tag{30}\end{equation*}
We formulate the second moment for the log-family as \begin{align*}&\mathbb {E}_{\Pi }\left [{V_{{\mathrm {log}}}^{2}\left ({x,\alpha ,\beta }\right )}\right ]=\left ({(\alpha )^{+}}\right )^{2} \mathbb {E}_{\Pi }\left [{r_{{\mathrm {log},ccv}}\left ({x,\beta }\right )^{2}}\right ] \\&\;\quad {}+2 \left ({(\alpha )^{+}}\right ) \left ({(1-|\alpha |)^{+}}\right ) \mathbb {E}_{\Pi }\left [{r_{{\mathrm {log},ccv}}\left ({x,\beta }\right ) r_{\text {lnr}}(x)}\right ] \\&\;\quad {}+\left ({(-\alpha )^{+}}\right )^{2} \mathbb {E}_{\Pi }\left [{r_{{\mathrm {log},cvx}}\left ({x,\beta }\right )^{2}}\right ] \\&\;\quad {}+2 \left ({(-\alpha )^{+}}\right ) \left ({(1-|\alpha |)^{+}}\right ) \mathbb {E}_{\Pi }\left [{r_{{\mathrm {log},cvx}}\left ({x,\beta }\right ) r_{\text {lnr}}\left ({x,\alpha }\right )}\right ] \\&\;\quad {}+\left ({(1-|\alpha |)^{+}}\right )^{2} r_{\text {lnr}}(x)^{2} \tag{31}\end{align*}
\begin{align*}&\mathbb {E}_{\Pi }\left [{r^{2}_{{\mathrm {log},cvx}}\left ({x,\beta }\right )}\right ]=\frac {1}{\log ^{2}\left ({\beta }\right ) \left ({\beta ^{V_{\max }}-\beta ^{V_{\min }}}\right )} \\&\;\bigg (\beta ^{V_{\max }} \left ({V_{\min } \log (\beta ) (V_{\min } \log (\beta )+2)+2}\right ) \\&\;\quad {}-\beta ^{V_{\min }} \left ({V_{\max } \log (\beta ) (V_{\max } \log (\beta )+2)+2}\right )\bigg ) \tag{32}\end{align*}
\begin{equation*} \mathbb {E}_{\Pi }\left [{r^{2}_{\text {lnr}}(x)}\right ]= \frac {1}{3} \left ({V_{\max }^{2}+V_{\max } V_{\min }+V_{\min }^{2}}\right ) \tag{33}\end{equation*}
\begin{align*}&\mathbb {E}_{\Pi }\left [{r^{2}_{{\mathrm {log},cvx}}\left ({x,\beta }\right )}\right ]=\frac {1}{\log ^{2}\left ({\beta }\right ) \left ({\beta ^{V_{\max }}-\beta ^{V_{\min }}}\right )} \\&\;\bigg (\beta ^{V_{\max }} \left ({V_{\min } \log (\beta ) (V_{\min } \log (\beta )+2)+2}\right ) \\&\;\quad {}-\beta ^{V_{\min }} \left ({V_{\max } \log (\beta ) (V_{\max } \log (\beta )+2)+2}\right )\bigg ). \tag{34}\end{align*}
\begin{align*}&\mathbb {E}_{\Pi }\left [{r_{{\mathrm {log},cvx}}\left ({x,\beta }\right ) r_{\text {lnr}}(x)}\right ]=\frac {1}{4 \log \left ({\beta }\right ) \left ({\beta ^{V_{\max }}-\beta ^{V_{\min }}}\right )^{2}} \\&\;\bigg (-4 \beta ^{V_{\max }+V_{\min }} \left ({\log \left ({\beta }\right ) \left ({V_{\max }^{2}+V_{\min }^{2}}\right )+V_{\max }+V_{\min }}\right ) \\&\;\quad {}+\beta ^{2 V_{\max }} \left ({2 V_{\min } \log (\beta ) (V_{\max }+V_{\min })+3 V_{\max }+V_{\min }}\right ) \\&\;\quad {}+\beta ^{2 V_{\min }} \left ({2 V_{\max } \log (\beta ) (V_{\max }+V_{\min })+V_{\max }+3 V_{\min }}\right )\bigg ) \\{}\tag{35}\end{align*}
\begin{align*}&\mathbb {E}_{\Pi }\left [{r_{{\mathrm {log},cvx}}\left ({x,\beta }\right ) r_{\text {lnr}}(x)}\right ]=\frac {1}{4 \log \left ({\beta }\right ) \left ({\beta ^{V_{\max }}-\beta ^{V_{\min }}}\right )^{2}} \\&\;\bigg (-4 \beta ^{V_{\max }+V_{\min }} \left ({\log \left ({\beta }\right ) \left ({V_{\max }^{2}+V_{\min }^{2}}\right )+V_{\max }+V_{\min }}\right ) \\&\;\quad {}+\beta ^{2 V_{\max }} \left ({2 V_{\min } \log (\beta ) (V_{\max }+V_{\min })+3 V_{\max }+V_{\min }}\right ) \\&\;\quad {}+\beta ^{2 V_{\min }} \left ({2 V_{\max } \log (\beta ) (V_{\max }+V_{\min })+V_{\max }+3 V_{\min }}\right )\bigg ). \\{}\tag{36}\end{align*}
Upon inspecting (28)–(36), we find that the terms constituting
2) Rational Incentive-Vacation Family:
For the rational-family, i.e., \begin{align*}&\mathbb {E}_{\Pi } \left [{V_{\text {rat}}\left ({x,\alpha }\right )}\right ] \\&\;=\left ({-\alpha }\right )^{+}\mathbb {E}_{\Pi }\left [{r_{\text {rat,cvx}}(x)}\right ] +\left ({1-| \alpha | }\right )^{+} \mathbb {E}_{\Pi }\left [{r_{\text {lnr}}(x)}\right ] \\&\;\quad {}+\left ({\alpha }\right )^{+} \mathbb {E}_{\Pi }\left [{r_{\text {rat,ccv}}(x)}\right ] \\{} \tag{37}\end{align*}
\begin{equation*} \mathbb {E}_{\Pi }\left [{r_{\text {rat,cvx}}(x)}\right ]=\frac {V_{\max } V_{\min } \ln \left ({\frac {V_{\max }}{V_{\min }}}\right )}{V_{\max }-V_{\min }} \tag{38}\end{equation*}
\begin{equation*} \mathbb {E}_{\Pi }\left [{r_{\text {rat,ccv}}(x)}\right ]=\frac {V_{\max } V_{\min } \ln \left ({\frac {V_{\min }}{V_{\max }}}\right )}{V_{\max }-V_{\min }}+V_{\max }+V_{\min }. \tag{39}\end{equation*}
The second moment for the rational-family is of the form \begin{align*}&\mathbb {E}_{\Pi }\left [{V_{\text {rat}}^{2}\left ({x,\alpha }\right )}\right ]=\left ({(\alpha )^{+}}\right )^{2} \mathbb {E}_{\Pi }\left [{r_{\text {rat,ccv}}(x)^{2}}\right ] \\&\;\quad {}+2 \left ({(\alpha )^{+}}\right ) \left ({(1-|\alpha |)^{+}}\right ) \mathbb {E}_{\Pi }\left [{r_{\text {rat,ccv}}(x) r_{\text {lnr}}(x)}\right ] \\&\;\quad {}+\left ({(-\alpha )^{+}}\right )^{2} \mathbb {E}_{\Pi }\left [{r_{\text {rat,cvx}}(x)^{2}}\right ] \\&\;\quad {}+2 \left ({(-\alpha )^{+}}\right ) \left ({(1-|\alpha |)^{+}}\right ) \mathbb {E}_{\Pi }\left [{r_{\text {rat,cvx}}(x) r_{\text {lnr}}(x)}\right ] \\&\;\quad {}+\left ({(1-|\alpha |)^{+}}\right )^{2} r_{\text {lnr}}(x)^{2} \tag{40}\end{align*}
\begin{equation*} \mathbb {E}_{\Pi }\left [{r^{2}_{\text {rat,cvx}}(x)}\right ]=V_{\max } V_{\min } \tag{41}\end{equation*}
\begin{align*}&\mathbb {E}_{\Pi }\left [{r^{2}_{\text {rat,ccv}}(x)}\right ]=V_{\max }^{2}+3 V_{\max } V_{\min } \\&\;\quad {}+\frac {2 V_{\max } V_{\min } \left ({V_{\max }+V_{\min }}\right ) \ln \left ({\frac {V_{\min }}{V_{\max }}}\right )}{V_{\max }-V_{\min }}+V_{\min }^{2} \tag{42}\end{align*}
\begin{equation*} \mathbb {E}_{\Pi }\left [{r_{\text {rat,ccv}}(x) r_{\text {lnr}}(x)}\right ]= \frac {1}{2}\left ({V_{\max }^{2} + V_{\min }^{2}}\right ) \tag{43}\end{equation*}
\begin{align*}&\mathbb {E}_{\Pi }\left [{r_{\text {rat,cvx}}(x)r_{\text {lnr}}(x)}\right ] \\&\;=V_{\max } V_{\min }\left ({\frac {V_{\max } + V_{\min }}{V_{\max } - V_{\min }} \ln \left ({\frac {V_{\max }}{V_{\min }}}\right )}\right ). \tag{44}\end{align*}
Similar to how the log-family moments are, the rational family’s moments in (37)–(44) depend on the choice of
With these closed-form expressions, the performance metrics in the Uniform TQI are direct substitutions of the expressions. The performance metrics, as a consequence, are directly impacted by the values of
Results and Discussion
This section provides an analysis based on the closed-form formulations obtained for an IVQ system. We look at three main performance metrics for IVQ and how they behave under the log and rational vacation families. In particular, we look at the PVQ utilization (2), the mean number of jobs in the system (20), and the mean revenue per job (22), both the log case and the rational case. We also evaluate the job satisfaction proportion with a delay threshold for a single worker. Throughout this section, we vary the minimum incentive and its corresponding maximum vacation parameter as a percentage proportion of the service cycle and regard it for different
In Fig. 11, the same PVQ utilization is plotted twice, once with different minimum incentive values on the
Variations in PVQ utilization with incentive and vacation parameters: (a) PVQ utilization as a function of minimum incentive across different
Fig. 12 shows the number of jobs the worker processed (queueing jobs and in-service). Increasing the incentives (decreasing the vacations) reduces the number of jobs in the system significantly. However, for low
Effect of incentives and vacations on the number of jobs in the system: (a) number of jobs processed as a function of minimum incentive across different
In Fig. 13, we now look at the mean revenue per job. Contrary to the observations from Figs. 11 and 12 which demonstrated better performance for lower
Relationship between incentives, vacations, and mean revenue per job: (a) mean revenue per job as a function of minimum incentive for various
To illustrate the usefulness of the metrics, we define the maximum threshold for waiting time, a deadline, of 0.8 s beyond which the job will expire and be dropped with no reward. We provide a plot of the proportion of jobs for which the delay criteria has been satisfied at different incentives and vacations in Fig. 14. It can be seen that for low incentives, there is a proportion of jobs that remain unsatisfied until a specified incentive beyond which (or equivalently, maximum vacation prior to which) all jobs are completed within their deadline. For low
Impact of incentives and vacations on job satisfaction within delay criteria: (a) proportion of jobs meeting delay criteria versus minimum incentive for different
Practical Considerations
In practice, there are some considerations when using the IVQ model. Namely, considerations regarding the choice of vacation function and how they are priced.
A. Choice of r(X)
and \alpha
In an ECC system, the IVQ function can be thought of as a contract between the orchestrator and the workers. Both entities can negotiate both the choice of
B. Human and Device Heterogeneity
There are a number of factors that influence the incentive-vacation
C. Pricing of Incentives
As previously mentioned in Section IV-B, the incentive is related to the market price for computational tasks. One way to regard an IVQ system is by looking at it as a set of contracts: a contract between the customer and the orchestrator, and a contract between the orchestrator and the worker [36]. All parties in a contract seek an agreement in spite of their different objectives. For the customer, that is the service level agreement (SLA). The SLA indirectly impacts the agreement between the orchestrator and the worker, however workers can be recruited to provide similar service to another customer. As such, the risk present at the orchestrator-worker dynamic can be transferred to the customer, ultimately influencing the price. Techniques for drafting optimal contracts to maximize the service level as well as the profit [37] are crucial for the success of XEC systems.
Conclusion
The rising demand for cloud services is predicted to surpass the capacity of cloud computing. To cope with such demands, paradigms like Edge and Fog computing have physically relocated service provision closer to the customer. While this proximity achieves better latency and reduces operational costs and the burden on the backhaul network, it necessitates more complex management. XEC represents a promising frontier in which user-owned devices, rich with resources, can be exploited for service provision, albeit at the cost of dealing with the uncertainty and unreliability of these devices and their owners. In this article, we describe an orchestrator-based edge system that rents multitenant devices from users to provide an edge service, offering an incentive in return. To serve both the extreme edge and their own users, we propose the IVQ model, which utilizes the XEC worker as a server that takes a vacation to perform tasks unrelated to the extreme edge, with the effect of incentives reflected in the length of these vacations. We model the behavior of systems through our IVQ model and derive closed-form expressions that relate the performance of such a P-Limited IVQ system with uniform incentives. It has been clearly demonstrated that increasing incentives enhances performance and reduces the sojourn time for jobs in the system. The IVQ model is useful for analyzing extreme edge systems where user-owned devices have the potential to become a significant part of the infrastructure, particularly in systems with an XEC orchestrator recruiting and distributing jobs to XEC workers.
Furthermore, the principles underpinning our proposed model are not confined to vacation queueing configurations alone but are applicable to a wider array of service systems that follow similar incentive-performance interplays. This indicates that our findings have implications for a diverse set of contexts where the strategic implementation of incentives is key to optimizing operational outcomes, thereby offering a generalizable approach to understanding and enhancing system performance.