A Double Auction Mechanism for Coded Distributed Computing in
Smart Vehicles
Jer Shyuan Ng
1,2
, Wei Yang Bryan Lim
1,2
, Zehui Xiong
3
, Sahil Garg
4
,
Yang Zhang
5
, Dusit Niyato
6
and Cyril Leung
7,8
1
Alibaba Group, Singapore
2
Alibaba-NTU Joint Research Institute (JRI), Singapore
3
Pillar of Information Systems Technology and Design, Singapore University of Technology Design, Singapore
4
´
Ecole de Technologie Sup
´
erieure, Montreal, Canada
5
Nanjing University of Aeronautics and Astronautics, China
6
School of Computer Science and Engineering, Nanyang Technological University, Singapore
7
LILY Research Center, Nanyang Technological University, Singapore
8
Department of Electrical and Computer Engineering, The University of British Columbia, Canada
Keywords:
Coded Distributed Computing, Double Auction, Straggler Effects, Resource Allocation.
Abstract:
The development of smart vehicles and rich cloud services have led to the emergence of vehicular edge com-
puting. To perform the distributed computation tasks efficiently, Coded Distributed Computing (CDC) was
proposed to reduce communication costs and mitigate the straggler effects through the use of coding tech-
niques. In this paper, we propose a double auction mechanism to allocate the resources of the edge servers to
the vehicles in order to complete the CDC tasks. Specifically, the vehicles use the PolyDot codes to manage
the tradeoff between communication costs and recovery threshold. Given the requirements of various vehicles,
the double auction mechanism matches the edge servers with the required resources to the vehicles. Besides,
the double auction mechanism also determines the prices that the vehicles need to pay for the resources of
the edge servers. The double auction mechanism satisfies the properties of individual rationality, incentive
compatibility and budget-balance.
1 INTRODUCTION
With the advent of vehicular applications, there has
been a significant transformation in the way that data
are managed, where we observe a paradigm shift from
the traditional centralized cloud computing toward
flexible distributed vehicular edge computing. Instead
of processing the data at the central cloud server, the
computing and storage services are offloaded to the
vehicles, extending the cloud computing services to
the edge of the networks. Instead of performing the
large-scale computations individually, the vehicles
can leverage on the resources of the edge servers, e.g.,
roadside units (RSUs) and base stations, to complete
their computation tasks efficiently over the distributed
vehicular edge computing networks (Xu et al., 2019).
Coded Distributed Computing (CDC) has been
proposed to perform distributed computation tasks ef-
ficiently. Coding techniques can be used to achieve an
optimal tradeoff between computation and communi-
cation loads, thus reducing the communication costs
required for the distributed computation tasks. Be-
sides, the computation strategies are designed to di-
vide and allocate the datasets to the edge servers so
that the vehicles are able to reconstruct the final result
with the computed results from only a subset of edge
servers. By reducing the number of edge servers re-
quired to return their results, the computation latency
can be minimized.
However, the edge servers are not motivated to fa-
cilitate the CDC tasks of the vehicles. As such, incen-
tive mechanisms are essential to encourage the edge
servers to complete the CDC tasks by offering them
monetary rewards in exchange for their resources. In
order to ensure efficient completion of the CDC tasks,
the incentive mechanisms need to allocate the CDC
tasks to the edge servers and determine the payment
prices to the edge servers. Since there are multiple ve-
hicles competing for the resources of the edge servers,
we propose a double auction mechanism to model
the competition between different vehicles and edge
servers as well as to maximize the utility of the auc-
tioneer.
Ng, J., Lim, W., Xiong, Z., Garg, S., Zhang, Y., Niyato, D. and Leung, C.
A Double Auction Mechanism for Coded Distributed Computing in Smart Vehicles.
DOI: 10.5220/0010615801070114
In Proceedings of the 18th International Conference on Wireless Networks and Mobile Systems (WINSYS 2021), pages 107-114
ISBN: 978-989-758-529-6
Copyright
c
2021 by SCITEPRESS Science and Technology Publications, Lda. All rights reserved
107
In this paper, we consider that there are multi-
ple vehicles that aim to perform machine learning
tasks using the data they collected. Due to the lack
of computation resources, the vehicles leverage on
the computation and communication resources of the
edge servers. In order to perform the distributed com-
putation tasks efficiently, the vehicles use PolyDot
codes (Dutta et al., 2020) to divide and allocate the
dataset to the edge servers. By using PolyDot codes,
the vehicles are able to determine the number of edge
servers that they require to complete their CDC tasks.
Specifically, for time-sensitive applications, the vehi-
cles aim to minimize the straggler effects and hence
need fewer edge servers to compute the CDC tasks.
However, since each of the edge servers is allocated
a larger size of dataset for computation, larger com-
munication costs are needed to transmit the computed
results and thus, the vehicles need to pay higher prices
to the edge servers. Hence, there is a tradeoff be-
tween the recovery threshold, i.e., the number of edge
servers that need to return their computed results to
the vehicles in order to recover the final result, and
the communication costs. Each vehicle requires dif-
ferent number of edge servers, depending on their ur-
gency to complete their CDC tasks. Given the dif-
ferent objectives of the vehicles and the heterogene-
ity of the edge servers, the double auction mechanism
matches the edge servers to the vehicles as well as
determines the payment and selling prices. The dou-
ble auction mechanism is managed by an auctioneer,
which is represented by a third-party platform, that
aims to maximize its total profit. Thus, the payment
prices of the buyers for the resources are larger than
the selling prices of the sellers. In other words, the
profit of the auctioneer for each match of winning
buyer and seller is the difference between the payment
and selling price of the winning buyer and seller re-
spectively.
2 SYSTEM MODEL AND
PROBLEM FORMULATION
The system model comprises a set M =
{1,...,m,...,M} of M vehicles and a set
N = {1,...,n,...,N} of N edge servers in a
distributed vehicular edge computing network.
Equipped with more sophisticated sensors, the
vehicles collect data from their surroundings, which
offer meaningful insights, e.g., by using machine
learning techniques (Radu et al., 2020), (Fusco et al.,
2015). Given the massive amount of constantly
changing data, AI models have shown their effective-
ness in obtaining valuable information from every
piece of vehicular data generated, ranging from the
understanding behaviour pattern of consumers of a
particular in-vehicle application to improving the
productivity of businesses to monitoring large-scale
phenomena such as tracking of road conditions.
However, the vehicles may not have sufficient
resources, e.g., CPU power, to handle the growing
datasets individually. Instead, the vehicles can lever-
age on the resources of the edge servers to facilitate
their computation tasks, e.g., training of AI models.
2.1 Coded Distributed Computing
We consider that each vehicle m aims to compute
the matrix multiplication of two Q
m
× Q
m
square in-
put matrices A
m
and B
m
, i.e., C
m
= A
m
B
m
. In or-
der to mitigate the straggler effects in performing the
distributed computation tasks, the vehicles can adopt
coding techniques to divide the datasets and allocate
the subsets of data to the edge servers. The objective
of various coding techniques is to minimize the re-
covery threshold, i.e., the number of edge servers that
need to return their computed results to the vehicles in
order to recover the final result. However, a smaller
recovery threshold means that there are fewer edge
servers that are working on the computation task.
Hence, each edge server is allocated a larger dataset
to compute and has greater communication costs in
terms of number of symbols communicated to the ve-
hicles.
To manage the tradeoff between the recovery
threshold and the communication costs of the edge
servers, PolyDot codes (Dutta et al., 2020) are pro-
posed where Polynomial codes (Yu et al., 2017) and
MatDot codes (Dutta et al., 2020) are special in-
stances of this coding framework by considering the
extreme cases: to either minimize communication
costs or recovery threshold. In particular, Polynomial
codes achieve minimum recovery threshold at the ex-
pense of higher communication costs whereas Mat-
Dot codes minimize communication costs but require
larger recovery threshold.
Unlike Polynomial codes and MatDot codes
that split the input matrices either horizontally or
vertically, each vehicle m uses PolyDot codes to split
the input matrices A
m
and B
m
both horizontally and
vertically such that:
WINSYS 2021 - 18th International Conference on Wireless Networks and Mobile Systems
108
A
m
=
A
m
0,0
··· A
m
0,s
m
1
.
.
.
.
.
.
.
.
.
A
m
t
m
1,0
··· A
m
t
m
1,s
m
1
,
B
m
=
B
m
0,0
··· B
m
0,t
m
1
.
.
.
.
.
.
.
.
.
B
m
s
m
1,0
··· B
m
s
m
1,t
m
1
,
(1)
where A
m
j,i
and B
m
i, j
are Q
m
/t
m
× Q
m
/s
m
and Q
m
/s
m
×
Q
m
/t
m
submatrices respectively for i = {0,1,..., s
m
1} and j = {0,1,...,t
m
1}. The values of parame-
ters s
m
and t
m
are chosen such that s
m
t
m
= ω
m
, where
ω
m
is the number of submatrices of vehicle m.
For PolyDot codes, the encoding polynomials
p
m
A
(x,y) and p
m
B
(y, z) for each vehicle m are as fol-
lows:
p
m
A
(x,y) =
t
m
1
i=0
s
m
1
j=0
A
m
i, j
x
i
y
j
,
p
m
B
(y, z) =
s
m
1
k=0
t
m
1
l=0
B
m
k,l
y
s
m
1k
z
l
,
(2)
where variables x, y and z are assigned to the encod-
ing polynomials where each of the encoding polyno-
mials p
m
A
(x,y) and p
m
B
(y, z) is assigned two variables.
The encoding polynomials with three variables are
transformed to polynomials with a single variable by
choosing y = x
t
m
and z = x
t
m
(2s
m
1).
There are three major steps in completing the
CDC tasks:
1. Encoding: The vehicles divide and encode the
submatrices. Then, the vehicles distribute the en-
coding polynomials to the edge servers. Each
edge server n receives p
m
A
(x
n
,y
n
) and p
m
B
(y
n
,z
n
)
where y
n
= x
t
m
n
and z
n
= x
t
m
(2s
m
1)
n
.
2. Computation: Each edge server n computes
the matrix multiplication of the encoding poly-
nomials and produces the result C
m
(x
n
,y
n
,z
n
) =
p
m
A
(x
n
,y
n
)p
m
B
(y
n
,z
n
). Upon completion, the edge
servers transmit the result back to the vehicles.
3. Decoding: Each vehicle m is able to recon-
struct the final result C
m
= A
m
B
m
upon receiv-
ing the computed results from any t
2
m
(2s
m
1) edge servers. In particular, the vehicle
uses the computed results from the edge servers
to recover the coefficient of x
i1
y
s
m
1
z
l1
in
C
m
(x,y, z). By using the transformed single-
variable encoding polynomials, the vehicles com-
pute the coefficient of x
i1+t
m
(s
m
1)+t(2s
m
1)(l1)
in C
m
(x,x
t
m
,x
t
m
(2s
m
1)).
By using PolyDot codes, the recovery threshold,
k
m
, that can be achieved by vehicle m is defined as
follows:
k
m
= t
2
m
(2s
m
1). (3)
To complete the CDC subtasks of vehicle m, the
number of symbols that each edge server is required
to transmit, which is denoted as µ
m
, is represented as
follows:
µ
m
=
Q
2
m
t
2
m
. (4)
Hence, in order to complete the CDC task of vehi-
cle m, the total number of symbols communicated by
the edge servers to vehicle m is
Q
2
m
t
2
m
× t
2
m
(2s
m
1) =
(2s
m
1)Q
2
m
.
The number of computations that each edge server
requires to complete the CDC subtasks of vehicle m,
which is denoted as α
m
, is defined as follows:
α
m
=
Q
3
m
s
m
t
2
m
. (5)
The total number of computations that are performed
by the edge servers that facilitate in the CDC task of
vehicle m is
Q
3
m
s
m
t
2
m
×t
2
m
(2s
m
1) =
Q
3
m
s
m
(2s
m
1).
In our system model, we consider the matrix mul-
tiplication of two square matrices. Matrix multiplica-
tion is an important basic mathematical operation for
many useful AI algorithms. It may involve the mul-
tiplication of non-square matrices or more than two
matrices. Our system model can be easily extended to
compute the matrix multiplication of non-square ma-
trices and more than two matrices by using PolyDot
codes.
2.2 Double Auction Model
Since there are multiple vehicles and edge servers in
the network, a double auction mechanism is adopted.
The objectives of the double auction mechanism are
(i) to match the edge servers to the vehicles, and (ii)
to determine the payment prices of vehicles and the
selling prices of edge servers.
In this double auction mechanism, there are sev-
eral entities, where their roles are described as fol-
lows:
1. Vehicles (Buyers): The vehicles are buyers that
pay the edge servers for their resources in facili-
tating the CDC subtasks. In order to participate in
the auction, the vehicles submit their buy-bids to
the auctioneer. The buy-bid of vehicle m, which is
denoted by b
m
, represents the maximum price that
vehicle m is willing to pay for each edge server to
A Double Auction Mechanism for Coded Distributed Computing in Smart Vehicles
109
complete its CDC subtask. The vehicles are able
to decide on the recovery threshold and the com-
munication costs required to complete the CDC
tasks by using the PolyDot codes. Specifically, for
vehicles that require their CDC tasks to be com-
pleted within a shorter period of time, they need a
smaller recovery threshold, which in turn results
in higher communication costs required by each
edge server. As such, the vehicles need to pay
more for the edge servers to complete the CDC
subtasks. Conversely, for vehicles that need to
complete CDC tasks without time constraint, they
aim to reduce communication costs of the edge
servers in order to reduce the payment prices to
the edge servers. The buy-bid of vehicle m is ex-
pressed as follows:
b
m
= λ
1
m
µ
m
+ λ
2
m
α
m
, (6)
where λ
1
m
and λ
2
m
are the unit prices that vehicle m
is willing to pay for the communication and com-
putation resources respectively.
2. Edge Servers (Sellers): The edge servers are sell-
ers that provide their computation and commu-
nication resources to facilitate the CDC subtasks
of the vehicles. In return, they receive monetary
rewards for the provision of their resources. By
participating in the double auction mechanism,
the sellers submit their sell-bids to the auctioneer.
The amounts of computation and communication
resources of each edge server n are represented by
r
cp
n
and r
cm
n
respectively. The unit costs of com-
putation and communication resources are repre-
sented by c
cp
n
and c
cm
n
respectively. Based on the
values of these parameters, the sell-bid of seller
n, which is the price that the seller n wants to re-
ceive for providing its resources to complete the
CDC subtask, can be computed as follows:
q
n
= r
cm
n
c
cm
n
+ r
cp
n
c
cp
n
. (7)
3. Auctioneer: Typically, the service provider plat-
form plays the role of the auctioneer as a trusted
third-party in order to ensure fairness and trans-
parency of the transaction between the buyers and
sellers. The auctioneer collects the buy-bids and
sell-bids from the buyers and sellers respectively.
Then, it allocates the edge servers to the vehicles.
Besides, the auctioneer determines the payment
price of the vehicles for the resources of the edge
servers. In order to prevent malicious buyers and
sellers from threatening the security of the net-
work, the auctioneer can also implement an au-
thentication system (Lin et al., 2012) (Liu et al.,
2014) to ensure the trustworthiness of the buyers
and sellers. The auctioneer can be regarded as the
unified API that aggregates the resources of the
edge servers and provides the vehicles with their
required resources for a price, a fraction of which
is paid to the corresponding edge servers that fa-
cilitate the CDC tasks.
The utility of buyer m, which is denoted as u
m
, is
expressed as follows:
u
m
=
(
k
m
(b
m
p
m
), if b
m
W
b
,
0, otherwise,
(8)
where p
m
payment price of buyer m. The set W
b
con-
sists of the buy-bids of the winning buyers. If buyer
m is not matched with any seller, the utility of buyer
m is zero.
The utility of seller n is denoted as follows:
u
n
=
(
γ
n
q
n
, if q
n
W
q
,
0, otherwise,
(9)
where γ
n
is the price paid by the auctioneer to seller n
for its resources. The set W
q
consists of the winning
sell-bids of successfully matched sellers. If seller n
is not successfully matched to any buyer, its utility is
zero.
The double auction mechanism is managed by the
third-party auctioneer. The utility of the auctioneer,
u
a
, is the difference between the payment received by
all successfully matched buyers and the payment paid
to all successfully matched sellers, which is expressed
as follows:
u
a
=
b
m
W
b
k
m
p
m
q
n
W
q
γ
n
. (10)
The design of the double auction mechanism has
several properties:
Individual Rationality: Each buyer and seller
achieves individual rationality in this double auc-
tion mechanism. In other words, each of the buy-
ers and sellers receives non-negative utility by
participating in the auction. In particular, each
buyer m pays a price that is lower than or equal to
its buy-bid, i.e., b
m
p
m
0, m M , and each
seller n receives a payment that is higher than or
equal to its sell-bid, i.e., q
n
γ
n
0, n N .
Incentive Compatibility: There is no incentive for
the buyers and sellers to submit buy-bids and sell-
bids respectively other than their true valuations.
In other words, the buyers and sellers submit their
bids truthfully.
Budget-balance: As a third-party platform that de-
termines the allocation of edge servers to the ve-
hicles and the corresponding payment and selling
WINSYS 2021 - 18th International Conference on Wireless Networks and Mobile Systems
110
prices, the auctioneer needs to gain a non-negative
utility. Specifically, the total payment price that is
received from all winning bidders is higher than or
equal to the total price paid to all winning sellers,
i.e., u
a
0.
The objectives of this double auction mechanism
are to match the buyers and sellers as well as to de-
termine the payment and selling prices of the buyers
and sellers respectively in order to complete the CDC
tasks. As a platform that manages the transactions
between buyers and sellers, the aim of the auction-
eer, which is to maximize its total profit and thus util-
ity while ensuring that the double auction mechanism
is individually-rational and incentive-compatible, can
be expressed as follows:
max u
a
s.t. b
m
p
m
, m M ,
q
n
γ
n
, n N ,
b
m
p
m
b
0
m
p
0
m
, m M ,
γ
n
q
n
γ
0
n
q
0
n
, n N ,
(11)
where b
0
m
and q
0
n
are the untruthful buy-bid of buyer
m and sell-bid of seller n respectively. The terms p
0
m
and γ
0
n
are the payment price and selling price, given
the untruthful buy-bid b
0
m
and q
0
n
respectively.
3 DOUBLE AUCTION
MECHANISM
In this section, we discuss the design of the double
auction mechanism. There are two important stages in
the double auction mechanism: matching of the buy-
ers and sellers and the determination of the payment
prices of buyers and the selling prices of sellers.
3.1 Matching between Buyers and
Sellers
Given the buy-bids from the buyers, the auctioneer
sorts the buy-bids in the descending order, which is
represented by the set B = {b
(1)
m
,...,b
(m)
m
,...,b
(M)
m
},
where:
b
(1)
m
b
(2)
m
··· b
(M)
m
, (12)
and b
(1)
m
and b
(M)
m
are the largest and smallest buy-bids
which are offered by buyer m respectively.
The sell-bids from the sellers are sorted in the
ascending order in set S = {q
(1)
n
,...,q
(n)
n
,...,q
(N)
n
}
where:
q
(1)
n
q
(2)
n
··· q
(N)
n
, (13)
and q
(1)
n
and q
(N)
n
are the smallest and largest sell-bids
that are submitted by seller n respectively .
Given the sorted buy-bids and sell-bids, the auc-
tioneer matches the vehicles and edge servers that sat-
isfy the following inequalities:
b
m
q
n
, m M , n N , (14)
r
cm
n
g
n
µ
m
, m M , n N , (15)
r
cp
n
h
n
α
m
, m M , n N , (16)
where g
n
is the amount of communication resources
needed to transmit each symbol and h
n
is the amount
of computation resources needed for each computa-
tion. The inequality (14) requires the buy-bid of buyer
m to be larger than or equal to the sell-bid of the seller
n for a successful match in order to satisfy the prop-
erty of individual rationality of the auction mecha-
nism. Inequalities (15) and (16) ensure that the seller
n has sufficient communication and computation re-
sources to perform the CDC subtasks of buyer m re-
spectively. If there are multiple sellers that satisfy that
conditions for a particular buyer m, the seller with the
smallest sell-bid wins.
The match results between the buyers and sellers
can be represented by a matching matrix, which is ex-
pressed as follows:
β =
β
1
1
β
2
1
··· β
N
1
β
1
2
β
2
2
··· β
N
2
.
.
.
.
.
.
.
.
.
.
.
.
β
1
M
β
2
M
··· β
N
M
, (17)
where β
n
m
= 1 if seller n is matched to buyer m
whereas β
n
m
= 0 if the match between buyer m and
seller n is not successful.
3.2 Determination of Payment and
Selling Prices
In order to determine the payment prices of the win-
ning buyers to the auctioneer as well as the selling
prices of the winning sellers, we present a pricing
scheme which is similar to the second-price auction.
In particular, if buyer m is matched with seller n,
n N , the payment price of winning buyer m equals
the next largest buy-bid, given its buy-bid. The selling
price of winning seller n equals the next smallest sell-
bid in the feasible set of sellers, i.e., the sellers with
sell-bids that fulfil inequalities (14), (15) and (16)
A Double Auction Mechanism for Coded Distributed Computing in Smart Vehicles
111
and thus can possibly matched to buyer m, given the
seller’s sell-bid.
The difference between the payment price of win-
ning buyer m and selling price of winning seller n is
equal to the profit of the auctioneer.
4 SIMULATION RESULTS
We consider a distributed vehicular edge comput-
ing network that consists of 6 vehicles and 50 edge
servers. The values of system simulation parameters
are summarized in Table 1. We set Q
m
= 10 and
w
m
= 4, m M , where all vehicles have the input
matrices of the same size and split the input matrices
into 4 submatrices. Given the requirements of the ve-
hicles, they split their input matrices horizontally and
vertically and encode their submatrices using PolyDot
codes. The splits of input matrices are determined by
variables s
m
and t
m
as shown in Equation (1).
Table 1: System Simulation Parameter Values.
Parameter Values
Unit cost of communication resources, c
cm
n
[0.1,1]
Unit cost of computation resources, c
cp
n
[0.1,1]
Total amount of communication resources, r
cm
n
1-50 Gbps
Total amount of computation resources, r
cp
n
10-200MHz
Amount of communication resources required
for each transmission, g
n
100-500Mbps
Amount of computation resources required for
each computation, h
n
100-500kHz
Unit price of communication resources, λ
1
m
[0.1, 1]
Unit price of computation resources, λ
2
m
[0.1, 1]
Table 2: Simulation Parameter Values of Buyers.
Buyer ID s
m
t
m
k
m
λ
1
m
λ
2
m
Buyer 1 1 4 16 0.6 0.5
Buyer 2 1 4 16 0.5 0.4
Buyer 3 2 2 12 0.3 0.8
Buyer 4 2 2 12 0.4 0.4
Buyer 5 4 1 7 0.4 0.5
Buyer 6 4 1 7 0.4 0.3
The values of the simulation parameters of the 6
buyers are shown in Table 2. The buyers with larger t
m
and smaller s
m
have larger recovery threshold. Given
the number of symbol transmissions and computa-
tions required for the CDC tasks as well as the unit
Figure 1: Utility of Buyers.
Figure 2: Utility of Sellers.
prices that the buyers are willing to pay for the re-
sources, the buy-bids of the buyers can be computed.
Figure 1 shows the utilities of the buyers given
the buy-bids of the buyers. We observe that for buy-
ers that submit buy-bids of lower than 60, their util-
ities are zero. This implies that by bidding a value
of smaller than 60, the buyers are unable to complete
their CDC tasks as they do not have sufficient edge
servers to facilitate their CDC tasks. There are several
reasons for the failure in their bids for edge servers.
Firstly, the buyers are not matched to sellers that have
larger sell-bids than the buyers’ buy-bids to ensure
individual rationality of the double auction mecha-
nism. Thus, only a small number of sellers that can be
matched to buyers with smaller bids. Secondly, since
each edge server can only facilitate the CDC task of
one of the vehicles, the buyers with small bids lose
out to those with large bids in the auction, reducing
further the number of sellers that can possibly match
to the buyers with small bids. Besides, we observe
that the buyer with a buy-bid of 115 receives a utility
of zero but the buyer with a smaller buy-bid of 107.5
receives a utility of 570, resulting in a discontinuity
in the curve in Fig. 1. The vehicles require a num-
ber of edge servers, which is defined by the recov-
ery threshold, to complete their CDC tasks. However,
there may not be enough edge servers that have suf-
ficient communication and computation resources to
complete the CDC tasks of the vehicles. Hence, even
by submitting a larger buy-bid, the buyers may still
not be allocated any seller for their CDC tasks.
In Fig. 2, we observe that sellers with sell-bids of
larger than 122 are not allocated to any buyer and thus
WINSYS 2021 - 18th International Conference on Wireless Networks and Mobile Systems
112
Figure 3: Utilities of winning sellers and buyers under dif-
ferent number of sellers and 6 buyers.
Figure 4: Utilities of winning sellers and buyers under dif-
ferent number of buyers and 50 sellers.
their utilities are zero. The reasons are similar to those
of the buyers. Firstly, the buyers that can be matched
to the sellers need to have larger buy-bids than the
sellers’ sell-bids. This reduces the number of pos-
sible buyers that can be matched to the sellers with
large sell-bids. Secondly, the sellers with large sell-
bids lose out to those with small sell-bids. We also
observe that sellers with smaller sell-bids, e.g., 14.8
and 45.2, are also not allocated to any buyer. This
is because they may not have sufficient resources to
complete the CDC subtasks of the buyers. For sellers
that have sufficient resources for the CDC subtasks of
the buyers, the match between the seller and buyer is
still not successful if the number of possible sellers
that can be matched to the buyers does not meets the
buyer’s recovery threshold requirement.
Given that the double auction mechanism is
individually-rational and incentive-compatible, we
study the effect of different number of buyers and sell-
ers on their utilities as well as the utility of the auc-
tioneer. Figure 3 shows the utilities of winning buyers
and sellers in a distributed vehicular edge computing
network that consists of 6 buyers and different num-
ber of sellers. As the number of sellers increases, the
total utility of winning sellers decreases. Since the
competition among the sellers increases, the sellers
submit lower sell-bids to the auctioneer, resulting in
lower selling prices. Hence, the utilities of the win-
ning sellers decrease. However, the buyers benefit
from an increase in number of sellers. We observe
that as the number of sellers increase from 70 to 80,
the total utility of the winning buyers increases from
920 to 973. With a larger number of sellers in the net-
work, more buyers are able to be matched with the
sellers and win the buy-bids, hence completing their
CDC tasks and receiving positive utilities.
Similar trend can be observe when the number of
buyers varies. In Fig. 4, as the number of buyers in-
creases, the total utility of winning buyers generally
decreases. The increase in competition between the
buyers results in larger buy-bids submitted by the buy-
ers and hence, higher payment prices for the resources
of the sellers. As such, the utilities of the winning
buyers decrease. However, the total utility of the win-
ning sellers increases. As the number of buyers in-
creases, there is a larger demand for the resources of
the sellers and more sellers are allocated to facilitate
the CDC tasks of the buyers. Thus, the total utility of
the winning sellers increases.
5 CONCLUSION
In this paper, we proposed a double auction mecha-
nism to incentivize the edge servers to facilitate the
vehicles in completing their CDC tasks. Firstly, the
vehicles use PolyDot codes to split their CDC tasks
and distribute the CDC subtasks to the edge servers
for computations. Then, based on the requirements of
the vehicles, the double auction mechanism matches
the vehicles and edge servers as well as determines
the payment prices of the vehicles and selling prices
of the edge servers. For our future work, we can con-
sider different types of distributed computation tasks,
e.g., gradient descent, convolution and Fourier Trans-
form.
ACKNOWLEDGEMENTS
This research is supported, in part, by Alibaba
Group through Alibaba Innovative Research (AIR)
Program and Alibaba-NTU Singapore Joint Re-
search Institute (JRI), and Singapore Energy Market
Authority (EMA), Energy Resilience, under Grant
NRF2017EWT-EP003-041. This research is also
supported by WASP/NTU grant M4082187 (4080)
and Singapore Ministry of Education (MOE) Tier 1
(RG16/20).
REFERENCES
Dutta, S., Fahim, M., Haddadpour, F., Jeong, H., Cadambe,
A Double Auction Mechanism for Coded Distributed Computing in Smart Vehicles
113
V., and Grover, P. (2020). On the Optimal Recov-
ery Threshold of Coded Matrix Multiplication. IEEE
Transactions on Information Theory, 66(1):278–301.
Fusco, G., Colombaroni, C., Comelli, L., and Isaenko, N.
(2015). Short-term Traffic Predictions on Large Ur-
ban Traffic Networks: Applications of Network-based
Machine Learning Models and Dynamic Traffic As-
signment Models. In 2015 International Conference
on Models and Technologies for Intelligent Trans-
portation Systems (MT-ITS), pages 93–101, Budapest,
Hungary.
Lin, H., Lin, Y., and Chang, W. (2012). Reputation Auc-
tion Framework for Cooperative Communications in
Green Wireless Networks. In 2012 IEEE 23rd Inter-
national Symposium on Personal, Indoor and Mobile
Radio Communications - (PIMRC), pages 875–880,
Sydney, New South Wales, Australia.
Liu, Y., Zhang, J., Yu, H., and Miao, C. (2014). Reputation-
aware Continuous Double Auction. Proceedings of
the AAAI Conference on Artificial Intelligence, 28(1).
Radu, M. D., Costea, I. M., and Stan, V. A. (2020). Auto-
matic Traffic Sign Recognition Artificial Intelligence -
Deep Learning Algorithm. In 2020 12th International
Conference on Electronics, Computers and Artificial
Intelligence (ECAI), pages 1–4, Bucharest, Romania.
Xu, X., Xue, Y., Li, X., Qi, L., and Wan, S. (2019). A
Computation Offloading Method for Edge Computing
With Vehicle-to-Everything. IEEE Access, 7:131068–
131077.
Yu, Q., Maddah-Ali, M., and Avestimehr, S. (2017).
Polynomial Codes: an Optimal Design for High-
Dimensional Coded Matrix Multiplication. In Guyon,
I., Luxburg, U. V., Bengio, S., Wallach, H., Fergus,
R., Vishwanathan, S., and Garnett, R., editors, Ad-
vances in Neural Information Processing Systems 30
(NIPS 2017), pages 4403–4413, Long Beach, Califor-
nia, USA. Curran Associates, Inc.
WINSYS 2021 - 18th International Conference on Wireless Networks and Mobile Systems
114