Skip to main content

Advances, Systems and Applications

Resource allocation and network pricing based on double auction in mobile edge computing


By transferring power-hungry huge data centers to lightweight Internet of Things (IoT) mobile devices, mobile edge computing (MEC) has completely changed the IoT. For MEC, to optimize economic gains and motivate profit-oriented entities, the joint resource allocation and network economics problem must be solved, and the joint issue is limited by local constraints, namely, the edge server only serves multiple nearby mobile devices, which is restricted by its available energy. The article studies the jointly issue of network economics and energy allocation in MEC, where mobile device apply for offloading at a purported bid and an edge server supplies its restricted serving at an asking price. In particular, this paper puts forward two dynamic pricing double auction strategies in the MEC system, i.e., a double auction according to the break-even mechanism (DABM) and a more practical double auction based on dynamic pricing mechanism (DADPM) to decide the matching between mobile devices and edge servers, and the pricing strategy for high-priced economic profit in the case of local restricts. Theoretical analysis shows that the proposed two algorithms have properties such as budget balance, individual rationality, economic benefit, authenticity. Extensive simulation experiments evaluate the efficiency of the system, and results verify that the proposed two schemes will greatly make better the economic benefits of MEC.


Mobile Edge computing (MEC), as a new paradigm of edge computing, uses edge servers to provide close to cloud computing applications for mobile devices [1, 2]. As a data center with mobile enhancement and sufficient energy, edge server can access the Internet quickly and adopts nearby service to relieve the request load of mobile devices [3, 4]. Compared with traditional cloud computing, MEC is significantly characterized by reducing latency and improving computing reliability, mainly because its data traffic is not required to become available to remote cloud via Internet [5, 6]. Especially for industrial use, it perfectly avoids needing to be exposed to unreliable proxies that can degrade large IoT performance [7,8,9]. Despite the protrude application of MEC in large-scale IoT, it still exposes unparalleled gages like energy delay, constrained MEC offloading, optimal allocation of various edge and mobile devices, and utility-oriented edge server and mobile network economics of devices [10, 11]. It should also take into account the local characteristics of energy utilization and network economics exhibited in MEC, whose mobile devices are merely offloaded to nearby edge servers carrying different favors, and edge servers provide restricted energy to their nearby mobile devices. In addition, mobile devices, base stations, and edge servers often have different permissions and only focus on revenue-oriented individual utility. Therefore, it is pressing to develop an incentivized system process with suitable incentives for mobile devices and edge services to join, and to assign local energy to maximize its system efficiency.

There is already some literature on network economics in MEC [12, 13]. The mobile device needs to offload the relationship between the request and the advertised bid and the edge server supplies its restricted computing source and the asking price of the bilateral interplay, so that its dual auction strategy can be modeled by the system. Jin et al. designed a practical and real incentive scheme to consort energy auctions between mobile devices as mobile users and cloudlets as providers [14, 15]. However, the above strategy only applies to one-to-one matching of edge servers and mobile devices. That is to say, the edge server energy only provides services to one mobile device once, which is undependable in IoT programme. Iosifidis et al. supposed that each mobile network manipulator could use multiple access points and that each access point could support traffic from multiple manipulators [16, 17]. They devised an iterative dual auction strategy to assure the smoothly functioning of the mart via maximizing the gap between manipulator offloading utility and access point offloading expenses.

It is worth noting here that the existing network economics literature is often based on break-even strategies and supposes that each edge server supports merely one mobile device, rather than involving its local properties and its restricted energy. To shorten the distance between currently work and resource allocation, this paper develops the combine optimization of network economics and energy distribution in MEC to maximize the value of better transactions. The main contributions of the article are as follows:

  1. (1)

    Firstly, this paper models the two-way connection between the server and the mobile device in the MEC. According to the restricts of bounded energy of the edge server and the location between them, the mobile device requests the service and puts forward the bidding requestment, and the edge server reports the asking price in it sells its services between edge servers and mobile devices. An universal dual auction structure is designed to fix interplay and maximize economy utility while satisfying the desired beneficial attributes of budget balance, authenticity, system benefit, and individual rationality.

  2. (2)

    Secondly, this paper proposes a double auction mechanism based on break-even (DABM) and a more efficient dual auction mechanism based on dynamic pricing (DADPM) in MEC. For DABM, a break-even threshold is used to choose winning buyers and sellers, which are verified to satisfy all appetenced economic performances. To more make better the economy utility of MEC, a DADPM that retains many practical buyer-seller matches is designed. Theoretical analysis verifies that DADPM can realize its considerable economy utility at the cost of losing seller authenticity.

  3. (3)

    Extensive simulation experiments prove the efficiency of the designed algorithm. Experimentation reveals that both the devised DABM and DADPM better than the current skills, where DADPM will achieve higher economy utility than DABM. Therefore, For MEC, unless the supplier has control over the edge server’s functionality, to increase the economy’s utility, DADPM is foremost, and when the edge server is beyond the service supplier’s control, DABM is the best way to keep the healthy operation of the market choose.

System model

This subsection leads to the system model as follows: Fig. 1 shows an illustration of MEC in an IoT platform where IoT device offload computation-intensive tasks to nearby edge server, saving energy and reducing latency while also reducing the backtrip network load. IoT devices prefer to connect to their adjacent edge servers because of latency limitations.

Fig. 1
figure 1

Application case of MEC in the Internet of Things. Each mobile device bids for energy allocation from its nearest edge server, e.g., mobile device 3 bids for edge servers 1 and 2, and the edge server is capable of supporting the local mobile device, eg, for edge server 1, the applicant buyer is the mobile device 1. mobile device 2, mobile device 3 and mobile device 4

Define \(\mathcal {N}=\left\{ 1,2,...,N\right\}\) is a collection of edge servers. Dynamic edge servers typically have limited capacity and lightweight performance that can handle computationally intensive tasks. In a MEC environment, the computing power of each edge server and the application sources it serves are limited. Therefore, at the initial stage, edge server computing resources are \(\mathcal {Q}=\left\{ Q_{1}, Q_{2},..., Q_{N}\right\}\), where \(Q_{N}\) is the quantity of resource units that are provided on the N-th edge server, and N irepresents the accessible edge server.

Define \(\mathcal {M}=\left\{ 1,2,...,M\right\}\) is a set of mobile devices in the IoT, which requests a batch of resources and has a bidding price matrix \(\mathcal {Y}=\left\{ y_{i,j}: 1\le i\le N, 1\le j \le M\right\}\), where \(y_{i,j}\) refers to the highest price that edge server i is willing to pay. It should be noted that after the winner is determined, buyer i only obtains computing resources from seller j. Here \(y_{i}\) is used to indicate buyer i’s bid. For each buyer, the valuation of edge servers is completely distinct since of the different user service experience they can obtain in relation to latency of different edge servers. In this paper, it is assumed that the computing task has indivisible atoms, and the bidding price that the mobile device j is prepared to pay several edge servers, also completely varied, which depends on its location factor and preference with edge servers. Edge server j requests \(x_{j}\) to reward one item of service. Based on this, multiple users can be served by edge servers, while mobile devices rely only on edge servers to provide services.

With IoT devices acting as buyers and edge servers acting as sellers in a dual auction paradigm, the connection involving IoT devices and edge servers can be well characterized. Typically, the supplier serves as the trusted third party who adjudicates disputes between bidders and auctioneers, the buyer and the seller, and the agent’s identity verification and security analysis. The dual auction mechanism designs matching strategy and pricing decision stage. During the matching decision, the auctioneer identifies viable mobile device and edge server matches and sorts them sequentially (i.e. in descending order with reference to buyer’s bids and ascending order with reference to seller’s bids). The matching criterion between buyer i and seller j is expressed as \(\eta (i)=j\). The payment strategy depends on what the auctioneer bills the mobile device for and what it pays the edge server to conduct computational tasks.

Definition 1

(Mobile device’s utility.) The utility \(\Gamma _{i}^{y}\) Ta for mobile device i means computing the difference between task \(r_{i}\)’s true estimate and the cost it paid the auctioneer \(c_{i}^{y}\). The utility of mobile device i relies on its bid price y, buyer’s bid price other than buyer \(i \mathcal {Y}_{-i}\), and seller \(\mathcal {X}\)’s asking price, namely,

$$\begin{aligned} \Gamma _{i}^{y}(y_{i}, \mathcal {Y}_{-i}, \mathcal {X})= \left\{ \begin{array}{ll} r_{i}-c_{i}^{y}, &{} y_{i} \in \mathbb {C}_{y};\\ 0, &{} \text {otherwise} \end{array}\right. \end{aligned}$$

Buyer i’s true estimate \(r_{i}\) indicates the actual cost that buyer i is prepared to pay to use its computer services. To prevent artificial factors, the tender price should be equal to \(y_{i}=r_{i}\).

Definition 2

(Edge server’s utility). Edge server utility refers to the difference between the auctioneer’s expense \(e_{j}^{s}\) and the cost of performing the computation task \(p_{j}\). Edge server j’s utility relies on its requested price \(x_{j}\), the requested price of other buyers besides seller \(j\mathcal {X}_{-j}\) and the given price of buyer \(\mathcal {Y}\), namely

$$\begin{aligned} \Gamma _{j}^{s}(x_{j}, \mathcal {Y}, \mathcal {X}_{-j})= \left\{ \begin{array}{ll} \sum _{y_{i} \in \mathbb {C}_{y}} \eta _{i,j}(e_{j}^{s}-p_{j}), &{} x_{i}\in \mathbb {C}_{s} ;\\ 0, &{} \text {otherwise} \end{array}\right. \end{aligned}$$

The overall cost of mobile devices less the cost for the edge server is the utility of the auctioneer, which can be expressed as

$$\begin{aligned} \Gamma ^{a}=\sum _{y_{i} \in \mathbb {C}_{y}}c_{i}^{y}-\sum _{ x_{i}\in \mathbb {C}_{s}}e_{j}^{s} \end{aligned}$$

The expected attributes of the dual auction strategy are shown as follows: (1) Balance of expenses: the auctioneer of the dual auction strategy should achieve budget balance without loss of costs during the transaction. That is, the total cost of the edge server paid by the auctioneer shall not be less than the expenses charged by the auctioneer for mobile devices, namely, \(\sum _{y_{i} \in \mathbb {C}_{y}}c_{i}^{y}\ge \sum _{ x_{i}\in \mathbb {C}_{s}}e_{j}^{s}\). (2) Authenticity: when an agent is unable to increase its return by reporting a second false desired price \(\tilde{r_{i}}\), a double auction plan is thought to be genuine. In particular, if buyer i falsely claims \(\tilde{r_{i}}\) for the resources of seller j, its utility is lower than its gain at bid \(r_{i}\). (3) Economic utility: The system efficiency is referenced in terms of the nature of social welfare, the quantity of profitable transactions, and the utility of edge servers. In the work, it is considered that its goal is to maximize the quantity of profitable transactions [12]. (4) Rationality: It is assumed that all participants are rational, that is, the auction involvement will not result in any losses for anyone. In particular, the fee \(c_{i}^{y}\) paid by the i-th buyer shall be less than its bidding fee \(y_{i}\), that is, \(c_{i}^{y}\le y_{i}\). The expenses of the j-th seller \(e_{j}^{s}\) need to exceed its requesting \(s_{j}\), that is, \(e_{j}^{s}\ge x_{j}\).

For a complete set of mobile devices and edge servers, a group of mobile devices can be said to be feasible only when the two following situations are true: that is, the computing demand of selected mobile devices is lower than the demand of edge server capacity, namely, \(\sum _{y_{i,j} \in \mathbb {C}_{y}}\le Q_{j}\); (2) All matching given prices are not less than their required ones, \(c_{i}^{y}\le y_{i}\), \(e_{j}^{s}\ge x_{j}\).

The purpose of resource allocation in the MEC system is to obtain the group of winners, which involves buyer, seller, and cost, to maximize the number of matches, and also to meet the requirements of mobile device feasibility, namely,

$$\begin{aligned} \text {max} \quad \vert \mathbb {C}_{y} \vert \end{aligned}$$

which constraints are as follows: \(\sum _{y_{i,j} \in \mathbb {C}_{y}}\le Q_{j}\) and \(c_{i}^{y}\le y_{i}, \quad e_{j}^{s}\ge x_{j}\).

Pricing demand for mobile devices is based on demand and supply changing over time. Therefore, dynamic pricing mechanism is used to solve the above optimization scheme. Being aware of the fact that in IoT applications, the number of devices can be so large that its edge servers will generate different requests across their computing power. Based on this premise, its limited request power will be provided to the most competitive buyer according to the equation \(\sum _{y_{i,j} \in \mathbb {C}_{y}}\le Q_{j}\) of the proposed strategy below.

Dual auction mechanism in MEC system

In this section, two dual auction strategies are proposed to deal with the energy distribution problem in MEC, namely, the dual auction for break-even strategy and the more realistic dual auction mechanism for dynamic pricing. Break-even means a threshold above which a bid price can be effectively picked in its trades.

Double auction resulting from breakeven

During the break-even dual auction strategy filtering and candidate decision, this paper prioritized bids and demands in a logical progression to decide the feasible matching selection pair. Natural ordering refers to the idea of going from the most competitive to the least competitive, especially for requests in ascending order \(\mathcal {X}=\left\{ x_{1}, x_{2},..., x_{N}\right\}\), \(0\le x_{1}\le x_{2}\le ...\le x_{N}\), in this paper, all the forward bids from the buyer are arranged in descending order \(\tilde{\mathcal {Y}}=\left\{ y_{a_{1}, b_{1}}, y_{a_{2}, b_{2}},...,y_{a_{m},b_{m}}\right\}\), \(y_{a_{m},b_{m}}\) represents the bidding request sent by \(a_{m}\) of the buyer to \(b_{m}\) of the seller, and are the order of the m-th element in \(\tilde{\mathcal {Y}}\). Based on the above situation, the buyer may bid against different sellers many times.

figure a

Algorithm 1 Double Auction Based on Breakeven

To reduce the cost of complexity, this article eliminates unsuccessful buyers and sellers due to reduced breakeven (lines 6-9). Breakeven depends on the number of sellers. To strike an equilibrium between the amount of buyers and the amount of sellers that are chosen, the median of seller union \(\mathcal {X}\) is defined as \(x_{\alpha }\), where \(\alpha =\lfloor \frac{N+1}{2}\rfloor\). The highest index value that can reach \(\vartheta =\mathop {\arg \max }\limits _{v} \left\{ {y_{{a_{v}+1},{b_{v}+1}}}\le x_{\alpha }\right\}\) in \(\tilde{\mathcal {Y}}\) is called its bid threshold. Then eliminate all requests higher than \(x_{\alpha }\), i.e. \(\tilde{\mathcal {X}}\leftarrow \mathcal {X}\backslash \left\{ x_{\alpha }, x_{\alpha +1}, ..., x_{N}\right\}\). According to the candidate buyer, select all buyers above \(y_{{a_{v}+1},{b_{v}+1}}\), i.e., \(\tilde{\mathcal {Y}}\leftarrow \tilde{\mathcal {Y}}\backslash \left\{ y_{{a_{v}+1},{b_{v}+1}},..., y_{a_{m},b_{m}}\right\}\). The seller and buyer can only achieve the following two conditions, that is, their bidding price is greater than or equal to their corresponding asked price \(y_{a_{i},b_{i}}\ge x_{b_{i}}\), and \(q_{b_{i}}\) is still available for allocation by the seller in demand. The element that implements the first condition is populated with candidate set \(\mathcal {Y}_{p}=\left\{ y_{a_{i},b_{i}}, \vert y_{a_{i},b_{i}}\ge x_{b_{i}}\right\}\) in Algorithm 1, line 10.

In this paper, performance feasibility factors are verified from the most competitive bids (e.g., lines 11-26 in Algorithm 1), where lines 13-18 indicate the situation where the feasible capability requirements are met and lines 19-26 indicate the situation where the feasible capability requirements are not met. In order to achieve feasibility requirements, both bidders and sellers are included in the candidate set, i.e., \(\mathbb {C}_{y}\leftarrow \mathbb {C}_{y}\cup \left\{ {y_{a_{i}}}\right\}\), \(\mathbb {C}_{s}\leftarrow \cup \left\{ {x_{b_{i}}}\right\}\) and bids for other edge servers are removed from the array of potential buyers (e.g., lines 15-17), mainly because IoT prefers to handle edge tasks.

When the feasibility condition cannot be met, all energy has been allocated to the corresponding request, and the remaining energy is \(q_{b_{i}}=0\). The payment decision of the viable buyer selected for seller \(b_{i}\) is the identical as the maximum bid of the loss transaction \(c_{v}^{y}\leftarrow y_{a_{i},b_{i}}\) (e.g., lines 19-21 of the Algorithm 1). In the winner decision and pricing phase, this paper uses a trading approach to reduce the strategy to control the eventual winner of the candidate and the amount paid to the winner (as shown in lines 25-28 of Algorithm 1). The successful buyer will be charged the price \(y_{a_{v},b_{v}}\) based on the bidder who is not eliminated owing to viable energy requirements. All chose sellers \(x_{j}\in \mathbb {C}_{s}\) are defined as receiving price \(x_{\alpha }\).

Double auction with dynamic pricing

The efficiency of the break-even two-auction system is limited because many viable buyers and sellers are not included. The purpose of the dynamic pricing dual auction scheme is to retain as many practical matching combines as you can while providing a viable price strategy. Algorithm 2 describes the characteristics of dual auction scheme of dynamic pricing mechanism.

figure b

Algorithm 2 Double Auction Based on Dynamic Pricing

The winner’s decision is the same as the break-even double auction. Buyers and sellers are initially ordered in a natural order such as lines 4-5 in Algorithm 2. Then populate the \(\mathbb {C}_{y}\) and \(\mathbb {C}_{s}\) with viable matching buyer and seller pairs. The first viable request was gently changed to \(y_{a_{i},b_{i}}\ge x_{b_{i}+1}\) to properly price all winning buyers. In particular, the buyer and the seller are considered feasible under the following two conditions, that is, their bid price is greater than or equal to the next \(y_{a_{i},b_{i}}\ge x_{b_{i}+1}\) of their corresponding demand price, and the requesting seller also has the remaining energy to allocate \(q_{b_{i}}\). The element implementing the first premise is added to the candidate union \(\mathcal {Y}_{p}=\left\{ y_{a_{i},b_{i}}y_{a_{i},b_{i}}\ge x_{b_{i}}\right\}\). The actions from lines 8-21 in Algorithm 2 are similar to those in Algorithm 1. During the pricing decision phase, based on seller j, its winning buyer \(\forall y_{i,j}\in \tilde{\mathcal {Y}}\) pays \(x_{j+1}\). The j-th seller’s payment is the \(j+1\)-th seller’s asking price.

In dynamic pricing double auctions, \(x_{b_{i}+1}\) replaces \(x_{b_{i}}\) to ensure feasibility. Such a measure reduces computational efficiency slightly, mainly because the number of viable buyer \(y_{a_{i},b_{i}}\ge x_{b_{i}+1}\) is generally lower than the number of \(y_{a_{i},b_{i}}\ge x_{b_{i}}\) with \(x_{b_{i}}\le x_{b_{i}+1}\). To achieve its authenticity, this paper slightly reduces the number of matching pairs, mainly because this situation \(x_{b_{i}+1}\) is the key bid for all buyers (as shown in the theorem below).

Demo sample

To understand the working process of break-even double auction and dynamic pricing double auction more clearly, this paper gives a specific example with 5 sellers and 4 buyers by comparing with ICAM.

As for the break-even double auction, the demand of sellers and buyers is ranked properly arranged firstly, the median of \(\mathcal {X}\) is found to be \(\mu _{\alpha }\), \(\mu _{\alpha }=x_{3}=4\), the maximum number below \(\mu _{\alpha }\) is found in \(\tilde{\mathcal {Y}}\) set, namely \(y_{a_{v}+},{b_{v}+1}=y_{4,2}=3, \vartheta =6\). Then delete the elements in \(\mathcal {X}\) that are not less than \(\mu _{\alpha }\), and then delete the elements in \(\tilde{\mathcal {Y}}\) that are not greater than \(y_{4,2}\). Any bid \(\forall y_{a_{i},b_{i}}\in \tilde{\mathcal {Y}}\), has \(y_{a_{i},b_{i}}\in \mathcal {Y}_p\). \(\mathcal {Y}_p=\left\{ y_{2,3}=10, y_{2,1}=8, y_{1,3}=7, y_{4,3}=6, y_{3,1}=5\right\}\) in the case of \(x_{b_{i}}\in \tilde{\mathcal {X}}\). During the winner decision and pricing phase, this paper starts with the first element in \(\mathcal {Y}_p\),namely, \(y_{2,3}\) for energy allocation. In the case of \(q_{3}=2\ge 0\), buyer 2 can fulfill seller 3’s needs. In the case of \(\mathbb {C}_{y}=\mathbb {C}_{y}\cup {2}={2}\), \(\mathbb {C}_{s}=\mathbb {C}_{s}\cup {3}={3}\), this article removes the union related to buyer 2 from \(\mathcal {Y}_p\). Each seller in \(\mathbb {C}_{s}\) gets paid alpha \(\mu _{\alpha }\) by all the winning buyers, while in \(\mathbb {C}_{y}\) the buyer who doesn’t get paid has to pay \(x_{a_{\vartheta }, b_{\vartheta }}=y_{3,1}=5\). The other collections in \(\mathbb {C}_{y}\) are the final bids.

According to a dual-auction system with dynamic pricing, buyers and sellers are arranged in a logical sequence as a breakeven, as \(\mathcal {X}=\left\{ x_{1}=2,x_{2}=3, x_{3}=4, x_{4}=5, x_{5}=6\right\}\), \(\tilde{\mathcal {Y}}=\left\{ y_{2,3}=10, y_{3,2}=10, y_{2,1}=8, y_{1,3}=7, y_{4,3}=6, y_{3,1}=5, y_{4,2}=3, y_{4,5}=3, y_{1,4}=1\right\}\). However, in dynamic pricing dual auctions, this paper does not treat the median price as a break-even point, and matches bids and requests with appropriate viable demands: \(y_{a_{i},b_{i}}\ge x_{b_{i}+1}\). Here we discuss the first element \(y_{2,3}=10\) in \(\tilde{\mathcal {Y}}\), buyer 3 demands 2, and the minimum number above 2 in \(\mathcal {X}\) is 3. It is because \(y_{2,3}=10>3\) that \(y_{2,3}\) is padded into \(\mathcal {Y}_p\). Similarly, in candidate set \(\mathcal {Y}_p=\left\{ y_{2,3}=10, y_{3,2}=10, y_{2,1}=8, y_{1,3}=7, y_{4,3}=6, y_{3,1}=5,\right\}\), judge whether element \(y_{a_{i},b_{i}}\) in \(\mathcal {Y}_p\) can meet the requirement of \(q_{b_{i}}>0\) in turn. According to \(y_{2,3}\), \(q_{3}=2\ge 0\) , buyer 2 and seller 3 will be filled into \(\mathbb {C}_{y}\) and \(\mathbb {C}_{s}\) respectively. \(\mathcal {Y}_p\) deletes \(y_{2,1}\). Buyer 2’s price is equal to seller 3’s payment, which is the minimum asking price greater than seller 3’s asking price. \(c_{2}^{y}=c_{3}^{s}=3\). \(\mathcal {Y}_p\) does the same for the rest of the elements. In the end, we implement \(\mathbb {C}_{y}=\left\{ 2,3,1\right\}\),\(\mathbb {C}_{s}=\left\{ 3,2\right\}\), \(\mathcal {C}_{s}=\left\{ c_{3}^{s}=3, c_{2}^{s}=5\right\}\), \(\mathcal {C}_{y}=\left\{ c_{2}^{y}=c_{1}^{y}=3, c_{3}^{y}=5\right\}\), \(\eta =\left\{ (2\rightarrow 3), (3\rightarrow 1), (1\rightarrow 3)\right\}\).

Incentive compatibility auction scheme based on a 1-to-1 service mode, in which one mobile device will only be supported by one edge server, and a mobile device can only give a price on one edge server [18]. The incentive-compatible auction strategy still chooses to ask for the median price as the break-even point and pay the winning side. When multiple buyers bid for the same seller, the highest bid from the unsuccessful bidder is used as the buyer’s price for the winning seller’s support. In the case of a bid from only one buyer and the service being awarded, the minimum bid above or equal to the break-even point serves as the buyer’s price. Therefore, there are the following: \(\mathbb {C}_{y}=\left\{ 2,3\right\}\),\(\mathbb {C}_{s}=\left\{ 3,1\right\}\),,\(\mathcal {C}_{s}=\left\{ c_{3}^{s}=c_{1}^{s}=4\right\}\), \(\mathcal {C}_{y}=\left\{ c_{2}^{y}=7, c_{3}^{y}=5\right\}\), \(\eta =\left\{ (2,3), (3,1)\right\}\).

In short, it serves 3 mobile devices in the break-even dual auction, 4 mobile devices in the dynamic pricing dual auction, and 2 mobile devices in the incentive-compatible auction.

Economic attribute

Lemma 1

Both designs have computational efficiency, and the computational complexity of break-even double auction and dynamic pricing double auction is \(O(N^{2}M^{2})\).


According to the 2 row of the break-even double auction in Algorithm 1, quicksort has the worst-case computational complexity of O(NlogN). Correspondingly, given that \(\tilde{\mathcal {Y}}\) can be as long as NM, row 3’s computational complexity is O(NMlog(NM)). It can also be concluded that 9 to 24 have a computational complexity of \(O(N^{2}M^{2})\). Therefore, Algorithm 1’s computational complexity is also \(O(N^{2}M^{2})\). Accordingly, for the dynamic pricing dual auction mechanism demonstrated in Algorithm 2, Quicksort’s computational complexity is O(NlogN) and O(NMlog(NM)), accordingly, relying on the worst-case scenario of rows 2 and 3. With a \(O(N^{2}M^{2})\) computing complexity, the following lines 5-17 are also provided. After the winner is determined, the maximum length of \(\mathcal {Y}_p\) remains NM. The cost complexity of rows 7-19 is: \(O(NM(N-1))\). The computational complexity of the whole Algorithm 2 is: \(O(N^{2}M^{2})\).

Theorem 1

Both break-even dual auction mechanism and dynamic pricing dual auction mechanism satisfy individual rationality.


Individual rationality means that nobody should be harmed by participating in an auction. In particular, the price \(c_{i}^{y}\le y_{i}\) paid by the i-th buyer should be less than its bid price \(y_{i}\), that is, \(c_{i}^{y}\le y_{i}\). The paying price of the j-th selling \(c_{s}\) should be higher than its selling price \(s_{j}\), that is, \(c_{j}^{s}\ge x_{j}\). According to the break-even double auction mechanism, when the utility of all agent is positive, it satisfies the rational needs of individuals. When the bid or asking price is unsuccessful in the auction, i.e. \(y_{i}\notin \mathbb {C}_{y}\), \(x_{j}\notin \mathbb {C}_{s}\), the bid price or asking price utility will be zero. With respect to seller j, which obtains payment \(c_{j}^{s}=x_{\alpha }\) and his price is \(x_{j}\). In line 3-12 of the Algorithm 1, according to the condition of monotone ordering, the necessity of \(x_{j}\in \mathbb {C}_{s}\) is \(j<\alpha\) , then \(x_{\alpha }\ge x_{j}\). In the case that buyer i successfully wins the auction, it can be divided into two settings based on the residual utility of the matching edge server. (1) In the case that the matching edge server is entirely allocated \(q_{j}\le 0\), the maximum bid of the failed transaction is charged by buyer i (as shown in line 22 of Algorithm 1). In the case of buyer i winning the deal, which bid must be greater than the one charged. On the contrary, buyer i is charged less than its bid break-even price \(y_{a_{\vartheta }+1, b_{\vartheta }+1}\). So both buyers and sellers of the break-even double auction mechanism meet a single rationality. With repect to the dynamic pricing dual auction mechanism, this paper merely matches the bids and demands suitable for the feasibility conditions, that is, \(y_{i,j}\ge x_{j+1}\). At the same time, such as in line 6, 20 and 21 of Algorithm 2, based on the pricing process, the auctioneer charges the mobile device and pays the same price to the edge server \(x_{j+1}\). Therefore, its utility for the buyer is the difference between the real valuation and the payment, that is, \(y_{i}-x_{j+1}\). Correspondingly, with respect to seller j, the payment is greater than the asking price \(x_{j+1}-x_{j}\ge 0\).

Lemma 2

In the case of \(c_{y^{\prime }}^{y}\ge c_{i}^{y}\), the price is monotonic for \(\forall y_{i^{\prime }}\ge y_{i}\) and \(c_{i^{\prime }, j^{\prime }}^{s}\ge c_{i,j}^{s}\) for \(\forall x_{j^{\prime }}\le x_{j}\).

The suggested auction mechanism’s monotonicity is understandable, since small bids will cause users to backslide in the order. In the case of bids or offers in the winner union, the price method won’t be influenced by publicly available bids or offers.

Theorem 2

The postulated break-even double auction mechanism is true for both buyers and sellers.


As stated by the study in literature [19, 20], bid monotone auction is based on reality if and only if it has been collecting important bids from the winning buyer and paying important demands from the winning seller. For successful buyer i, if buyer i succeeds in submitting \(y_{i}>c_{i}^{y}\) and fails in submitting \(y_{i}<c_{i}^{y}\), then \(c_{i}^{y}\) is extremely important because other people’s submissions remain constant. Analogously, for successful seller j, if the submission \(x_{i}<c_{j}^{s}\) succeeds for seller j and the submission \(x_{i}>c_{j}^{s}\) fails, then \(c_{j}^{s}\) is very important because the submission of others remains constant. With respect to sellers, in the case of \(x_{j}<x_{\alpha }\), the successful seller will be saved in the winning table. Under the condition that seller j requires \(x_{j}>x_{\alpha }\), it will be deleted from the winning sequence \(\mathbb {C}_{s}\) based on the break-even double auction strategy. Therefore, \(x_{\alpha }\) is a key requirement for all sellers. There are two scenarios for a buyer’s key bid.

  1. (1)

    Under the condition that \(q_{j}\le 0\) of the entire allocation of its corresponding edge server, the maximum bid for the lost transaction (expressed as \(y_{v}\)) is collected by buyer i (as shown in Algorithm 1, line 22). According to the case, the maximum bid to lose a deal at edge server j is the key bid for a successful buyer at seller j. The winning buyer i for seller j will be in the peak union of buyers among the processing power of edge server i and will therefore be chosen as the winning buyer for that seller. Under the condition that buyer i gives the price \(y_{i}<y_{v}\), it will be placed after \(y_{v}\). \(y_{v}\) instead of \(y_{j}\) will then be chosen.

  2. (2)

    On the contrary, buyer i will be charged based on the break-even price \(y_{{a_{v}+1}, b_{v}+1}\), which is the key bid based on all successful buyers in such setting. For the bid-winning buyer i, under the condition that his bid \(y_{i,j}>y_{{a_{v}+1}, b_{v}+1}\), it will be saved in the set of the first \(\vartheta\) buyers. In the above environment, buyer i also exists in the winning union. In the other case, buyer i will no more be chosen if the bid is \(y_{i}<y_{{a_{v}+1}, b_{v}+1}\), and sorted behind.


To do this, the buyer pays his key bid and the seller gets his key demand in a break-even double auction. In addition to monotonicity, this paper also verifies that the proposed break-even double auction is true for both buyers and sellers, likewise avoiding the economic resistance caused by exploitation.

Theorem 3

The authenticity of the presented dynamic pricing dual auction


During the pricing is confirmed in a double auction based on dynamic pricing, seller j, its successful buyer \(\forall y_{i,j}\in \mathbb {C}_{y}\) pays \(x_{j+1}\). The payment information of the j-th seller is the price demanded by the \(j+1\)-th seller. \(x_{i+1}\) is the key bid for seller j to win over buyer. For buyer i who wins the bid, if the price given by buyer i is updated to \(y_{j}<x_{j+1}\), line 6 in Algorithm 2 will not be chosen in \(\mathbb {C}_{y}\). Once its bid is \(y_{i}\ge x_{j+1}\), buyer i is elected the winner. Therefore, the price charged to all buyers is the key price given in the dynamic pricing double auction mechanism, and due to its monotonous nature, the dynamic pricing double auction mechanism has authenticity relative to the buyer.

In contrast, break-even double auction has realized a real effect on both buyers and sellers, but its utilization is constrained rather than the decision-making mechanism based on break-even winner. Compared with the break-even dual auction mechanism, the dynamic pricing dual auction strategy is more efficient, but it is at the expense of the authenticity of the seller, because one seller can support numerous buyers and all viable sellers can choose under the condition of no break-even. The only lucky thing in MEC systems is that it is easier for service offers to police edge servers than mobile users. For example, a supplier of services must use its historical request information and behavior policy to find out its true value for edge servers. In MEC system, the service provider can adjust the action of the edge server policy conditions, in order to optimize its efficiency, dynamic pricing mechanism of double auction as the first choice, and monitor the service provider in the edge server failure cases, break-even double auction mechanism is considered to be the choice of protecting a strong setting.

Experiment setup and performance analysis

Experimental setup

In the application range of size \(800\times 800 m_{2}\). This article assumes that there are 100 users in the application scope. The user asks for the price of the resource (such as the j-th user’s bid of \(y_{j}\)), which gives the price The user’s price is uniform distribution-based arbitrary iteration in the interval [0, 20], and no other conditions are involved. At the same time, edge servers are defined to sell their processing costs within the asking price range in the interval [2, 10]. The processing power of the MEC server is limited between 200 MHz and 1GHz. The processing power requested by the smart agent is 90 MB, and the amount of CPU cycles required for its resource processing is defined in the range of 120 Megacycles and 2 Gigacycles. The quantity of channels accessible in one of the base stations is about 100, which proves that it is constrained by the communication capability, and a base station can connect with 100 mobile devices at the same time. The various performances of DABM and DADPM designed in this paper are compared and verified with the previous ICA.

Performance analysis

Figure 2 presents a comparison of the utility of DADPM and DABM used by buyers and sellers on different numbers of mobile devices. From Fig. 2(a), it can be concluded that the total utility of mobile devices based on DADPM is much larger than that based on DABM, and the main reason is that DADPM greatly increases the number of successful matching transactions. What is more fascinating here is that in the case of DABM, when there are fewer than 40 buyers, the utility of successful buyers will increase significantly, while in the case of a very large number of buyers, its utility will increase very gently, or even There are signs of decline. This means that the break-even and pricing mechanism plays its part, precisely because in the case of \(x_{j}>x_{\alpha }\), a maximum of \(\frac{N}{2}\) sellers are selected, which has been eliminated very much in DABM due to its extremely constrained processing power Viable deal matching. Also, any buyer will become fiercer as the number of buyers rises, and the price paid by all its winners will rise with it, and therefore the utility of all winners will fall with it. However, the sum of its victorious deals did not rise as much, causing total utility to decrease. Figure 2(b) shows the comparison results of the utility of edge servers on different numbers of mobile devices due to the adoption of DADPM and DABM. Figure 2(b) verifies that adopting DABM produces slightly more edge server utility than adopting DADPM, because its pricing strategy dictates that the paid price is slightly greater than its asking price.

Fig. 2
figure 2

Buyers and sellers use the utility of DABM and DADPM. The utility of a winning buyer or seller is the sum of the utilities of all winning buyers or sellers

Figure 3 verifies the comparative results of its various algorithms according to the quantity of profitable transactions. Figure 3(a) shows a comparison of the number of effective matches achieved utilizing DABM-based and DADPM for different numbers of buyers. From Fig. 3(a), it can be concluded that the successful transaction value of DADPM is often greater than that of DABM. As the number of buyers continues to increase, the advantages of DADPM will be more obvious. The ICA scheme comparison is not given in Fig. 3(a) because the number of buyers is controlled by the number of sellers and will be constant in the figure (defined as 8 in this paper). Using DADPM and using DABM significantly outperforms ICA as shown in Fig. 3(b), because the edge server can only serve its mobile devices in the ICA scheme. DADPM outperforms DABM because DADPM fails similarly for the purpose of eliminating viable trade matches using a break-even strategy.

Fig. 3
figure 3

Different scenarios are compared for the number of successful transactions

Rationality & balance

The bid, price, and ask prices of DABM and DADPM for more than 60 buyer-seller matching pairs are verified in Fig. 4(a) and (b). Any bar in the histogram represents the price of its matching pair success. Since there exist more successful matching buyers and sellers in the DADPM transaction than in the DABM, the histogram in the DADPM histogram is denser than the histogram in the DABM. For DABM, due to the problem that the price charged by each winning buyer is different from the payment price paid by each winning seller, its price and payment are displayed as depicted in Fig. 4(a). For DADPM, the price charged to each winning buyer and the payment rewarded to each winning seller are the same, so its pricing expresses both price and payment. It follows that for DABM and DADPM, each winning buyer is charged no more than their bid price, and each winning seller obtains no less than their asking price. Therefore, BDA and DPDA are the existence of individual rationality, which shows that their agents have enough reasons to join the trade.

Fig. 4
figure 4

A comparison of bids, prices, and ask prices for DABM and DADPM, where price is the transaction value received from the buyer and payment is the reward value received by the seller

Figure 5 verifies the authenticity of buyers and sellers in DABM and DADPM. From Fig. 5(a), it can be concluded that in DABM, if the buyer’s bid is less than its threshold, it will fail the transaction, and its utility will be zero. Provided that its bid is above its threshold, the utility will be a constant no greater than the threshold. Meanwhile, the actions of sellers and buyers will be illustrated by Fig. 5(b) and (c).

Fig. 5
figure 5

Buyer and seller authenticity

Result & discussion

Although this paper deals with MEC, the algorithm designed can be easily extended to other scenarios such as VANET and other MEC scenarios, provided that users and edge servers are utility-oriented and have local thinking strategies. In the case of mobile users, the connection involving edge servers and mobile devices in terms of space and time will be variable. User configurations such as those that are covered by edge server services may be moved out of the prevailing edge server service scope, and there is still a risk of a longer delay before they are unloaded to the prevailing edge server, so it is necessary to update the selection location relationship and unloaded at any time. This article assumes that the location relationship that exists between the user and the edge server is constant inside a time frame. In the designed strategy, the buyer’s bid matrix, which shows each time slot requires a change to the spatial and temporal interaction between mobile devices and edge servers. After the design of the updated bid matrix is completed, the designed DABM and DADPM can be easily ported to the mobile case.

In the future, various computing applications will be designed on the MEC server. Any mobile device will simultaneously offload different types of computing resources to the edge server, and the edge server is different from the mobile device in terms of processing computing resource types. Therefore, we’ll take into account the diversity of edge servers based on their computing capabilities and service computing application services. Especially for resource allocation strategy design, its feasibility requirements and bidding matrix will be completely different. Incentives will also be set up in future work to encourage the continuous participation and updating of its mobile devices and edge servers.


This paper studies the joint optimization issue of network economy and resource allocation in MEC, whose edge servers will provide a variety of mobile devices nearby. Two dynamic pricing dual auction rules, DABM and DADM, are designed in MEC, which are both verified to be suitable for economic characteristics. Extensive simulation experiments verify the effectiveness of the suggested algorithm, and the experimental outcomes show that DADPM and DABM have achieved significant improvements in MEC system efficiency performance.

Availability of data and materials

The research data in this paper are generated automatically by the simulation code.


  1. Huang X, Yu R, Kang J, He Y, Zhang Y (2017) Exploring Mobile Edge Computing for 5G-Enabled Software Defined Vehicular Networks. IEEE Wirel Commun 24(6):55–63

    Article  Google Scholar 

  2. Cumino P, Sargento S (2020) Flying Mobile Edge Computing towards 5G and beyond: An Overview on current use cases and challenges. 2020 12th International Symposium on Communication Systems, Networks and Digital Signal Processing (CSNDSP). Porto: pp. 1–5

  3. Chiang M, Zhang T (2016) Fog and IoT: An Overview of Research Opportunities. IEEE Internet Things J 3(6):854–864

    Article  Google Scholar 

  4. Baraković S, Baraković Husić J, Maraj D et al (2020) Quality of Life, Quality of Experience, and Security Perception in Web of Things: An Overview of Research Opportunities. Electronics 9(4):700

    Article  Google Scholar 

  5. Debabrata S, Enakshmi N, Anil Kumar S, et al (2017) An innovative method for load balanced clustering problem for wireless sensor network in mobile cloud computingproceedings of the 5th international conference on frontiers in intelligent computing: theory and applications 516

  6. Alsanoosy T, Spichkova M, Harland J (2020) Identification of cultural influences onrequirements engineering activities," 2020 IEEE/ACM 42nd international conference on software engineering: companion proceedings (ICSE-Companion). Seoul: pp. 290-291

  7. Han G, Li L, Jiang J et al (2017) Analysis of Energy-Efficient Connected Target Coverage Algorithms for Industrial Wireless Sensor Networks. IEEE Trans Ind Inform 13(1):135–143

    Article  Google Scholar 

  8. Faheem M, Butt RA, Raza B et al (2019) A multi-channel distributed routing scheme for smart grid real-time critical event monitoring applications in the perspective of Industry 4.0[J]. Int J Ad Hoc Ubiquit Comput 32(4):236

    Article  Google Scholar 

  9. Faheem M, Fizza G, Ashraf MW et al (2021) Data acquired by Internet of Things-enabled Industrial Multichannel Wireless Sensors Networks for Active Monitoring and Control in the Smart Grid Industry 4.0[J]. Data Brief 35(4):106854

    Article  Google Scholar 

  10. Peng K, Leung V, Xu X et al (2018) A Survey on Mobile Edge Computing: Focusing on Service Adoption and Provision. Wirel Commun Mobile Comput 2018:1–16

    Google Scholar 

  11. Shakarami A, Ghobaei-Arani M, Shahidinejad A (2020) A survey on the computation offloading approaches in mobile edge computing: A machine learning-based perspective ScienceDirect. Comput Netw 182(2020): 107496–107507

  12. Wang Q, Guo S, Liu J, Pan C, Yang L (2022) Profit Maximization Incentive Mechanism for Resource Providers in Mobile Edge Computing. IEEE Trans Serv Computing," in IEEE Transactions on Services Computing 15(1):138–149

  13. Santosh Kumar Y, Rakesh K (2021) A Scalable and Utility Driven Profit Maximized Auction of Resources Model for Cloudlet Based Mobile Edge Computing. Wirel Pers Commun 119:527–565

  14. Li J, Zhu Y, Yu J, et al (2018) Online Auction for IaaS Clouds: Towards Elastic User Demands and Weighted Heterogeneous VMs. IEEE Trans Parallel Distrib Syst 29(9):2075-2089

  15. Zhou B, Srirama SN, Buyya R (2019) An Auction-based Incentive Mechanism for Heterogeneous Mobile Clouds. J Syst Softw 152(JUN.):151–164

    Article  Google Scholar 

  16. Naveen KP, Sundaresan R (2021) Double-Auction Mechanisms for Resource Trading Markets. IEEE/ACM Trans Netw 29(3):1210-1223

  17. Jiang X, Sun Y, Liu B, et al (2022)Combinatorial double auction for resource allocation with differential privacy in edge computing, Computer Communications, Volume 185. pp. 13–22

  18. Zhang J, Ning X, Zhang X, Li W (2018) An online auction mechanism for cloud computing resource allocation and pricing based on user evaluation and cost. Futur Gener Comput Syst 89(DEC.):286–299

    Article  Google Scholar 

  19. Apt KR, Schaefer G (2006) Algorithmic Game Theory. Commun ACM 53(7):78–86

    Google Scholar 

  20. Roughgarden T (2016) Twenty Lectures on Algorithmic Game Theory. Camb Univ Press 11:145–158

Download references


The study was funded by the Vice Presidency for Graduate Studies, Business, and Scientific Research (GBR) at Dar Al Hekma University, Jeddah, Saudi Arabia. The authors extend their sincere gratitude and thanks to Dar Al Hekma University for its support.

Author information

Authors and Affiliations



Xiao Zheng wrote the main manuscript text; Syed Bilal Hussain Shah prepared figures; Saeeda Usman is mainly to collect data, consult information and literature; Saoucene Mahfoudh do the later review, and the design part of the experiment; Fathima Shemim KS is responsible for the language and polishing of the entire article; Piyush Kumar Shukla reviewed the manuscript. The author(s) read and approved the final manuscript.

Corresponding author

Correspondence to Syed Bilal Hussian Shah.

Ethics declarations

Ethical approval and consent to participate

The research in this paper does not involve animal experiments and does not harm humans and the environment.

Competing for interests

The authors declare no competing interests.

Additional information

Publisher’s Note

Springer Nature remains neutral with regard to jurisdictional claims in published maps and institutional affiliations.

Rights and permissions

Open Access This article is licensed under a Creative Commons Attribution 4.0 International License, which permits use, sharing, adaptation, distribution and reproduction in any medium or format, as long as you give appropriate credit to the original author(s) and the source, provide a link to the Creative Commons licence, and indicate if changes were made. The images or other third party material in this article are included in the article's Creative Commons licence, unless indicated otherwise in a credit line to the material. If material is not included in the article's Creative Commons licence and your intended use is not permitted by statutory regulation or exceeds the permitted use, you will need to obtain permission directly from the copyright holder. To view a copy of this licence, visit

Reprints and permissions

About this article

Check for updates. Verify currency and authenticity via CrossMark

Cite this article

Zheng, X., Shah, S.B.H., Usman, S. et al. Resource allocation and network pricing based on double auction in mobile edge computing. J Cloud Comp 12, 56 (2023).

Download citation

  • Received:

  • Accepted:

  • Published:

  • DOI: