This paper was converted on www.awesomepapers.org from LaTeX by an anonymous user.
Want to know more? Visit the Converter page.

Reliable Traffic Monitoring Mechanisms Based on Blockchain in Vehicular Networks

Jianxiong Guo, Xingjian Ding, Weili Wu J. Guo and W. Wu are with the Department of Computer Science, Erik Jonsson School of Engineering and Computer Science, Univerity of Texas at Dallas, Richardson, TX, 75080 USA; X. Ding is with the School of Information, Renmin University of China, Beijing, CHN E-mail: jianxiong.guo@utdallas.eduManuscript received April 19, 2005; revised August 26, 2015.
Abstract

The real-time traffic monitoring is a fundamental mission in a smart city to understand traffic conditions and avoid dangerous incidents. In this paper, we propose a reliable and efficient traffic monitoring system that integrates blockchain and the Internet of vehicles technologies effectively. It can crowdsource its tasks of traffic information collection to vehicles that run on the road instead of installing cameras in every corner. First, we design a lightweight blockchain-based information trading framework to model the interactions between traffic administration and vehicles. It guarantees reliability, efficiency, and security during executing trading. Second, we define the utility functions for the entities in this system and come up with a budgeted auction mechanism that motivates vehicles to undertake the collection tasks actively. In our algorithm, it not only ensures that the total payment to the selected vehicles does not exceed a given budget, but also maintains the truthfulness of auction process that avoids some vehicles to offer unreal bids for getting greater utilities. Finally, we conduct a group of numerical simulations to evaluate the reliability of our trading framework and performance of our algorithms, whose results demonstrate their correctness and efficiency perfectly.

Index Terms:
Internet of vehicle, Lightweight blockchain, Reliability, Budgeted auction mechanism, Truthfulness.

I Introduction

For the past few years, vehicles have been getting smarter with the progress of technology by installing camera sensors, microcomputers, and communication devices [1] [2]. These vehicles are connected with themselves and other facilities to form a vehicular network. Due to its potential commercial value, the Internet of Vehicles (IoV) has become a hot topic that attracts the attention of academia and industry. The IoV provides a convenient platform for information exchange and sharing between users, such as traffic accidents and road conditions, which can improve the utilization of resources and traffic conditions effectively [3]. However, too many mobile and variable entities are involved in the vehicular network, they are usually strangers and do not trust each other. Because of that, information exchange in the IoV still face huge challenges about how to ensure information security and privacy protection in real applications.

The advent of blockchain technology makes it possible to change all of this. Blockchain is a public and distributed database which entered people’s sight since Nakamoto published his white paper in 2008 [4]. Blockchain takes advantage of the knowledge of modern cryptography and distributed consensus protocol to achieve the purpose of security and privacy protection. Here, the digital signature is an effective means to achieve identity authentication and avoid information leakage, while the consensus protocol allows information to interact freely among users who do not trust each other without the need for a third platform. Thus, it can be used to construct a reliable information trading system because of its decentralization, security, and anonymity [5] [6]. Despite this, how to design a reasonable blockchain structure based on the vehicle network, improve the efficiency of information exchange, and guarantee the truthfulness of pricing strategies is still a problem worthy of in-depth discussion.

In this paper, we consider such a scenario: In a smart city, there is a traffic administration (TA) that is responsible for monitoring real-time traffic conditions by collecting information of various road nodes in this city. The traditional approach is to install cameras at various road nodes, but doing so is costly and vulnerable to be damaged by natural and human activities. Especially in some remote corners, there is no need to install a separate camera. Driven by the IoV, the TA can crowdsource its tasks of traffic information collection to vehicles running on the road. Based on that, we need to study the traffic information exchange between TA and vehicles in a smart city. There are two challenges shown as follows: (1) how to construct a reliable and efficient traffic information trading framework implemented by blockchain?; and (2) how to build a fair and truthful mechanism that selects a subset of vehicles as information providers to maximize the TA’s profit while preventing vicious competition?

To settle the first challenge, we propose a blockchain-based real-time traffic monitoring (BRTM) system to achieve a reliable and efficient information trading process between TA and vehicles. First, we use modern cryptography methods and digital signature techniques to protect the contents of communication from privacy leakage. In addition to this, the traditional proof-of-work (PoW) consensus mechanism cannot be applied to our resource-limited vehicle network because of its high computational cost and slow confirmation speed [7]. Thus, we design a lightweight blockchain relied on the reputation-based delegated proof-of-stake (DPoS) consensus mechanism that is able to reduce confirmation time and improve throughput for this system. Here, All the TAs of different cities can be considered as the full nodes which are interconnected with each other to complete the consensus process. There is a reputation value associating with each TA in the BRTM system, which reflects its behaviors in the previous consensus rounds. A full node with a higher reputation value implies it has a higher voting weight and is more likely to become the leader in the future consensus round, thus ensuring the reliability and efficiency of the consensus process.

To settle the second challenge, we propose a budgeted auction mechanism so as to incentivize the vehicles in a city to take on the tasks issued by the TA actively. Here, the TA publishes a task set that contains a number of different tasks about traffic information on various locations. Each active vehicle in this city submits the tasks that it can accomplish and corresponding bid to the TA, then the TA selects a winner set from these active vehicles to undertake its tasks and pay them accordingly. We aim to maximize the TA’s profit by selecting an optimal winner set, which can be categorized as a non-monotone submodular maximization problem with knapsack constraint. The simple greedy strategy can give us a valid solution, but it does not satisfy the truthfulness. If no truthfulness, a vehicle may increase its utility by offering a higher bid or colluding with other vehicles, which will damage the fairness and effectiveness of the auction mechanism. Thus, we design a truthful budgeted selection and pricing (TBSAP) algorithm that can guarantee the individual rationality, profitability, truthfulness, and computational efficiency for the budgeted auction mechanism.

Finally, the effectiveness of our proposed mechanisms is evaluated by numerical simulations. It is shown that our proposed mechanisms can enhance the reliability of the blockchain system by urging the nodes to behave rightfully and make sure that the information trading is fair and truthful. To our best knowledge, this is the first time to put forward a reliable blockchain-based traffic monitoring system in a vehicular network that is based on a budgeted auction mechanism to maximize the profit. The rest of this paper is organized as follows: In Sec. II, we discuss the-state-of-art work. In Sec. III, we introduce our traffic monitoring system and define the utility functions. In Sec. IV, we present our design of lightweight blockchain elaborately. In Sec. V, we propose a truthful budgeted auction mechanism. Then we evaluate our proposed system and algorithms by numerical simulations in Sec.VI and show the conclusions in Sec. VII.

II Related Work

With the development of Internet of Things (IoT), vehicles are no longer isolated individuals, but nodes in a connected network, which lead to the formation of the IoV [8]. Then, the IoV has been developed further due to the progress of computing power and modern communication devices. Kaiwartya et al. [8] provided us with an IoV framework that focused on networking architecture mainly. Singh et al. [9] presented an abstract network model for the IoV and related with different services relied on popular technologies. Ji et al. [10] designed a novel network structure for the future IoV and gave a comprehensive review of the basic IoV information, which included several network architectures and representative applications of IoV.

In recent years, the rise of blockchain technology overturned the operating mode of the traditional IoT, thereby the blockchain-based IoT has promoted changes in trading methods. Firstly, in energy trading, Li et al. [11] designed a secure energy trading system, energy blockchain, for the industrial IoT relied on consortium blockchain and credit-based payment scheme. Guo et al. [12] [13] proposed a blockchain-based distributed multiple energies trading framework to address security and privacy protection. Xia et al. [14] came up with a blockchain-enabled vehicle-to-vehicle electricity trading scheme that exploited Bayesian game pricing to deal with incomplete information sharing. Secondly, in computing resource trading, Yao et al. [15] studies a resource management problem between the cloud server and miners since the computational power of industrial IoT was limited. Ding et al. [16] created a mechanism for the blockchain platform to attract lightweight devices to purchase more computational power from edge servers for participating in mining. Finally, in information trading, Wang et al. [17] designed and realized a securer and more reliable government information sharing system by combining blockchain, network model, and consensus algorithm. Xu et al. [18] devised a blockchain-based big data sharing framework that was appropriate for the resource-limited devices. Chen et al. [19] proposed a blockchain-based data trading framework that relied on consortium blockchain to achieve secure and truthful data trading for IoV. However, they did not really achieve reliability and ignored the high latency of the consensus process. In this paper, our trading model is different from either of the provious ones and attempt to design a secure and reliable system carefully.

The auction mechanism, as a technique of game theory, has been used to solve the allocation and pricing problems in a variety of applications, such as mobile crowdsensing [20] [21], edge computing [22] [23], and spectrum trading [24] [25]. Zhang et al. [20] surveyed the diverse incentive strategies that encouraged users to take part in mobile crowdsourcing. Yang et al. [21] designed two crowdsourcing models under the framework of the Stackelberg game and reverse auction theory respectively. Kaini [22] put forward and solved an auction-based profit maximization problem under the background of the hierarchical model. Jiao et al. [23] proposed an auction-based market model for computing resource allocation between the edge server and miners. Zhu et al. [24] devised a truthful double auction mechanism for cooperative sensing in radio networks. Zheng et al. [25] achieved a social welfare maximization problem by re-distributing wireless channels, while they took the strategy-proof into consideration as well. In this paper, our proposed auction mechanism is similar to that under the mobile crowdsourcing, but there is a budgeted constraint in our model that constrains the range of the winner set. Therefore, both the theoretical analysis and applicable scope are different from the previous work.

III Traffic Monitoring System

In this section, we introduce our traffic monitoring system including network model and utility functions for the entities.

III-A Network Model

Consider a smart city, there is a traffic administration (TA) that is responsible for monitoring real-time traffic condition in this city. It can crowdsource its tasks of traffic information collection to vehicles on the road by paying them a certain amount of money. Therefore, the blockchain-based real-time traffic monitoring (BRTM) system consists of two important entities: TA and vehicle, which is shown in Fig. 1. In the BRTM system, the functionality of the entities in a smart city SaS_{a}, a+a\in\mathbb{Z}^{+}, can be shown as follows:

Refer to caption
Figure 1: An instance of BRTM system built on the United States, where the orange lines are active vehicles’ requests to undertake the tasks and the black line are TA’s acceptances for corresponding requests.

Traffic administration (TA): The TA in the city SaS_{a} can be denoted by TAaTA_{a}, which collects the real-time traffic information from those vehicles running in this city. For instance, during peak time, traffic accidents often occur on some heavily trafficked roads. At this time, the TAaTA_{a} needs to analyze road conditions instantly according to the responses provided by those vehicles that run on the designated location. If TAaTA_{a} adopts the information provided by some vehicles, it must pay them with data coins. Here, data coin is a kind of digital currency considered as the payment for traffic information.

Vehicles: The vehicles in this system are installed with camera sensors, wireless communication devices, and microcomputer systems, which are able to collect, process, and transmit data to other corresponding devices. The active vehicles in the city SaS_{a} can be denoted by a set Va={va1,va2,,vab,}V_{a}=\{v_{a1},v_{a2},\cdots,v_{ab},\cdots\}, where active vehicles are those participating in information trading with TAaTA_{a} and idle vehicles do not want to share their traffic information. Once a transaction between TAaTA_{a} and vabv_{ab} has been completed and validated, the vehicle vabv_{ab} will receive a certain number of data coins from TAaTA_{a}.

Based on that, a smart city in our BRTM system can be denoted by Sa=(TAa,Va)S_{a}=(TA_{a},V_{a}), and the whole BRTM system 𝕊\mathbb{S} can be denoted by 𝕊={S1,S2,,Sa,}\mathbb{S}=\{S_{1},S_{2},\cdots,S_{a},\cdots\}. It is very easy to understand, for example, this system can be constructed in a country that is composed of a number of smart cities. Here, all TAs that serve under the cities in 𝕊\mathbb{S} are interconnected with each other to make up a peer-to-peer (P2P) wide-area network. We take Fig. 1 as an instance to demonstrate it.

Example 1.

Shown as the upper part in Fig. 1, there is a TA in the Dallas city that announces a number of traffic information collection tasks across the important intersections of the whole city. Some vehicles in this city request to undertake part of tasks at a certain price. For a vehicle, whether its request can be accepted is decided by the TA according to the TA’s evaluation. Then, a BRTM system is built on the United States, shown as the lower part in Fig. 1. The four main cities, Los Angeles, Chicago, New York, and Dallas are interconnected with each other to form a large network.

The P2P network among the TAs in the BRTM system is used for constructing the blockchain network. Here, blockchain is an effective technique to record the transactions and guarantee the security. In our blockchain network, there are two types of nodes which are full node and lightweight node. For the full nodes, they not only executes the consensus process to validate the candidate block but also manages stores the blockchain that contains the whole transactions between TA and vehicles. For the lightweight nodes, they merely store the block headers that is convenient for them to check and verify. In our system 𝕊\mathbb{S}, each TAaTA_{a} of Sa𝕊S_{a}\in\mathbb{S} is defaulted as a full node and each vehicle vabVav_{ab}\in V_{a} of Sa𝕊S_{a}\in\mathbb{S} is defaulted as a lightweight node because of lacking enough storage and computational power. Details of the blockchain design will be described in Sec. IV.

III-B Definitions of Utility functions

Consider a smart city S=(TA,V)S=(TA,V) such that S𝕊S\in\mathbb{S} at some point, we neglect the subscripts and denote by V={v1,v2,,vn}V=\{v_{1},v_{2},\cdots,v_{n}\} for convenience. This traffic administration TATA releases a task set T={t1,t2,,tm}T=\{t_{1},t_{2},\cdots,t_{m}\} about traffic information for the active vehicles to undertake. For the TATA, there is an appraisement aja_{j} for each task tjTt_{j}\in T. For each vehicle viVv_{i}\in V, it can attempt to finish a subset of tasks TiTT_{i}\subseteq T based on its ability and willingness. The cost of TiT_{i} for the viv_{i} can be defined as cic_{i}, which is private and not known to the TATA. Then, the vehicle viv_{i} determines a bid bib_{i} and respones the TATA with its bid-task pair (Ti,bi)(T_{i},b_{i}), where bib_{i} is viv_{i}’s reserve price that is the lowest price it want to undertake the tasks TiT_{i}. Generally, we have TiTjT_{i}\cap T_{j}\neq\emptyset for any vehicle viv_{i} and vjv_{j}. Here, for each task tiTt_{i}\in T, we can quantify it as the traffic information at some position in this city, thereby an active vehicle is able to submit a subset of tasks based on its running path. After receiving the responses from all active vehicles, the TATA needs to select a winner (acceptance) set WVW\subseteq V and give a payment pip_{i} for each viWv_{i}\in W. The utility for a vehicle viVv_{i}\in V is

Ui={][c]lspici,ifv_i∈W0,ifv_i∉WU_{i}=\left\{\begin{IEEEeqnarraybox}[]{[}][c]{l^{\prime}s}p_{i}-c_{i},&if$v_i\in W$\\ 0,&if$v_i\notin W$\end{IEEEeqnarraybox}\right. (1)

The profit of the TATA is

P(W)=A(W)viWpiP(W)=A(W)-\sum\nolimits_{v_{i}\in W}p_{i} (2)

where we denote by A(W)=tjviWTiajA(W)=\sum_{t_{j}\in\cup_{v_{i}\in W}T_{i}}a_{j}. Besides, in order to control cost, the TATA has a total budget BB such that viWbiB\sum_{v_{i}\in W}b_{i}\leq B. Based on that, we want to design an incentive mechanism to execute this auction process.

Refer to caption
Figure 2: The traffic information trading framework between TA and vehicles.

IV Lightweight Blockchain Design

In a smart city, the TA publishs a task set first, then those active vehicles in this city request to undertake part of tasks. If a vehicle’s request is accepted by the TA, it will get a certain number of rewards. With the help of the blockchain technology, the TA can trade the traffic information with the active vehicles in a decentralized, secure, and verifiable manner. In the meantime, a budgeted auction mechanism is written in the smart contract. When a new round of trading begins, the smart contract in our BRTM system will be deployed and executed automatically in order to find the optimal profit for the TATA according to the vehicles’ requests.

IV-A System Initialization

Consider a smart city S=(TA,V)S=(TA,V), each vehicle viVv_{i}\in V has to register with the certificate authority (CA) through correlating its license plate so as to acquire a unique identification IDiID_{i}. Then, each legitimate vehicle will be assigned with a private/public key pair (SKi,PKi)(SK_{i},PK_{i}), where the private key is reserved by itself and the public key is known by all the legitimate nodes in the blockchain as a pseudonym. The asymmetric encryption are adopted widely in the current blockchain technology for the sake of data integrity. The data encrypted by the private (resp. public) key can be decrypted by the public (resp. private) key. After registering, the vehicle viv_{i} will obtain a certificate CeriCer_{i} signed by CA’s private key that can certify the authenticity of its identity. There is an account Ai={IDi,Ceri,(SKi,PKi),Bi}A_{i}=\{ID_{i},Cer_{i},(SK_{i},PK_{i}),B_{i}\} associated with the viVv_{i}\in V where BiB_{i} is its data coin balance. Similarly, the TATA has an account denoted by A={ID,Cer,(SK,PK),B,Rep}A_{*}=\{ID^{\prime},Cer^{\prime},(SK^{\prime},PK^{\prime}),B^{\prime},Rep^{\prime}\} as well, where RepRep^{\prime} is its reputation value which will be introduce later. If a round of trading is finished successfully, data coins will be transferred from BB_{*} to BiB_{i}.

IV-B Information Trading Framework

The elaborate process of traffic information trading in our BRTM system are drawn in Fig. 2, whose specific operation steps are summarized as follows:

1) The TATA publishs its task set TT across the active vehicles in this city. The published message can be denoted by PubMsg={SK(T),Cer,STime}PubMsg=\{SK^{\prime}(T),Cer^{\prime},STime\}, where is the task set is encrypted by the TATA’s private key for security and STimeSTime is the time stamp of this message generation.

2) After receiving the PubMsgPubMsg from the TATA, each active vehicle viVv_{i}\in V in this city has to verify the TATA’s certification CerCer^{\prime} by the CA’s public key and then read the task set by the TATA’s public key. Once verified, each viv_{i} will determine its task-bid pair (Ti,bi)(T_{i},b_{i}) and send its request message ReqMsgReqMsg, denoted by ReqMsg={PK(Ti,bi),Ceri,STime}ReqMsg=\{PK^{\prime}(T_{i},b_{i}),Cer_{i},STime\}, back to the TATA. Here, its task-bid pair is encrypted by the TATA’s public key because it can only be read by the TATA for privacy.

3) The TATA waits to collect all the ReqMsgReqMsg from the active vehicles in this city, then determine the winner set WW and its corresponding payment pip_{i} for viWv_{i}\in W. This process is executed by the built-in smart contract, which adopts a budgeted auction mechanism explained in Sec. V.

4) The TATA sends the order message to each accepted vehicle viWv_{i}\in W, which can be denoted by OrdMsg={PKi(pi),Cer,STime}OrdMsg=\{PK_{i}(p_{i}),Cer^{\prime},STime\}. Here, the payment is encrypted by the viv_{i}’s public key which can be read by the viv_{i} merely.

5) If receiving the OrdMsgOrdMsg from the TA, it means that the viv_{i} has been selected as an information provider. Then, the viv_{i} can read it by its private key and send the response message that includes the traffic information associated with task TiT_{i}, denoted by ResMsg={PK(data),Ceri,STime}ResMsg=\{PK^{\prime}(data),Cer_{i},STime\}, back to the TATA. The data is encrypted by the TATA’s public key due to the same reason as (2).

6) After the data transmission, the TATA will check and confirm whether the traffic information about task TiT_{i} from the viv_{i} meets its requirement. If yes, the TATA pays the data coins pip_{i} to the viv_{i}’s public wallet address.

7) Once receiving the payment from the TATA, the viv_{i} will sends the confirm message, denoted by ConMsg={PK(Confirm),Ceri,STime}ConMsg=\{PK^{\prime}(Confirm),Cer_{i},STime\}, back to the TATA. The TATA will sign it with a confirm message as well, then a transaction record is formulated until now.

8) The built-in smart contract in the TATA will record a series of transactions between TATA and vehicles in this city within a period of time, and package them into a new block. Before this block is added into the blockchain, it has to be reached a consensus among all the TAs in the BRTM system. The consensus process we adopt here is called as reputation-based delegated proof-of-work (DPoS) mechanism explained in Sec. IV.C. After finishing the consensus process, this block will be appended into the blockchain in a linear and chronological order permanently.

IV-C Reputation-based DPoS Mechanism

A consensus process is essential to guarantee the consistency and security for the blockchain system. The classic PoW consensus mechanism is not suitable to our system because of lacking the necessary computational power in the vehicular networks. Therefore, we design a novel reputation-based DPoS mechanism that not only ensures reliability but also improves performance. Just as said before, all the TAs in the BRTM system 𝕊\mathbb{S} are considered as the full nodes, thereby the consensus process can be carried out among them. The operational steps are displayed as follows:

1) Witness election: Denote by the full node set ={TA1,TA2,,TAa,}\mathbb{Z}=\{TA_{1},TA_{2},\cdots,TA_{a},\cdots\}, there is a reputation value RepaRep_{a} associated with each full node TAaTA_{a}\in\mathbb{Z}. This reputation RepaRep_{a} can be considered as its stake that determines its voting weight directly. It implies that the nodes with higher reputation values can determine the results more than those with lower reputation values. At each witness election epoch, the voting result RaR_{a} for each TAaTA_{a}\in\mathbb{Z} is defined as

Ra=TAa\{TAa}Repa𝕀(a,a)R_{a}=\sum\nolimits_{TA_{a^{\prime}}\in\mathbb{Z}\backslash\{TA_{a}\}}Rep_{a^{\prime}}\cdot\mathbb{I}(a,a^{\prime}) (3)

where the 𝕀(a,a)\mathbb{I}(a,a^{\prime}) is an indicator. Here, 𝕀(a,a)=1\mathbb{I}(a,a^{\prime})=1 if the TAaTA_{a^{\prime}} votes to support TAaTA_{a}, otherwise 𝕀(a,a)=0\mathbb{I}(a,a^{\prime})=0. All these reputation values and voting results are stored in the blockchain, thereby each node can check them by itself. We select a witness committee 𝕄\mathbb{M}\subseteq\mathbb{Z} that have the top |𝕄||\mathbb{M}| highest voting results. Then, it can be divided into two part such that 𝕄=𝔻𝔼\mathbb{M}=\mathbb{D}\cup\mathbb{E} and 𝔻𝔼=\mathbb{D}\cap\mathbb{E}=\emptyset, where the full node in 𝔻\mathbb{D} is an active witness and in 𝔼\mathbb{E} is a standby witness. The active witnesses have the top |𝔻||\mathbb{D}| highest voting results, which are able to generate a new block like a leader. However, the standby witnesses can only verify and broadcast the block generated by an active witness.

2) Block generation: First, the active witnesses in the set 𝔻\mathbb{D} are sorted in a random sequence. Then, each TAa𝔻TA_{a}\in\mathbb{D} takes turn to be a leader round by round based on this sorting that is responsible for generating a new block. The leader has to verify and check all the transactions occurred recently and package those valid transactions into a new block. If a node in its turn does not produce a block over a given period of time successfully, it will be skipped and have no chance to be leader again in this election epoch. After passing |𝔻||\mathbb{D}| consensus rounds, namely an election epoch, we re-execute the witness election to elect a new witness committee 𝕄\mathbb{M} according to the new reputation values of the full nodes in \mathbb{Z}.

3) Consensus process: After producing a new block, the leader should broadcast it to all witnesses in 𝕄\mathbb{M}. All witnesses should verify the leader’s identity and check this block, then broadcast their verification results signed by their private key. Next, each witness TAa𝕄TA_{a}\in\mathbb{M} compares its verified outcome with those from other witnesses. If confirmed, it will send a confirmation message to the leader, which means that this witness agrees to accept the new block. For the leader, it will append the new block into the blockchain if the proportion of witnesses that agree to accept this block is more than two thirds. All the full nodes should synchronize their local blockchain storage according to the longest chain principle and all the lightweight node should update their blockchain headers based on the newest one.

4) Reputation update: When a consensus round is finished or interrupted, we need to update the reputation values of the full nodes in \mathbb{Z} according to their behaviors during this consensus round. Generally, the positive behaviors contribute to the accumulation of reputation, but the negative behaviors had a bad effect. We denote by Repa(i)Rep_{a}(i) the repuation value of the full node TAaTA_{a}\in\mathbb{Z} at the ii-th consensus round. At the ii-th consensus round, we define

Δa(i)=Aαa(i)+Bβa(i)+Cγa(i)\Delta_{a}(i)=A\cdot\alpha_{a}(i)+B\cdot\beta_{a}(i)+C\cdot\gamma_{a}(i) (4)

for each full node TAaTA_{a}\in\mathbb{Z}. Here, if the TAaTA_{a}\in\mathbb{Z} participates the voting in witness election, we give αa(i)=1\alpha_{a}(i)=1, otherwise αa(i)=1\alpha_{a}(i)=-1. When the TAaTA_{a} is the leader at this consensus round, we give βa(i)=1\beta_{a}(i)=1 if it generates a new block that is accepted by other witnesses eventually, otherwise βa(i)=1\beta_{a}(i)=-1. If the TAa\{leader}TA_{a}\in\mathbb{Z}\backslash\{\text{leader}\} is not the leader, we give βa(i)=0\beta_{a}(i)=0. When the TAa𝕄\{leader}TA_{a}\in\mathbb{M}\backslash\{\text{leader}\} is a member of witness committee but not the leader, we give γa(i)=1\gamma_{a}(i)=1 if it verifies the block produced by the leader correctly, otherwise γa(i)=1\gamma_{a}(i)=-1. If the TAa\𝕄TA_{a}\in\mathbb{Z}\backslash\mathbb{M} is not a witness, we give γa(i)=0\gamma_{a}(i)=0. Then, the AA, BB, and CC are three adjustable parameters that represent the rewards or punishments of voting, leader, and verification behaviors. Based on its behaviors Δa(i)\Delta_{a}(i) at the ii-th consensus round, we define the reputation value of the full node TAaTA_{a}\in\mathbb{Z} as

Repa(i)={][c]lsmax{1,Repa(i1)+Δa(i)},ifΔ_a(i)≥0min{0,Repa(i1)+Δa(i)},ifΔ_a(i)¡ 0Rep_{a}(i)=\left\{\begin{IEEEeqnarraybox}[]{[}][c]{l^{\prime}s}\max\{1,Rep_{a}(i-1)+\Delta_{a}(i)\},&if$\Delta_a(i)\geq 0$\\ \min\{0,Rep_{a}(i-1)+\Delta_{a}(i)\},&if$\Delta_a(i)< 0$\end{IEEEeqnarraybox}\right.

where the TAaTA_{a}’s voting is meaningless when its reputation down to zero according to the (3). Moveover, we initialize the reputation Repa(0)=0.5Rep_{a}(0)=0.5 for each TAaTA_{a}\in\mathbb{Z} and make B>C>A>0B>C>A>0 because of their importance.

IV-D Performance and Reliability

Our BRTM system inherits the advantages of blockchain technology which helps to ensure the reliability of traffic information trading and privacy protection. Its main characteristics are summarized as follows: (1) Decentralization: the traffic information trading can be performed in a distributed manner without relying on the third trusted intermediaries, which avoids single point failure; (2) Reliability: when there is a node failing because of malicious attacks, the blockchain network can be guaranteed to work as usual; (3) Privacy protection: shown as Sec. IV.B, asymmetric encryption is used to prevent the message from reading by others, which makes the private message remain confidential during the auction process; (4) Efficiency: our reputation-based DPos mechanism not only makes the consensus process more reliable but also improves efficiency by screening out the trustworthy nodes in advance; (5) Transaction authentication: all transaction must be checked and verified by the witness before appending into the blockchain, thereby it is extremely hard to dominate the majority of witnesses to create an unreal block. Based on that, our BRTM system provides us with a secure, reliable, and efficient traffic information trading platform.

V Budgeted Auction Incentive mechanism

In this section, we consider how to model the trading process between TATA and viVv_{i}\in V in a smart city S=(TA,V)S=(TA,V). Auction mechanism is an execellent theoretical tool for this scenario. Here, the sellers are V={v1,v2,,vn}V=\{v_{1},v_{2},\cdots,v_{n}\} and the buyer is TATA. Each seller viv_{i} submits a task-bid pair (Ti,bi)(T_{i},b_{i}), and then the buyer determine whether to accept its request. If accept it, the buyer need to offer a payment. We call such an auction as “reverse auction”. Thus, the single round auction mechanism can be formulated as Problem 1.

Problem 1.

The active vehicles in SS given a task-bid pair vector ((T1,b1),(T2,b2),,(Tn,bn))((T_{1},b_{1}),(T_{2},b_{2}),\cdots,(T_{n},b_{n})), the TATA need to compute an allocation WW and payments {pi}viW\{p_{i}\}_{v_{i}\in W} such that

maxWVP(W) s.t. viWbiB\max_{W\subseteq V}P(W)\text{ s.t. }\sum\nolimits_{v_{i}\in W}b_{i}\leq B (5)

where it satisfies individual rationality, profitability, truthfulness, and computational efficiency.

The auction we use in this section is a single sealed-bid auction, thereby the task-bid pair given by each seller is private and not known to other sellers in order to avoid collaborating or forming an alliance. Once submitted, any seller can not change its task or bid during the auction. This is why we use asymmetric encryption in Sec. IV.B.

Definition 1 (Individual rationality).

A reverse auction is individual rational if there is no winning sellers getting less than its cost.

For each vehicle vjVv_{j}\in V, it must have an non-negative utility that is picip_{i}\geq c_{i} if viWv_{i}\in W.

Definition 2 (Profitability).

The profit of an reverse auction is the difference between the value generated by winner set and the payment to the sellers, which is nonnegative.

For the TATA in SS, it has an allocation WW such that tjviWTiajviWpi\sum\nolimits_{t_{j}\in\cup_{v_{i}\in W}T_{i}}a_{j}\geq\sum\nolimits_{v_{i}\in W}p_{i}.

Definition 3 (Truthfulness).

A reverse auction is truthful if every seller’s bid, which is the same as its truthful cost, is the dominant strategy that maximizes its utility.

For each vehicle viVv_{i}\in V, it means that the viv_{i} cannot increase its utility by giving a bid bib_{i} that is different from its truthful cost cic_{i} no matter what others’ bids are. Truthfulness is a very important property for an auction mechanism to avoid malicious price manipulation as well as ensure a fair and benign market competition environment. In our case, if a vehicle can obtain a better utility when offering an untruthful bid, then those malicious vehicles are able to cheat in the auction that benefit themselves but hurt the interests of others. By making all active vehicles bidding truthfully, the TATA can allocate its tasks to the most suitable vehicles. Therefore, truthfulness plays a very significant role in our auction design.

Definition 4 (Computational efficiency).

A reverse auction is efficient if it can be done in ploynomial time.

V-A Submodular Maximization

Assume the TATA gives a payment pip_{i} with pi=bip_{i}=b_{i} for each vehicle viVv_{i}\in V, the Problem 1 can be reduced to an optimization problem, called “budgeted vehicle allocation problem”, that selects a winner set WVW\subseteq V such that P¯(W)\bar{P}(W) is maximized. We denote

P¯(W)=A(W)viWbi\bar{P}(W)=A(W)-\sum\nolimits_{v_{i}\in W}b_{i} (6)

where viWbiB\sum_{v_{i}\in W}b_{i}\leq B. To be meaningful, we assume P¯()=0\bar{P}(\emptyset)=0 and it exists at least one vehicle vkVv_{k}\in V such that P¯({vk})>0\bar{P}(\{v_{k}\})>0 with bkBb_{k}\leq B. However, the budgeted vehicle allocation problem can be reduced to the classic set cover problem in polynomial time, thereby it is NP-hard to find the optimal solution definitely. Based on that, we have to seek help from designing an approximation algorithm which will make use of submodularity of objective shown in (6).

Definition 5 (Submodular function [26]).

Given a set function f:2Vf:2^{V}\rightarrow\mathbb{R}, it is submodular if

f(X{u})f(X)f(Y{u})f(Y)f(X\cup\{u\})-f(X)\leq f(Y\cup\{u\})-f(Y) (7)

for any XYVX\subseteq Y\subseteq V and uV\Yu\in V\backslash Y.

Lemma 1.

The objective function of budgeted vehicle allocation problem P¯\bar{P} is submodular.

Proof.

According to the (6), to show P¯(X{vi})P¯(X)P¯(Y{vi})P¯(Y)\bar{P}(X\cup\{v_{i}\})-\bar{P}(X)\leq\bar{P}(Y\cup\{v_{i}\})-\bar{P}(Y) is equivalent to show A(X{vi})A(X)A(Y{vi})A(Y)A(X\cup\{v_{i}\})-A(X)\leq A(Y\cup\{v_{i}\})-A(Y) for any XYVX\subseteq Y\subseteq V and viV\Yv_{i}\in V\backslash Y. We have A(X{vi})A(X)=A(X\cup\{v_{i}\})-A(X)=

=tiTi\vjXTjaitiTi\vjYTjai\displaystyle=\sum\nolimits_{t_{i}\in T_{i}\backslash\cup_{v_{j}\in X}T_{j}}a_{i}\geq\sum\nolimits_{t_{i}\in T_{i}\backslash\cup_{v_{j}\in Y}T_{j}}a_{i} (8)
=A(Y{vi})A(Y)\displaystyle=A(Y\cup\{v_{i}\})-A(Y) (9)

Therefore, P¯\bar{P} is submodular. ∎

As we known, Buchbinder et al. [27] designed a double greedy algorithm for the unconstrained submodular maximization problem with a (1/3)(1/3)-approximation under the deterministic setting and a (1/2)(1/2)-approximation under the randomized setting. Back to our budgeted vehicle allocation problem, there is a constraint viWbiB\sum_{v_{i}\in W}b_{i}\leq B that is a knapsack constraint. This constraint affects the resulting profit obtained by the TATA and the number of vehicles that are selected as winners in the auction. Thus, a valid reverse auction mechanism design are required to ensure the truthfulness carefully. Based on the aforementioned analysis, this optimization problem can be catagorized to a non-monotone submodular maximization with knapsack constraint. Lee et al. [28] proposed a (1/5ϵ)(1/5-\epsilon)-approximation algorithm to maximize any non-negative submodular function with knapsack constraint by means of fractional relaxation and local search method. Even though this algorithm can give us a constant approximation ratio, its process is complex and its performance is worse than the greedy-heuristic algorithm actually. The greedy-heuristic algorithm is shown in Algorithm 1.

Here, we denote by P¯(vi|W)=P¯(W{vi})P¯(W)\bar{P}(v_{i}|W)=\bar{P}(W\cup\{v_{i}\})-\bar{P}(W) and bb^{*} is the bid offered by vehicle vv^{*}. Shown as Algorithm 1, we select a vehicle vv^{*} from the current constrained set FF with maximum unit marginal gain until P¯(v|W)<0\bar{P}(v^{*}|W)<0 or F=F=\emptyset. Despite the winner set returned by Algorithm 1 has no any theoretical bounds because of non-monotonicity and knapsack constraint, it is intuitive and has a good performance in the practical applications. Now, we have to explore whether the greedy-heuristic satisfies the aforementioned four properties in the reverse auction mechanism.

Algorithm 1 greedy-heuristic
0:  Function P¯\bar{P}, bids {bi}viV\{b_{i}\}_{v_{i}\in V}, and budget BB
0:  Winner set WW
1:  Initialize: WW\leftarrow\emptyset, s0s\leftarrow 0
2:  Initialize: F{vi:viV\W and biB}F\leftarrow\{v_{i}:v_{i}\in V\backslash W\text{ and }b_{i}\leq B\}
3:  while FF\neq\emptyset do
4:     Select vv^{*} such that vargmaxviF{P¯(vi|W)/bi}v^{*}\in\arg\max_{v_{i}\in F}\{\bar{P}(v_{i}|W)/b_{i}\}
5:     if P¯(v|W)<0\bar{P}(v^{*}|W)<0 then
6:        Break
7:     end if
8:     WW{v}W\leftarrow W\cup\{v^{*}\}
9:     ss+bs\leftarrow s+b^{*}
10:     F{vi:viV\W and biBs}F\leftarrow\{v_{i}:v_{i}\in V\backslash W\text{ and }b_{i}\leq B-s\}
11:  end while
12:  return  WW

Next, let us look at whether the greedy-heuristic satisfies profitability, individual rationality, truthfulness, and computational efficiency one by one as follows:

1) Individual rationality: The TATA pay each vehicle in the winner set its bid, thus it is individually rational.

2) Profitability: Form line 5 in Algorithm 1, the while loop is terminated when there is no vehicle having postive marginal gain, which guarantee P¯(W)>0\bar{P}(W)>0.

3) Truthfulness: Let us consider an example. There are five tasks issued by the TATA, denoted by T={t1,t2,t3,t4,t5}T=\{t_{1},t_{2},t_{3},t_{4},t_{5}\}, with appraisement {a1=2,a2=3,a3=4,a4=2,a5=5}\{a_{1}=2,a_{2}=3,a_{3}=4,a_{4}=2,a_{5}=5\} and the budget B=5B=5. There are three active vehicles denoted by V={v1,v2,v3}V=\{v_{1},v_{2},v_{3}\} in this city. They want to undertake the TATA’s tasks as T1={t1,t3,t5}T_{1}=\{t_{1},t_{3},t_{5}\}, T2={t1,t2,t5}T_{2}=\{t_{1},t_{2},t_{5}\}, T3={t3,t4,t5}T_{3}=\{t_{3},t_{4},t_{5}\}, c1=2c_{1}=2, c2=2c_{2}=2, and c3=2c_{3}=2. When each vehicle offers a bid truthfully, we have P¯({v1}|)/b1=(A({v1})b1)/b1=(112)/2=4.5\bar{P}(\{v_{1}\}|\emptyset)/b_{1}=(A(\{v_{1}\})-b_{1})/b_{1}=(11-2)/2=4.5. Similarly, we have P¯({v2}|)/b2=4\bar{P}(\{v_{2}\}|\emptyset)/b_{2}=4 and P¯({v3}|)/b3=3.5\bar{P}(\{v_{3}\}|\emptyset)/b_{3}=3.5. Thus, vehicle v1v_{1} is selected at the first iteration. At the second iteration, we have P¯(v2|{v1})/b2=0.5\bar{P}(v_{2}|\{v_{1}\})/b_{2}=0.5 and P¯(v3|{v1})/b3=0\bar{P}(v_{3}|\{v_{1}\})/b_{3}=0. Thus, vehicle v2v_{2} is selected at the second iteration. Then, the greedy-heuristic terminates because the budget is exhausted. However, when vehicle v2v_{2} offer an untruthful bid b2=c2+λb_{2}=c_{2}+\lambda, we have P¯(v2|{v1})/b2=3/(2+λ)1\bar{P}(v_{2}|\{v_{1}\})/b_{2}=3/(2+\lambda)-1. If λ(0,1)\lambda\in(0,1), it will be selected as the winner at the second iteration. The algorithm terminates here and vehicle v2v_{2} can get more payment by offering an untruthful bid, thus is does not satisfy truthfulness.

4) Computational efficiency: The running time of the greedy-heuristic is O(Bnm/minviV{bi})O(Bnm/\min_{v_{i}\in V}\{b_{i}\}) because it takes O(nm)O(nm), |T|=m|T|=m and |V|=n|V|=n, to compute P¯\bar{P} and iterates at most B/minviV{bi}B/\min_{v_{i}\in V}\{b_{i}\} times, so computationally efficient.

Algorithm 2 TBSAP Algorithm
0:  Function P¯\bar{P}, bids {bi}viV\{b_{i}\}_{v_{i}\in V}, and budget BB
0:  Winner set WW
1:  // Winner allocation stage
2:  Initialize: XX\leftarrow\emptyset, s0s\leftarrow 0
3:  while XVX\neq V do
4:     Select vv^{*} such that vargmaxvV\X{P^(v|X)}v^{*}\in\arg\max_{v\in V\backslash X}\{\hat{P}(v|X)\}
5:     if P^(v|X)<0\hat{P}(v^{*}|X)<0 or s+b>Bs+b^{*}>B then
6:        Break
7:     end if
8:     XX{v}X\leftarrow X\cup\{v^{*}\}
9:     ss+bs\leftarrow s+b^{*}
10:  end while
11:  // Payment determination stage
12:  for each viXv_{i}\in X do
13:     Initialize: Y0Y_{0}\leftarrow\emptyset, s0s\leftarrow 0, j0j\leftarrow 0
14:     Initialize: pip_{i}\leftarrow-\infty
15:     while YjViY_{j}\neq V_{-i} do
16:        vij+1argmaxvVi\Yj{P^(v|Yj)}v_{i_{j+1}}\leftarrow\arg\max_{v\in V_{-i}\backslash Y_{j}}\{\hat{P}(v|Y_{j})\}
17:        if P^(vij+1|Yj)<0\hat{P}(v_{i_{j+1}}|Y_{j})<0 or s+bi>Bs+b_{i}>B then
18:           Break
19:        end if
20:        Yj+1Yj{vij+1}Y_{j+1}\leftarrow Y_{j}\cup\{v_{i_{j+1}}\}
21:        ss+bij+1s\leftarrow s+b_{i_{j+1}}
22:        pimax{pi,bij+1A(vi|Yj)A(vij+1|Yj)}p_{i}\leftarrow\max\left\{p_{i},b_{i_{j+1}}\cdot\frac{A(v_{i}|Y_{j})}{A(v_{i_{j+1}}|Y_{j})}\right\}
23:        jj+1j\leftarrow j+1
24:     end while
25:     if s+biBs+b_{i}\leq B then
26:        pimax{pi,A(vi|Yj)}p_{i}\leftarrow\max\{p_{i},A(v_{i}|Y_{j})\}
27:     end if
28:  end for
29:  return  XX and {pi}viX\{p_{i}\}_{v_{i}\in X}

V-B Truthful Auction Mechanism Design

As mentioned above, the greedy-heuristic algorithm is not meaningful due to lacking truthfulness even though it simple to implement. Thus, we have to design a budgeted reverse auction mechanism that not only gets a good profit by encouraging vehicles to undertake the tasks, but also satisfies the four properties shown as before, especially for truthfulness, in order to protect from manipulating this system malignantly by offering a unreal bid. Therefore, a valid auction mechanism needs to be designed although it may lose some of its profits. We propose a truthful budgeted reverse auction mechanism based on Myerson’s introduction [29].

Theorem 1 ([29]).

An reverse auction mechanism is truthfully if and only if it satisfies as follows: (1) Monotonicity: If a vehicle (seller) viVv_{i}\in V wins by its task-bid pair (Ti,bi)(T_{i},b_{i}), then it will win by any bid that is smaller than bib_{i} with the same task set TiT_{i} as well. Namely, the (Ti,bi)(T_{i},b^{\circ}_{i}) will win by any bid bi<bib^{\circ}_{i}<b_{i} when other sellers do not change their strategies; (2) Critical payment: The payment pip_{i} of a winner viv_{i} with its task-bid pair (Ti,bi)(T_{i},b_{i}) is the maximum bid with which the viv_{i} can win. Namely, the (Ti,bi)(T_{i},b^{\circ}_{i}) will not win by any bid bi>pib^{\circ}_{i}>p_{i} when other sellers do not change their strategies.

Based on the Theorem 1, we design our budgeted reverse auction mechanism consisted of the winner allocation stage and payment determination stage. From the bids {bi}viV\{b_{i}\}_{v_{i}\in V}, we denote by the unit marginal gain P^\hat{P}

P^(vi|X)=P¯(vi|X)/bi=[P¯(X{vi})P¯(X)]/bi\hat{P}(v_{i}|X)={\bar{P}(v_{i}|X)}/{b_{i}}=[{\bar{P}(X\cup\{v_{i}\})-\bar{P}(X)}]/{b_{i}} (10)

The winner allocation stage selects vehicles from VV in a greedy approach. All active vehicles in VV are sorted in a non-increasing sequence as

P^(v1|X0)P^(vi|Xi1)P^(vn|Xn1)\hat{P}(v_{1}|X_{0})\geq\cdots\geq\hat{P}(v_{i}|X_{i-1})\geq\cdots\geq\hat{P}(v_{n}|X_{n-1}) (11)

where the ii-th vehicle has the maximum unit marginal gain P^(vi|Xi1)\hat{P}(v_{i}|X_{i-1}) over V\Xi1V\backslash X_{i-1}, Xi1={v1,v2,,vi1}X_{i-1}=\{v_{1},v_{2},\cdots,v_{i-1}\}, and X0=X_{0}=\emptyset. From this sorting, we select the maximum LL with LnL\leq n such that P^(vL|XL1)0\hat{P}(v_{L}|X_{L-1})\geq 0 and viXLbiB\sum_{v_{i}\in X_{L}}b_{i}\leq B where XL={v1,v2,,vL}X_{L}=\{v_{1},v_{2},\cdots,v_{L}\}.

According to the winner set XLX_{L}, we have to determine the payment price pip_{i} for each vehicle viXLv_{i}\in X_{L}. The reverse auction mechanism runs the winner allocation process repreatedly. Consider the vehicle viVv_{i}\in V, all active vehicles in Vi=V\{vi}V_{-i}=V\backslash\{v_{i}\} are sorted in a non-increasing order as follows:

P^(vi1|Y0)P^(vi2|Y1)P^(vin1|Yn2)\hat{P}(v_{i_{1}}|Y_{0})\geq\hat{P}(v_{i_{2}}|Y_{1})\geq\cdots\geq\hat{P}(v_{i_{n-1}}|Y_{n-2}) (12)

where the iji_{j}-th vehicle has the maximum unit marginal gain P^(vij|Yj1)\hat{P}(v_{i_{j}}|Y_{j-1}) over V\Yj1V\backslash Y_{j-1}, Yj1={vi1,vi2,,vij1}Y_{j-1}=\{v_{i_{1}},v_{i_{2}},\cdots,v_{i_{j-1}}\}, and Y0=Y_{0}=\emptyset. From this sorting, we select the maximum LiL_{i} with Lin1L_{i}\leq n-1 such that P^(viLi|YLi1)0\hat{P}(v_{i_{L_{i}}}|Y_{L_{i}-1})\geq 0 and vijYLi1bij+biB\sum_{v_{i_{j}}\in Y_{L_{i}-1}}b_{i_{j}}+b_{i}\leq B where YLi1={vi1,vi2,,viLi1}Y_{L_{i}-1}=\{v_{i_{1}},v_{i_{2}},\cdots,v_{i_{L_{i}-1}}\}. In short, there is a list YLi={vj1,vj2,,viLi}Y_{L_{i}}=\{v_{j_{1}},v_{j_{2}},\cdots,v_{i_{L_{i}}}\} associated with the vehicle viv_{i}. For each position ij+1i_{j+1} in this list YLiY_{L_{i}}, we can get the maximum bid bi(j+1)b_{i(j+1)}^{\prime} that the vehicle viv_{i} should offer in order to replace vij+1v_{i_{j+1}} with viv_{i} at the position iji_{j}. To achieve it, we have P^(vi|Yj)P^(vij+1|Yj)\hat{P}(v_{i}|Y_{j})\geq\hat{P}(v_{i_{j+1}}|Y_{j}), which is equivalent to [A(vi|Yj)bi]/bi[A(vij+1|Yj)bij+1]/bij+1[A(v_{i}|Y_{j})-b_{i}]/b_{i}\geq[A(v_{i_{j+1}}|Y_{j})-b_{i_{j+1}}]/b_{i_{j+1}}. Thus, we have the following inequality:

bi(j+1)=bij+1A(vi|Yj)/A(vij+1|Yj)b_{i(j+1)}^{\prime}=b_{i_{j+1}}\cdot{A(v_{i}|Y_{j})}/{A(v_{i_{j+1}}|Y_{j})} (13)

From here, we can achieve a list bi={bi(1),bi(2),,bi(Li)}b^{\prime}_{i}=\{b^{\prime}_{i(1)},b^{\prime}_{i(2)},\cdots,b^{\prime}_{i(L_{i})}\} where each bi(j)b^{\prime}_{i(j)} is the maximum bid to replace the vehicle vijv_{i_{j}} with viv_{i} in the list YLiY_{L_{i}}. The vehicle viv_{i} can replace any one in YLiY_{L_{i}} without exceeding the budget BB. Consider the viLi+1v_{i_{L_{i}+1}}, it can be divided into the following three cases: (1) vijYLibij+bi>B\sum_{v_{i_{j}}\in Y_{L_{i}}}b_{i_{j}}+b_{i}>B; (2) P^(viLi+1|YLi)<0\hat{P}(v_{i_{L_{i}+1}}|Y_{L_{i}})<0; and (3) Li=n1L_{i}=n-1 where viLi+1v_{i_{L_{i}+1}} does not exist and can be considered as a virtual vehicle. For the case (1), the viLi+1v_{i_{L_{i}+1}} cannot be replaced by the viv_{i} because of the budget constraint, thereby we do not need to do anything. If not case (1), for the cases (2) and (3), the bid by the viv_{i} should be less than A(vi|YLi)A(v_{i}|Y_{L_{i}}) so as to replace the viLi+1v_{i_{L_{i}+1}}, thereby the maximum bid to replace the viLi+1v_{i_{L_{i}+1}} with viv_{i} is equal to A(vi|YLi)A(v_{i}|Y_{L_{i}}). Therefore, for each winner viXLv_{i}\in X_{L}, we have

pi={][c]lsmax{bi}, if vijYLibij+bi>Bmax{max{bi},A(vi|YLi)}, elsep_{i}=\left\{\begin{IEEEeqnarraybox}[]{[}][c]{l^{\prime}s}\max\{b^{\prime}_{i}\},\text{ if }\sum\nolimits_{v_{i_{j}}\in Y_{L_{i}}}b_{i_{j}}+b_{i}>B\\ \max\{\max\{b^{\prime}_{i}\},A(v_{i}|Y_{L_{i}})\},\text{ else}\end{IEEEeqnarraybox}\right. (14)

Based on the (14), a truthful budgeted selection and pricing (TBSAP) algorithm is shown in Algorithm 2.

Lemma 2.

The TBSAP is individually rational.

Proof.

Let viiv_{i_{i}} be the vehicle viv_{i}’s replacement which appears in the ii-th position in the sorting (12) over ViV_{-i}. Because the vehicle viiv_{i_{i}} cannot be in the ii-th position when the winner viv_{i} joins in this sorting. Thus, if iLii\leq L_{i}, we have P^(vi|Yi1)P^(vii|Yi1)\hat{P}(v_{i}|Y_{i-1})\geq\hat{P}(v_{i_{i}}|Y_{i-1}) which results in bibiiA(vi|Yi1)/A(vii|Yi1)pib_{i}\leq b_{i_{i}}\cdot A(v_{i}|Y_{i-1})/A(v_{i_{i}}|Y_{i-1})\leq p_{i}. If i>Lii>L_{i} or ii does not exist, we have biA(vi|Xi1)b_{i}\leq A(v_{i}|X_{i-1}) since the viv_{i} is a winner, and biA(vi|Xi1)=A(vi|Yi1)A(vi|YLi)pib_{i}\leq A(v_{i}|X_{i-1})=A(v_{i}|Y_{i-1})\leq A(v_{i}|Y_{L_{i}})\leq p_{i} because of the submodularity. ∎

Lemma 3.

The TBSAP is profitable.

Proof.

Recall that the vehicle vLv_{L} is the last one that satisfies A(vL|XL1)bLA(v_{L}|X_{L-1})\geq b_{L} in the sorting (11), we have the profit P(XL)=1iLA(vi|Xi1)1iLpiP(X_{L})=\sum_{1\leq i\leq L}A(v_{i}|X_{i-1})-\sum_{1\leq i\leq L}p_{i} according to the (2), which is sufficient to show that A(vi|Xi1)piA(v_{i}|X_{i-1})\geq p_{i} for each 1iL1\leq i\leq L. For each vehicle viXLv_{i}\in X_{L}, we consider the two sub-cases shown as follows:

Case 1: Recall that the vehicle viLiv_{i_{L_{i}}} is the last one that satisfies P^(viLi|YLi1)0\hat{P}(v_{i_{L_{i}}}|Y_{L_{i}-1})\geq 0 and vijYLi1bij+biB\sum_{v_{i_{j}}\in Y_{L_{i}-1}}b_{i_{j}}+b_{i}\leq B in the sorting (12), we have pi=max{bi}p_{i}=\max\{b^{\prime}_{i}\} if vijYLibij+bi>B\sum_{v_{i_{j}}\in Y_{L_{i}}}b_{i_{j}}+b_{i}>B. Thus, we denote by

k=argmax1jLi{bi(1),,bi(j),,bi(Li)}k=\arg\max_{1\leq j\leq L_{i}}\left\{b^{\prime}_{i(1)},\cdots,b^{\prime}_{i(j)},\cdots,b^{\prime}_{i(L_{i})}\right\} (15)

Based on that, we have

pi\displaystyle p_{i} =bikA(vi|Yk1)/A(vik|Yk1)A(vi|Yk1)\displaystyle=b_{i_{k}}\cdot{A(v_{i}|Y_{k-1})}/{A(v_{i_{k}}|Y_{k-1})}\leq A(v_{i}|Y_{k-1}) (16)
A(vi|Xi1)\displaystyle\leq A(v_{i}|X_{i-1}) (17)

where the inequality (16) is because we have A(vik|Yk1)bik{A(v_{i_{k}}|Y_{k-1})}\geq b_{i_{k}}. From the Lemma 2, we have bipib_{i}\leq p_{i}. Consider a vehicle viXLv_{i}\in X_{L} with its bid bib_{i}, it cannot be moved forward in the sorting (11) by increasing its bid. We can know that iki\leq k and Xi1Yk1X_{i-1}\subseteq Y_{k-1} due to the fact that Xj=YjX_{j}=Y_{j} when j<ij<i. Therefore, we have A(vi|Yk1)A(vi|Xi1)A(v_{i}|Y_{k-1})\leq A(v_{i}|X_{i-1}) because of its submodularity, and the inequality (17) is established.

Case 2: Otherwise, we have pi=max{max{bi},A(vi|YLi)}p_{i}=\max\{\max\{b^{\prime}_{i}\},A(v_{i}|Y_{L_{i}})\} if vijYLibij+biB\sum_{v_{i_{j}}\in Y_{L_{i}}}b_{i_{j}}+b_{i}\leq B. Thus,

piA(vi|YLi)A(vi|Xi1)p_{i}\leq A(v_{i}|Y_{L_{i}})\leq A(v_{i}|X_{i-1}) (18)

due to the similar analysis with the inequality (17). Combining the case 1 and case 2, this lemma can be proven. ∎

Lemma 4.

The TBSAP is truthful.

Proof.

According to the Theorem 1, it is sufficient to show that our budgeted reverse auction mechanism satisfies the monotonicity and critical payment. Let us look at the monotonicity first. Consider a vehicle viXLv_{i}\in X_{L} with its bid bib_{i}, it cannot be moved backward in the sorting (11) by offer a lower bid bib^{\circ}_{i} with bi<bib^{\circ}_{i}<b_{i} since A(vi|Xi1)/bi>A(vi|Xi1)/biA(v_{i}|X_{i-1})/b^{\circ}_{i}>A(v_{i}|X_{i-1})/b_{i}. Therefore, if viv_{i} is a winner by offering a bid bib_{i} in the winner allocation stage, it must be a winner by offering bib^{\circ}_{i}.

Then, we show the payment pip_{i} is the critical payment for the vehicle viv_{i} where it cannot win this auction if giving a bid larger than pip_{i} definitely. Based on the (14), when vijYLibij+bi>B\sum_{v_{i_{j}}\in Y_{L_{i}}}b_{i_{j}}+b_{i}>B, the viv_{i} must be able to replace one vehicle in YLiY_{L_{i}} if it wants to be a winner. If the viv_{i} offers a bid bib_{i}^{\circ} larger than pi=max{bi}p_{i}=\max\{b^{\prime}_{i}\}, we have

A(vi|Yj1)/bi<A(vij|Yj1)/bij for 1jLiA(v_{i}|Y_{j-1})/b_{i}^{\circ}<A(v_{i_{j}}|Y_{j-1})/b_{i_{j}}\text{ for }1\leq j\leq L_{i} (19)

The viv_{i} cannot replace any one in YLiY_{L_{i}} with bid bib_{i}^{\circ}, thereby it cannot be a winner because of the budget constraint. Based on the (14), when vijYLibij+biB\sum_{v_{i_{j}}\in Y_{L_{i}}}b_{i_{j}}+b_{i}\leq B, suppose the viv_{i} can not replace any vehicle in YLiY_{L_{i}}, it sill can be a winner if A(vi|YLi)biA(v_{i}|Y_{L_{i}})\geq b_{i} since there is residual budget. If the viv_{i} offers a bid bib_{i}^{\circ} larger than pi=max{max{bi},A(vi|YLi)}p_{i}=\max\{\max\{b^{\prime}_{i}\},A(v_{i}|Y_{L_{i}})\}, it not only fail to replace any one in YLiY_{L_{i}} according to the (19), but also have bi>A(vi|YLi)b_{i}^{\circ}>A(v_{i}|Y_{L_{i}}), thereby it cannot be a winner. ∎

Lemma 5.

The TBSAP is computationally efficient.

Proof.

We have known that there are at most B/minviV{bi}B/\min_{v_{i}\in V}\{b_{i}\} winners and it takes O(Bnm/minviV{bi})O(Bnm/\min_{v_{i}\in V}\{b_{i}\}) to finish the winner allocation stage where |T|=m|T|=m and |V|=n|V|=n. Then, for each winner viXLv_{i}\in X_{L}, a process similar to the winner allocation stage needs to be executed that takes O(Bnm/minviV{bi})O(Bnm/\min_{v_{i}\in V}\{b_{i}\}) running time as well. Thus, the running time of the payment determination state is O(B2nm/(minviV{bi})2)O(B^{2}nm/(\min_{v_{i}\in V}\{b_{i}\})^{2}) which is the total time complexity as well. The TBSAP can be done in polynomial time. ∎

Theorem 2.

The TBSAP, shown as Algorithm 2, is an effective budgeted reverse auction mechanism to solve Problem 1 that satisfies individual rationality, profitability, truthfulness, and computational efficiency.

Proof.

As indicated above, this theorem can be proved by putting from Lemma 2 to Lemma 5 together. ∎

VI Numerical Simulations

In this section, we first evaluate the performance of our reputation-based DPoS mechanism, then test the correctness and efficiency of our budgeted reverse auction algorithm. The simulation setup and results will be displayed.

VI-A Simulation Setup

To evaluate the reputation-based DPoS mechanism, we need to observe how different behaviors in a consensus round affects its reputation value. Here, we take two full nodes as an example to demonstrate it, where one is a normal node that behaves legitimately and the other is an abnormal node that sometimes makes some wrong behaviors, such as not voting in witness election, producing an invalid block as the leader, or verifying a block wrongly. Shown as the (4), we give the parameters A=0.005A=0.005, B=0.05B=0.05, and C=0.01C=0.01. Then, we compare our reputation-based DPoS with the general DPoS mechanism whose each full node in \mathbb{Z} is given by the same voting weight. In other words, we do not consider their reputation values in witness election of the general DPoS. In these two DPoS mechanism, each normal full node TAaTA_{a} votes to support TAa\{TAa}TA_{a^{\prime}}\in\mathbb{Z}\backslash\{TA_{a}\} with RepaθRep_{a^{\prime}}\geq\theta where θ=0.5\theta=0.5 is a threshold. Conversely, we consider the most extreme case where each abnormal full node TAaTA_{a} votes to support TAa\{TAa}TA_{a^{\prime}}\in\mathbb{Z}\backslash\{TA_{a}\} with Repa<θRep_{a^{\prime}}<\theta. In our BRTM system, we define the full node set with ||=100|\mathbb{Z}|=100 and the witness committee with |𝕄|=70|\mathbb{M}|=70. To simulate a real state, we give the reputation values of normal full nodes by sampling from [0.5,1][0.5,1] uniformly and abnormal full nodes by sampling from [0,0.5)[0,0.5) uniformly. To evaluate the reliability of this system, we define the ratio of abnormal full nodes (RAFN) as “[# abnormal full nodes]/||[\#\text{ abnormal full nodes}]/|\mathbb{Z}|” and the ratio of normal witnesses (RNW) as [# normal witnesses/𝕄][\#\text{ normal witnesses}/\mathbb{M}].

To simulate the budgeted reverse auction mechanism, we consider a smart city S=(TA,V)S=(TA,V) with a 1000m×1000m1000m\times 1000m square area and the task set TT issued by the TATA are distributed over this area. Then, the active vehicles VV are distributed over this area arbitrarily as well. For each vehicle viVv_{i}\in V, its ability to detect is different, thereby we assume there is a detection distance did_{i} that is distributed in [10,30][10,30] uniformly. It means that the viv_{i}’s task set TiT_{i} contains all tasks whose distances from the viv_{i} are less than did_{i}. Finally, the TA’s appraisement aja_{j} for each task tjTt_{j}\in T is distributed in (0,10](0,10] uniformly and the cost of TiT_{i} for the viv_{i} can be denoted by ci=κ|Ti|c_{i}=\kappa\cdot|T_{i}| where the parameter κ\kappa is distributed in (0,5](0,5] uniformly.

Refer to caption
Figure 3: The reputation values change with different behaviors of the two full nodes in the consensus process.
Refer to caption
Figure 4: The ratio of normal witnesses (RNW) changes with the ratio of abnormal full nodes (RAFN).

VI-B Simulation Results and analysis

The simulation results about our reputation-based DPoS mechanism are shown in Fig. 3 and Fig. 4.

1) The impact of behavior on reputation: Fig. 3 draws the reputation values change with different behaviors of the two full nodes the consensus process. Shown as Fig. 3, we can see that the repuation of the normal node is increased gradually by its legitimate behaviors, but the reputation of the abnormal node is decreased by its wrong behaviors. Here, we assume there are 1010 consensus rounds for each election epoch, namely |𝔻|=10|\mathbb{D}|=10. To the normal node, it votes to elect witnesses at the first election epoch (11-th to 1010-th round), which adds 0.0050.005 reputation per round. At the second epoch (1111-th to 2020-th round), it is selected as a witness member because of its good reputation. Thus, it votes and verifies the block correctly, which adds 0.0150.015 reputation per round. Especially, at the 1515-th consensus round, it becomes the leader that generates a block successfully, which adds 0.0550.055 reputation in this round. These legitimate behaviors increase its reputation until approaching 11. To the abnormal node, it is selected as a witness member at the third epoch (2121-th to 3030-th round). It does not vote and verify the block, which reduces 0.0150.015 reputation per round. Especially, at the 1515-th consensus round, it becomes the leader that generates a block successfully, which adds 0.0550.055 reputation in this round. Especially, at the 2525-th consensus round, it becomes the leader that generates an invalid block, which reduces 0.0550.055 reputation in this round.

Refer to caption
Figure 5: The performance obtained by greedy-heuristic and TBSAP algorithm under the different budgets and number of vehicles.
Refer to caption
Figure 6: The distributions of bid and payment for each vehicle under the different number of vehicles with budget B=100B=100

2) Reliability: Fig. 4 draws the ratio of normal witnesses changes with the ratio of abnormal full nodes, which describes the reliability of our BRTM system. The higher the ratio of normal witnesses is, the more reliable this system is. Shown as Fig. 4, the ideal line is the maximum RNW we can obtain theoretically. For instance, if RAFN is 0.60.6, namely there are 6060 abnormal full nodes, the optimal RNW is equal to 100(10.6)/70100\cdot(1-0.6)/70. The RNWs are all closed to the ideal value when the RAFN is less than 0.50.5. This is because the number of abnormal nodes is less than normal nodes, thereby their voting hardly changes the outcome of witness election. However, when the RAFN is from 0.50.5 to 0.750.75, the RNW of our reputation-based DPoS is larger than that of general DPoS obviously since the normal nodes have larger voting weight even though their quantity is small in total. Therefore, the reliability of our system is improved by the reputation-based DPoS especially when the proportion of abnormal nodes is higher and the most extreme case happens where each abnormal node votes to support all abnormal nodes.

The simulation results about our budgeted reverse auction mechanism are shown in Fig. 5 and Fig. 6.

3) The TA’s profit function: Fig. 5 draws the performance obtained by greedy-heuristic and TBSAP algorithm under the different budgets and number of vehicles in this city, where the number of vehicles |V||V| is 500500 or 10001000. Shown as Fig. 5, we can observe that the TA’s profit obtained by TBSAP is less than that obtained by greedy-heuristic under any budget in order to ensure the truthfulness. To the results obtained by greedy-heuristic, we can observe the TA’s profit increases as the budget increases. When the budget is larger than 200200, the TA’s profit keeps unchanged. There is a similar evolutive trend in the results obtained by TBSAP, but it declines slightly when the budget is larger than 200200. At this time, none of the optional vehicles has a positive unit marginal gain, thereby the operation step in line 25 of Algorithm 2 is possible to increase the payment and reduce the profit further.

4) Bids and payments: Fig. 6 draws the distributions of bid and payment for each vehicle under the different number of vehicles with a budget B=100B=100. Shown as Fig. 6, we can see that the points are more concentrated on the bottom left which have lower bids and payments when the number of vehicles is larger. This is because there are more active vehicles with lower bids that can be selected to undertake collection tasks. It explains why the TA’s profit increases with the number of vehicles in this city.

VII Conclusion

In this paper, we designed and implemented a reliable and efficient traffic monitoring system based on blockchain technology and budgeted reverse auction mechanism. To enhance the security and reliability of this system, we gave a lightweight information trading framework by using asymmetric encryption. We devised a reputation-based DPoS consensus mechanism so as to improve the efficiency of recording and storing in blockchain. Then, to incentivize vehicles to undertake collection tasks, we developed a budgeted reverse auction algorithm that satisfies individual rationality, profitability, truthfulness, and computational efficiency. Finally, the results of numerical simulations indicated that our model is valid, and verify the correctness and efficiency of our algorithms.

Acknowledgment

This work is partly supported by National Science Foundation under grant 1747818 and 1907472.

References

  • [1] H. Zhou, B. Liu, T. H. Luan, F. Hou, L. Gui, Y. Li, Q. Yu, and X. Shen, “Chaincluster: Engineering a cooperative content distribution framework for highway vehicular communications,” IEEE transactions on intelligent transportation systems, vol. 15, no. 6, pp. 2644–2657, 2014.
  • [2] S. He, D.-H. Shin, J. Zhang, J. Chen, and Y. Sun, “Full-view area coverage in camera sensor networks: Dimension reduction and near-optimal solutions,” IEEE Transactions on Vehicular Technology, vol. 65, no. 9, pp. 7448–7461, 2015.
  • [3] K. Zhang, J. Ni, K. Yang, X. Liang, J. Ren, and X. S. Shen, “Security and privacy in smart city applications: Challenges and solutions,” IEEE Communications Magazine, vol. 55, no. 1, pp. 122–129, 2017.
  • [4] S. Nakamoto, “Bitcoin: A peer-to-peer electronic cash system,” White Paper, 2008.
  • [5] P. K. Sharma, M.-Y. Chen, and J. H. Park, “A software defined fog node based distributed blockchain cloud architecture for iot,” Ieee Access, vol. 6, pp. 115–124, 2017.
  • [6] R. Li, T. Song, B. Mei, H. Li, X. Cheng, and L. Sun, “Blockchain for large-scale internet of things data storage and protection,” IEEE Transactions on Services Computing, vol. 12, no. 5, pp. 762–771, 2018.
  • [7] Z. Su, Y. Wang, Q. Xu, M. Fei, Y.-C. Tian, and N. Zhang, “A secure charging scheme for electric vehicles with smart communities in energy blockchain,” IEEE Internet of Things Journal, vol. 6, no. 3, pp. 4601–4613, 2018.
  • [8] O. Kaiwartya, A. H. Abdullah, Y. Cao, A. Altameem, M. Prasad, C.-T. Lin, and X. Liu, “Internet of vehicles: Motivation, layered architecture, network model, challenges, and future aspects,” IEEE Access, vol. 4, pp. 5356–5373, 2016.
  • [9] A. Singh, L. Gaba, and A. Sharma, “Internet of vehicles: Proposed architecture, network models, open issues and challenges,” in 2019 Amity International Conference on Artificial Intelligence (AICAI).   IEEE, 2019, pp. 632–636.
  • [10] B. Ji, X. Zhang, S. Mumtaz, C. Han, C. Li, H. Wen, and D. Wang, “Survey on the internet of vehicles: Network architectures and applications,” IEEE Communications Standards Magazine, vol. 4, no. 1, pp. 34–41, 2020.
  • [11] Z. Li, J. Kang, R. Yu, D. Ye, Q. Deng, and Y. Zhang, “Consortium blockchain for secure energy trading in industrial internet of things,” IEEE transactions on industrial informatics, vol. 14, no. 8, pp. 3690–3700, 2017.
  • [12] J. Guo, X. Ding, and W. Wu, “A blockchain-enabled ecosystem for distributed electricity trading in smart city,” IEEE Internet of Things Journal, pp. 1–1, 2020.
  • [13] ——, “An architecture for distributed energies trading in byzantine-based blockchain,” arXiv preprint arXiv:2005.07341, 2020.
  • [14] S. Xia, F. Lin, Z. Chen, C. Tang, Y. Ma, and X. Yu, “A bayesian game based vehicle-to-vehicle electricity trading scheme for blockchain-enabled internet of vehicles,” IEEE Transactions on Vehicular Technology, vol. 69, no. 7, pp. 6856–6868, 2020.
  • [15] H. Yao, T. Mai, J. Wang, Z. Ji, C. Jiang, and Y. Qian, “Resource trading in blockchain-based industrial internet of things,” IEEE Transactions on Industrial Informatics, vol. 15, no. 6, pp. 3602–3609, 2019.
  • [16] X. Ding, J. Guo, D. Li, and W. Wu, “An incentive mechanism for building a secure blockchain-based industrial internet of things,” arXiv preprint arXiv:2003.10560, 2020.
  • [17] L. Wang, W. Liu, and X. Han, “Blockchain-based government information resource sharing,” in 2017 IEEE 23rd International Conference on Parallel and Distributed Systems (ICPADS).   IEEE, 2017, pp. 804–809.
  • [18] C. Xu, K. Wang, P. Li, S. Guo, J. Luo, B. Ye, and M. Guo, “Making big data open in edges: A resource-efficient blockchain-based approach,” IEEE Transactions on Parallel and Distributed Systems, vol. 30, no. 4, pp. 870–882, 2018.
  • [19] C. Chen, J. Wu, H. Lin, W. Chen, and Z. Zheng, “A secure and efficient blockchain-based data trading approach for internet of vehicles,” IEEE Transactions on Vehicular Technology, vol. 68, no. 9, pp. 9110–9121, 2019.
  • [20] X. Zhang, Z. Yang, W. Sun, Y. Liu, S. Tang, K. Xing, and X. Mao, “Incentives for mobile crowd sensing: A survey,” IEEE Communications Surveys & Tutorials, vol. 18, no. 1, pp. 54–67, 2015.
  • [21] D. Yang, G. Xue, X. Fang, and J. Tang, “Incentive mechanisms for crowdsensing: Crowdsourcing with smartphones,” IEEE/ACM transactions on networking, vol. 24, no. 3, pp. 1732–1744, 2015.
  • [22] A. Kiani and N. Ansari, “Toward hierarchical mobile edge computing: An auction-based profit maximization approach,” IEEE Internet of Things Journal, vol. 4, no. 6, pp. 2082–2091, 2017.
  • [23] Y. Jiao, P. Wang, D. Niyato, and K. Suankaewmanee, “Auction mechanisms in cloud/fog computing resource allocation for public blockchain networks,” IEEE Transactions on Parallel and Distributed Systems, vol. 30, no. 9, pp. 1975–1989, 2019.
  • [24] Y. Zhu, W. Wu, D. Li, and L. Ding, “A double-auction-based mechanism to stimulate secondary users for cooperative sensing in cognitive radio networks,” IEEE Transactions on Vehicular Technology, vol. 64, no. 8, pp. 3770–3782, 2014.
  • [25] Z. Zheng, F. Wu, and G. Chen, “A strategy-proof combinatorial heterogeneous channel auction framework in noncooperative wireless networks,” IEEE Transactions on Mobile Computing, vol. 14, no. 6, pp. 1123–1137, 2014.
  • [26] L. Lovász, “Submodular functions and convexity,” in Mathematical programming the state of the art.   Springer, 1983, pp. 235–257.
  • [27] N. Buchbinder, M. Feldman, J. Seffi, and R. Schwartz, “A tight linear time (1/2)-approximation for unconstrained submodular maximization,” SIAM Journal on Computing, vol. 44, no. 5, pp. 1384–1402, 2015.
  • [28] J. Lee, V. S. Mirrokni, V. Nagarajan, and M. Sviridenko, “Non-monotone submodular maximization under matroid and knapsack constraints,” in Proceedings of the forty-first annual ACM symposium on Theory of computing, 2009, pp. 323–332.
  • [29] N. Nisan, T. Roughgarden, É. Tardos, and V. V. Vazirani, Algorithmic Game Theory.   Cambridge University Press, 2007.
[Uncaptioned image] Jianxiong Guo is a Ph.D. candidate in the Department of Computer Science at the University of Texas at Dallas. He received his B.S. degree in Energy Engineering and Automation from South China University of Technology in 2015 and M.S. degree in Chemical Engineering from University of Pittsburgh in 2016. His research interests include social networks, data mining, IoT application, blockchain, and combinatorial optimization.
[Uncaptioned image] Xingjian Ding received the BE degree in electronic information engineering from Sichuan University, Sichuan, China, in 2012. He received the M.S. degree in software engineering from Beijing Forestry University, Beijing, China, in 2017. Currently, he is working toward the PhD degree in the School of Information, Renmin University of China, Beijing, China. His research interests include wireless rechargeable sensor networks algorithm, design and analysis, and blockchain.
[Uncaptioned image] Weili Wu received the Ph.D. and M.S. degrees from the Department of Computer Science, University of Minnesota, Minneapolis, MN, USA, in 2002 and 1998, respectively. She is currently a Full Professor with the Department of Computer Science, The University of Texas at Dallas, Richardson, TX, USA. Her research mainly deals in the general research area of data communication and data management. Her research focuses on the design and analysis of algorithms for optimization problems that occur in wireless networking environments and various database systems.