Reverse auction task allocation method based on side vehicle cooperative calculation
Through the reverse auction task allocation method of side car collaborative calculation, calculation tasks and sensing tasks are efficiently allocated, which solves the resource allocation and reward calculation problems of edge servers and smart cars, and improves system efficiency and user satisfaction.
Patent Information
- Application Number
- CN202510356751.5
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2025-03-25
- Publication Date
- 2025-07-04
AI Technical Summary
In sidecar collaborative computing, it is difficult for the prior art to efficiently assign computing tasks and sensing tasks, resulting in inefficient system efficiency and insufficient user satisfaction.
The reverse auction task allocation method based on side car collaborative calculation is adopted. By obtaining the data of the system participants, sorting them according to the unit budget, reverse auction is carried out, resource allocation plans are determined, and user payment prices and edge servers and smart cars are calculated.
It effectively solves the problem of assignment between edge servers and smart cars, meets trustworthy attributes, and improves system efficiency and user satisfaction.
Smart Images

Figure CN120256115A_ABST
Abstract
Description
Technical Field
[0001] The present invention belongs to the technical field of side vehicle collaboration. More specifically, it relates to a reverse auction task allocation method based on side vehicle collaborative computing. Background Art
[0002] Vehicle computing refers to an intelligent vehicle with computing capabilities and sensing devices as a vehicle computing platform to provide users with diverse services. The advantage of vehicle computing is that intelligent vehicles have rich sensing devices, such as high-definition cameras and radars, etc., which can collect sensing data of the surrounding environment and provide users with powerful environmental perception services. The advantage of edge computing is to provide users with powerful computing services. Side vehicle collaborative computing combines edge computing and vehicle computing together to give full play to the advantages of edge computing and vehicle computing and provide users with diverse high-quality services.
[0003] User tasks are divided into computing tasks and sensing tasks. Among them, the sensing task is responsible for collecting sensing data of the surrounding environment, and the computing task is responsible for analyzing and processing the collected sensing data. In side vehicle collaborative computing, the sensing task runs on the intelligent vehicle, collects real-time data of the surrounding environment through the on-vehicle sensing devices of the intelligent vehicle, and sends the sensing data to the computing task for processing; the computing task runs on the edge server and analyzes and processes the sensing data collected by the intelligent vehicle. Side vehicle collaborative computing can well provide users with diverse services, such as autonomous driving data collection tasks, environmental detection tasks, and tunnel guarantee tasks, etc.
[0004] In side vehicle collaborative computing, the edge server mainly provides computing services, the intelligent vehicle mainly provides sensing services, and data interaction is required between the computing task and the sensing task. Facing the complexity of task allocation in side vehicle collaborative computing, an efficient task allocation method needs to be sought. Summary of the Invention
[0005] The purpose of the present invention is to overcome the deficiencies of the prior art and provide a reverse auction task allocation method based on side vehicle collaborative computing. Through efficient task allocation, the system efficiency is improved and user satisfaction is increased.
[0006] To achieve the above invention purpose, the reverse auction task allocation method based on side vehicle collaborative computing of the present invention includes the following steps:
[0007] S1: The side vehicle collaborative computing service provider obtains the parameters or data in the current side vehicle collaborative computing system, including user data, intelligent vehicle data, the number of edge servers, and associated data, where:
[0008] The user data includes: the resource requirement vector d of the computing task of each user i i ={d i1 ,…,diR}, d ir represents the quantity of resource r required by the computing task of user i, where i ∈ N and N represents the set of users in the edge-cloud collaborative computing system, and r ∈ R and R represents the set of resource types in the edge-cloud collaborative computing system; the sensing task set T of each user i i , the execution value v of the sensing task t of user i it , where t ∈ T i ; the resource demand vector k for the sensing task t of each user i it = {k it1 , …, k itR}, where k itr represents the quantity of resource r required by the sensing task t of user i; the budget bid of each user i i ; the set L of intelligent vehicle types required by each user i i ;
[0009] The intelligent vehicle data includes: the resource vector w of each intelligent vehicle s s = {w s1 , …, w sR}, where w sr represents the quantity of resource r that the intelligent vehicle s can provide, where s ∈ S and S represents the set of intelligent vehicles in the edge-cloud collaborative computing system; the unit resource cost of each intelligent vehicle s and the vehicle type l s ;
[0010] The edge server data includes: the resource vector c of each edge server m m = {c m1 , …, c mR}, where c mr represents the quantity of resource r that the edge server m can provide, where m ∈ M and M represents the set of edge servers in the edge-cloud collaborative computing system; the unit resource cost of each edge server m
[0011] The association data includes: the edge server coverage identifier α im , where if user i and edge server m are within the same network coverage area, then α im = 1, otherwise α im = 0; the intelligent vehicle coverage identifier β is , where if user i and intelligent vehicle s are within the same network coverage area, then β is = 1, otherwise β is = 0;
[0012] The edge-cloud collaborative computing service provider initializes the resource allocation identifier of the user, and sets the user-intelligent vehicle allocation identifier y of each user its = 0, and the user-edge server allocation identifier xim = 0;
[0013] S2: Calculate the unit budget ρ of user i using the following formula i :
[0014]
[0015] Sort the users in the user set according to the unit budget ρ i in descending order to obtain the user queue List user , and denote the original serial number of the u-th user as i u , where u = 1, 2,..., |N|, and |N| represents the number of users in the user set N;
[0016] S3: Select the first user i in the current user queue List user and delete it from the user queue List user ;
[0017] S4: The sidecar collaborative computing service provider takes the current user as the auctioneer and conducts a reverse auction for the resources on the edge server and the intelligent vehicle. The specific method is as follows:
[0018] S4.1: Obtain the set of edge servers of user i Sort the edge servers m in the set of edge servers M i in ascending order of unit cost to obtain the initial edge server queue of user i
[0019] Filter out the critical edge servers for user i from the initial edge server queue and denote its serial number m in the initial edge server queue , and the conditions for filtering are as follows: i :
[0020]
[0021] or and m i = |M i |
[0022] where || represents obtaining the number of individuals in the set;
[0023] Delete the critical edge server m and the subsequent edge servers in the initial edge server queue of user i i to obtain the edge server queue List sever,i ;
[0024] S4.2: Calculate the remaining budget b of user i using the following formulai :
[0025]
[0026] S4.3: Sort the intelligent vehicles s in the intelligent vehicle set S in ascending order according to the unit cost to obtain the intelligent vehicle queue List vehicle ; Screen the key intelligent vehicles from the intelligent vehicle queue List vehicle and record the serial number of the key intelligent vehicle in the intelligent vehicle queue List vehicle as s i . The conditions for screening are as follows:
[0027]
[0028] or and s i = |S|
[0029] S4.4: Initialize the value variable V i m = 0, m ∈ M;
[0030] S4.5: Select the first edge server m from the edge server queue List sever,i and delete it from the edge server queue List sever,i ;
[0031] S4.6: Judge whether the available resources of the edge server m meet If it meets, assume that the computing task of user i is uploaded to the edge server m for execution and enter step S4.7, otherwise enter step S4.15;
[0032] S4.7: Obtain the intelligent vehicle set Obtain the sensing task pairing set of user i where (t, s) the sensing task t is executed on the intelligent vehicle s; Screen the maximum resources required for the sensing task requirements of user i Update the resource requirement of the sensing task t ∈ T of user i i ; Update the resource supply of the intelligent vehicle s Obtain the minimum resource amount provided by the intelligent vehicle
[0033] Initialize the iteration number ξ = 0 and the allocation value
[0034] S4.8: Update the current iteration number ξ = ξ + 1;
[0035] Calculate the unit value τ of the sensing task t of user i on the intelligent vehicle sts , the unit value τ ts is calculated using the following formula:
[0036]
[0037] Obtain the sensing task pairing with the maximum unit value for user i
[0038] S4.9: Set the temporary assignment variable for sensing task t of user i Update the set of sensing task pairings for user i
[0039] S4.10: Update the assignment value and
[0040] S4.11: Judge whether it holds. If it holds, go to step S4.12; otherwise, go to step S4.13;
[0041] S4.12: Update the set of intelligent vehicles Update the set of sensing task pairings
[0042] S4.13: Judge whether the set of intelligent vehicles or the set of sensing task pairings A is empty. If any one of the sets is empty, go to step S4.14; otherwise, return to step S4.8;
[0043] S4.14: Update the total value of the sensing tasks of the current user i
[0044] S4.15: Judge whether the edge server queue List sever,i is empty. If it is empty, go to step S4.16; otherwise, return to step S4.5;
[0045] S4.16: Obtain the edge server
[0046] If V i m′ > 0, set the user-edge server assignment flag x im′ = 1 and the user-intelligent vehicle assignment flag x im′ = 1 indicates that the computing task of user i is uploaded to the edge server m' for execution, the allocation scheme of the sensing task when the computing task is uploaded to the edge server m' for execution; y its = 1 indicates that the sensing task t of user i is transmitted to the intelligent vehicle s for execution;
[0047] S4.17: Update the resource usage of edge server m
[0048] Update the available resource of intelligent vehicle s
[0049] S5: Determine whether the current user queue List user is empty. If so, the user resource allocation is completed, go to step S6; otherwise, return to step S3;
[0050] S6: The edge-cloud collaborative computing service provider calculates the payment price of the user as well as the remuneration of the edge server and the remuneration of the intelligent vehicle
[0051] S7: Each user i uploads the computing task to the edge server for execution according to the user-edge server allocation identifier x im and uploads the sensing task to the intelligent vehicle for execution according to the user-intelligent vehicle allocation identifier y its where x im = 1 indicates that the computing task of user i is uploaded to edge server m for execution; x im = 0 indicates that the computing task of user i is not uploaded to edge server m for execution; y its = 1 indicates that the sensing task t of user i is uploaded to intelligent vehicle s for execution; y its = 0 indicates that the sensing task t of user i is not uploaded to intelligent vehicle s for execution; The user pays the price to the edge-cloud collaborative computing service provider according to the payment price and the edge-cloud collaborative computing service provider pays the remuneration to the edge server and the intelligent vehicle respectively.
[0052] Based on the reverse auction task allocation method for edge-cloud collaborative computing, the edge-cloud collaborative computing service provider obtains the parameter data in the current edge-cloud collaborative computing system, sorts the users according to the unit budget, then selects each user in turn, takes the current user as the auctioneer, and conducts a reverse auction on the resources on the edge server and the intelligent vehicle. During the reverse auction process, a value variable is used to determine the resource allocation scheme, calculates the payment price of the user, as well as the remuneration of the edge server and the intelligent vehicle, and then executes the task and makes the payment.
[0053] The present invention has the following technical effects:
[0054] 1) The present invention is suitable for the task allocation scenario where user tasks in edge-cloud collaborative computing are divided into computing tasks and sensing tasks, and the computing tasks and sensing tasks need to cooperate;
[0055] 2) The reverse auction task allocation method for edge-vehicle collaborative computing proposed by the present invention effectively solves the problem of task allocation between edge servers and intelligent vehicles.
[0056] 3) The reverse auction task allocation method for edge-vehicle collaborative computing proposed by the present invention effectively solves the problem of reward calculation for edge servers and intelligent vehicles, meets the trusted attributes, and has practical application value. BRIEF DESCRIPTION OF THE DRAWINGS
[0057] Figure 1 is a schematic diagram of the reverse auction task allocation based on edge-vehicle collaborative computing of the present invention;
[0058] Figure 2 is a flowchart of the specific implementation manner of the reverse auction task allocation method based on edge-vehicle collaborative computing of the present invention;
[0059] Figure 3 is a flowchart of the reverse auction of edge servers and intelligent vehicle resources of the present invention;
[0060] Figure 4 is a flowchart of the payment price and reward calculation method in this embodiment. DETAILED DESCRIPTION OF THE INVENTION
[0061] The following describes the specific implementation manner of the present invention with reference to the accompanying drawings, so that those skilled in the art can better understand the present invention. It should be particularly noted that in the following description, when the detailed description of known functions and designs may dilute the main content of the present invention, these descriptions will be omitted here.
[0062] To better illustrate the technical solution of the present invention, the principle of the present invention will be briefly described first. Figure 1 is a schematic diagram of the reverse auction task allocation based on edge-vehicle collaborative computing of the present invention. As Figure 1 shown, the user, the edge server, the red intelligent vehicle, the green intelligent vehicle, and the black intelligent vehicle are in the same network coverage area. Therefore, the edge server, the red intelligent vehicle, the green intelligent vehicle, and the black intelligent vehicle can all provide services for the user. The computing tasks of the user are uploaded to the edge server for execution, the sensing task 1 is uploaded to the red intelligent vehicle for execution, the sensing task 2 is uploaded to the black intelligent vehicle for execution, and the sensing task 3 is uploaded to the green intelligent vehicle for execution. Data interaction between the sensing tasks and the computing tasks is carried out through the network access point.
[0063] The reverse auction task allocation process based on sidecar collaborative computing in the present invention includes five steps: The first step is that the sidecar collaborative computing service provider collects information of users, intelligent vehicles, and edge servers; the second step is to select auction users; the third step is to conduct a reverse auction for edge server and intelligent vehicle resources; the fourth step is to calculate the payment price and remuneration; the fifth step is that users upload computing tasks and sensing tasks to the edge server and intelligent vehicle respectively for execution according to the allocation scheme, and users pay remuneration to the edge server and intelligent vehicle.
[0064] The linear programming problem of reverse auction task allocation based on sidecar collaborative computing in the present invention can be expressed as follows:
[0065]
[0066]
[0067] Among them, x im represents the computing task allocation identifier between the user and the edge server. x im =1 means that the computing task of user i is uploaded to the edge server m for execution, and x im =0 means that the computing task of user i is not uploaded to the edge server m for execution. i∈N, where N represents the set of users in the sidecar collaborative computing system, and m∈M, where M represents the set of edge servers in the sidecar collaborative computing system.
[0068] y its represents the sensing task allocation identifier between the user and the intelligent vehicle. y is =1 means that the sensing task of user i is uploaded to the intelligent vehicle s for execution, and y is =0 means that the sensing task of user i is not uploaded to the intelligent vehicle s for execution. s∈S, where S represents the set of intelligent vehicles in the sidecar collaborative computing system.
[0069] represents the unit resource cost of the intelligent vehicle s, represents the unit resource cost of the edge server m, bid i represents the budget of each user i, d ir represents the demand quantity of user i for resource r, k itr represents the demand quantity of the sensing task t of user i for resource r, c mr represents the quantity of resource r that the edge server m can provide, h sr represents the quantity of resource r that the intelligent vehicle s can provide. α im represents the edge server coverage identifier. If user i and edge server m are within the same network coverage range and user i does not require sensing resources, then α im =1, otherwise α im =0. β isIndicates the coverage identification of the intelligent vehicle. If user i and intelligent vehicle s are within the same network coverage area, then β is = 1; otherwise, β is = 0.
[0070] The target condition (1) represents maximizing the value of the sensing task of the user; the constraint condition (1a) represents that the price paid by the user does not exceed the budget; the constraint condition (1b) represents that the total amount of resources allocated to the user on the edge server cannot exceed the total available resources; the constraint condition (1c) represents that the total amount of resources allocated to the user on the intelligent vehicle cannot exceed the total available resources; the constraint condition (1d) represents that the user's computing task must be uploaded to the edge server for execution before the sensing task can be uploaded to the intelligent vehicle within the same network coverage area for execution; the constraint condition (1e) represents that each sensing task uploaded to the intelligent vehicle for operation has at least one computing task serving it; the constraint condition (1f) represents that the user's computing task can only be uploaded to the edge server within the same network coverage area for execution; the constraint condition (1g) represents that the user's sensing task can only be uploaded to the intelligent vehicle within the same network coverage area for execution; the constraint condition (1h) represents that the user's computing task can be uploaded to at most one edge server for execution; the constraint condition (1i) represents that the user's sensing task can be uploaded to at most one intelligent vehicle for execution; the constraint condition (1j) is a constraint condition for the allocation variables.
[0071] Based on the above analysis, in order to meet the allocation of the user's computing tasks and sensing tasks in vehicle-edge collaborative computing, as well as the joint collaboration between the computing tasks and sensing tasks, the present invention designs a reverse auction task allocation method based on vehicle-edge collaborative computing. Figure 2 It is a flowchart of the specific implementation manner of the reverse auction task allocation method based on vehicle-edge collaborative computing of the present invention. As Figure 2 shown, the specific steps of the reverse auction task allocation method based on vehicle-edge collaborative computing of the present invention include:
[0072] S201: Obtain the participant data in the current system:
[0073] In the present invention, first, the vehicle-edge collaborative computing service provider needs to obtain the parameter data in the current vehicle-edge collaborative computing system, including user data, intelligent vehicle data, the number of edge servers, and association data. Next, each type of data will be described in detail.
[0074] The user data includes: the resource requirement vector d of the computing task of each user i i = {d i1 , …, d iR}, d irDenote the quantity of resource \(r\) required by the computing task of user \(i\), where \(i\in N\) and \(N\) represents the set of users in the edge-cloud collaborative computing system, and \(r\in R\) and \(R\) represents the set of resource types in the edge-cloud collaborative computing system. The sensing task set \(T\) of each user \(i\) i , the execution value \(v\) of the sensing task \(t\) of user \(i\) it , where \(t\in T\) i . That is, when the sensing task \(t\) is executed on the intelligent vehicle, its value is \(v\) it , and if it is not executed on the intelligent vehicle, the value is 0. The resource demand vector \(k\) of the sensing task \(t\) of each user \(i\) it =\(\{k\) it1 ,\(\cdots,k\) itR \}\), where \(k\) itr represents the quantity of resource \(r\) required by the sensing task \(t\) of user \(i\). The budget \(bid\) of each user \(i\) i , that is, the maximum price that user \(i\) can pay. The computing tasks of users need to be uploaded to the edge server for execution, and the sensing tasks are uploaded to the intelligent vehicle for execution. When the sensing task of a user is uploaded to the intelligent vehicle for operation, its computing task must be uploaded to the edge server for operation in order to process and analyze the sensing data. As long as one sensing task \(t\) of user \(i\) is uploaded to the intelligent vehicle for remote execution, there is a corresponding sensing task value \(v\) it . Since each sensing task has a different value, it is necessary to upload as many sensing tasks as possible to maximize their value, and the final price paid does not exceed the budget of the user.
[0075] The data of the intelligent vehicle includes: the resource vector \(w\) of each intelligent vehicle \(s\) s =\(\{w\) s1 ,\(\cdots,w\) sR \}\), where \(w\) sr represents the quantity of resource \(r\) that the intelligent vehicle \(s\) can provide, \(s\in S\) and \(S\) represents the set of intelligent vehicles in the edge-cloud collaborative computing system; the unit resource cost of each intelligent vehicle \(s\)
[0076] The data of the edge server includes: the resource vector \(c\) of each edge server \(m\) m =\(\{c\) m1 ,\(\cdots,c\) mR \}\), where \(c\) mr represents the quantity of resource \(r\) that the edge server \(m\) can provide, \(m\in M\) and \(M\) represents the set of edge servers in the edge-cloud collaborative computing system; the unit resource cost of each edge server \(m\)
[0077] The associated data includes: the edge server coverage identifier \(\alpha\) im , if user \(i\) and edge server \(m\) are within the same network coverage area, then \(\alpha\) im = 1, otherwise \(\alpha\) im= 0; The intelligent vehicle coverage identifier β is , if user i and intelligent vehicle s are within the same network coverage area, then β is = 1, otherwise β is = 0. This is because users, edge servers, and intelligent vehicles join the system through network access points, and upload tasks and exchange data between tasks through network access points. Therefore, the edge server and the intelligent vehicle need to be in the same network coverage area as the user to ensure the successful upload and execution of tasks.
[0078] In addition, the sidecar collaborative computing service provider initializes the resource allocation identifier of the user, and sets the user-intelligent vehicle allocation identifier y of each user its = 0, and the user-edge server allocation identifier x im = 0.
[0079] S202: User sorting:
[0080] Calculate the unit budget ρ of user i i , where the unit budget refers to the budget of each unit of resources of the user. In the present invention, the unit budget ρ of user i i is calculated using the following formula:
[0081]
[0082] Sort the users in the user set according to the unit budget ρ i from largest to smallest to obtain the user queue List user , and denote the original serial number of the u-th user as i u , u = 1, 2,..., |N|, where |N| represents the number of users in the user set N.
[0083] Next, the sidecar collaborative computing service provider sequentially selects each user i, and uses user i as the auctioneer to conduct a resource auction for the edge server and the intelligent vehicle. That is to say, in the present invention, users with a larger unit budget are given priority in the auction.
[0084] S203: Select a user:
[0085] Select the first user i in the current user queue List user and delete it from the user queue List user .
[0086] S204: Reverse auction for edge server and intelligent vehicle resources:
[0087] The sidecar collaborative computing service provider uses the current user as the auctioneer to conduct a reverse auction for the resources on the edge server and the intelligent vehicle. Figure 3 is the flowchart of the reverse auction for edge server and intelligent vehicle resources in the present invention. AsFigure 3 As shown in the figure, the specific steps of the reverse auction of the edge server and the intelligent vehicle resources in the present invention include:
[0088] S301: Obtain the edge server queue:
[0089] Obtain the set of edge servers of user i The set of edge servers M i The edge server m in and user i are within the same network coverage area, so the edge server m can provide services for user i. Arrange the edge servers m in the set of edge servers M i in ascending order of unit cost to obtain the initial edge server queue of user i
[0090] From the initial edge server queue screen out the critical edge servers for user i, and record their serial numbers m in the initial edge server queue The conditions required for screening are as follows: i That is, the conditions for screening are as follows:
[0091]
[0092] Or And m i = |M i |
[0093] Where, || represents obtaining the number of individuals in the set.
[0094] That is to say, the critical edge server m i satisfies that its unit cost is not greater than the unit budget of user i, and the unit cost of the edge server m i +1 is not less than the unit budget of user i or the edge server m i is the last edge server.
[0095] Delete the critical edge server m in the initial edge server queue of user i and the edge servers after it to obtain the edge server queue List i . That is to say, the unit costs of the edge servers in the edge server queue List sever,i are not greater than those of the critical edge server m sever,i . Next, user i only auctions the edge servers in the edge server queue List i . That is, the computing tasks of user i are only uploaded to the edge servers in the edge server queue List sever,i for execution. sever,i
[0096] S302: Calculate the remaining budget of the user:
[0097] The remaining budget b of user i is calculated using the following formula i :
[0098]
[0099] The remaining budget b i That is, after the computing task of user i is uploaded to the edge server for execution, the remaining budget paid to the intelligent vehicle. The calculation of the remaining budget is based on the unit cost of the key edge server m i .
[0100] S303: Screen key intelligent vehicles:
[0101] Sort the intelligent vehicles s in the intelligent vehicle set S according to the unit cost from small to large to obtain the intelligent vehicle queue List vehicle . Select the key intelligent vehicles from the intelligent vehicle queue List vehicle . Denote the serial number of the key intelligent vehicle in the intelligent vehicle queue List vehicle as s i . The conditions for screening are as follows:
[0102]
[0103] or and s i = |S|
[0104] That is to say, the unit cost of the key intelligent vehicle s i is not greater than the unit bid of user i, and the unit cost of intelligent vehicle s i +1 is not less than the unit bid of user i or intelligent vehicle s i is the last intelligent vehicle.
[0105] S304: Initialize the value variable:
[0106] Initialize the value variable V i m = 0, m ∈ M. V i m represents the total value when the sensing task of user i is assigned to the intelligent vehicle if the computing task of user i is uploaded to the edge server m for execution.
[0107] S305: Select the edge server:
[0108] Select the first edge server m from the edge server queue List sever,i and delete it from the edge server queue List sever,i .
[0109] S306: Determine whether the available resources of edge server m meet If it meets, assume that the computing task of user i is uploaded to edge server m for execution, and go to step S307; otherwise, go to step S315.
[0110] S307: Initialize the allocation variables:
[0111] Obtain the set of intelligent vehicles User i only auctions intelligent vehicles with a unit cost not greater than and excludes the key intelligent vehicle s i .
[0112] Obtain the set of sensing task pairings of user i where (t, s) the sensing task t is executed on the intelligent vehicle s. Screen the maximum resources required for the sensing task requirements of user i Update the resource requirement of user i's sensing task t ∈ T i of Update the resource supply of intelligent vehicle s Obtain the minimum resource amount provided by the intelligent vehicle
[0113] Initialize the iteration count ξ = 0 and the allocation value That is, the variable ξ represents which iteration it is currently and is the value assigned in the ξ-th iteration.
[0114] S308: Obtain the task with the maximum value:
[0115] Update the current iteration count ξ = ξ + 1, indicating that the current iteration count is incremented by one.
[0116] Calculate the unit value τ of user i's sensing task t on intelligent vehicle s ts , the unit value τ ts is calculated using the following formula:
[0117]
[0118] Obtain the sensing task pairing with the maximum unit value of user i That is, (t, s) when user i's sensing task t is executed on intelligent vehicle s, the unit value is the maximum.
[0119] S309: Update the task set:
[0120] Set the temporary allocation variable for user i's sensing task t indicating that user i's sensing task t runs on intelligent vehicle s and its computing task is uploaded to edge server m for running.
[0121] Update the sensing task pairing set of user i That is, delete the pairing of sensing task t of user i with all intelligent vehicles.
[0122] S310: Update variables:
[0123] Update the allocation value and
[0124] S311: Judge Whether it holds. If it holds, go to step S312; otherwise, go to step S313.
[0125] S312: Update the set:
[0126] Update the intelligent vehicle set Update the sensing task pairing set That is, the remaining unallocated sensing tasks of user i cannot be uploaded to intelligent vehicle s for execution because the available resources of intelligent vehicle s can no longer meet the resource requirements of other sensing tasks.
[0127] S313: Judge whether the intelligent vehicle set or the sensing task pairing set A is empty. If any one of the sets is empty, it means that the allocation of user i is completed, and go to step S314; otherwise, it means that the allocation is not completed, and return to step S308 to continue the allocation.
[0128] S314: Update the total task value:
[0129] Update the total value of the sensing tasks of the current user i
[0130] S315: Judge whether the edge server queue List sever,i is empty. If it is empty, it means that all edge servers have been allocated, and go to step S316; otherwise, return to step S305 to continue the allocation.
[0131] S316: Determine the allocation scheme:
[0132] Obtain the edge server The edge server m′ is the edge server when the total value of the sensing tasks is the largest. That is, when the computing tasks are uploaded to the edge server m′ for operation, the total value of the sensing tasks of the user is the largest.
[0133] If V i m′ > 0, set the user-edge server allocation flag x im′ = 1 and the user-intelligent vehicle allocation flag x im′= 1 indicates that the computing task of user i is uploaded to the edge server m' for execution. When the computing task is uploaded to the edge server m' for execution, the allocation scheme of the sensing task. y its = 1 indicates that the sensing task t of user i is transmitted to the intelligent vehicle s for execution.
[0134] S317: Update the available resource amount:
[0135] Since user i's computing task obtains resources from the edge server and the sensing task obtains resources from the intelligent vehicle, it is necessary to update the available resource amounts of the edge server and the intelligent vehicle.
[0136] Update the available resource amount of the edge server m
[0137] Update the available resource amount of the intelligent vehicle s
[0138] The reverse auction of user i for the edge server and the intelligent vehicle is completed.
[0139] S205: Judge the current user queue List user Whether it is empty. If so, the user resource allocation is completed, and go to step S206; otherwise, return to step S203.
[0140] S206: Calculate the payment price and the reward:
[0141] The side-vehicle collaborative computing service provider calculates the payment price of the user and the reward of the edge server and the reward of the intelligent vehicle Figure 4 This is the flowchart of the payment price and reward calculation method in this embodiment. As Figure 4 shown, the specific steps of the payment price and reward calculation method in this embodiment include:
[0142] S401: Calculate the payment price of the user:
[0143] For each user i, the following formula is used to calculate its payment price
[0144]
[0145] It can be seen that the unit payment price of user i for the edge server is the unit cost of the key edge server m i The unit payment price for the intelligent vehicle is the unit cost of the key intelligent vehicle s i The unit cost of
[0146] S402: Calculate the reward of the edge server:
[0147] For the edge server m in the edge server set M, calculate the reward according to the following formula
[0148]
[0149] That is, the unit reward of the edge server m in the present invention is based on the unit cost of the key edge server m i of calculated.
[0150] S403: Calculate the reward of the intelligent vehicle:
[0151] For the intelligent vehicle s in the intelligent vehicle set S, calculate the reward according to the following formula
[0152]
[0153] The unit reward of the intelligent vehicle s is based on the unit cost of the key intelligent vehicle s i of calculated.
[0154] S207: Task execution and payment:
[0155] Each user i uploads the computing task to the edge server for execution according to the user-edge server allocation identifier x im and uploads the sensing task to the intelligent vehicle for execution according to the user-intelligent vehicle allocation identifier y its where x im = 1 indicates that the computing task of user i is uploaded to the edge server m for execution; x im = 0 indicates that the computing task of user i is not uploaded to the edge server m for execution. y its = 1 indicates that the sensing task t of user i is uploaded to the intelligent vehicle s for execution; y its = 0 indicates that the sensing task t of user i is not uploaded to the intelligent vehicle s for execution. The user pays the price to the edge-vehicle collaborative computing service provider according to the payment price and the edge-vehicle collaborative computing service provider pays the rewards to the edge server and the intelligent vehicle respectively according to the reward of the edge server and the reward of the intelligent vehicle respectively.
[0156] In the reverse auction task allocation based on sidecar collaborative computing, the trust attribute is very crucial. Only when the allocation method satisfies the trust attribute can it be ensured that the edge server and the intelligent vehicle cannot submit false costs, thus affecting the benefits of other participants. The trust attribute means that only when the edge server and the intelligent vehicle submit real costs, the utilities of the user and the intelligent vehicle are maximized. If the edge server or the intelligent vehicle does not provide services, the utility of the edge server or the intelligent vehicle is zero. The utility of the edge server = the reward of the edge server - the cost of the edge server. The utility of the intelligent vehicle = the reward of the intelligent vehicle - the cost of the intelligent vehicle.
[0157] Theorem: The present invention satisfies the trust attribute in the reverse auction of the resources of the edge server and the intelligent vehicle.
[0158] Proof: Assume that the real unit cost of edge server m is Since the unit reward of the edge server is the unit cost of the key edge server m i of the unit cost and Therefore, when edge server m submits the real unit cost, its utility is not less than zero. Since the unit reward of edge server m is calculated based on the unit cost of the key edge server and has nothing to do with its own unit cost, and the key edge server does not participate in the auction, the reverse auction of the edge server resources satisfies the trust attribute.
[0159] Assume that the real unit cost of intelligent vehicle s is Since the unit reward of the intelligent vehicle is the unit cost of the key intelligent vehicle s i of the unit cost and Therefore, when intelligent vehicle s submits the real unit cost, its utility is not less than zero. Since the unit reward of intelligent vehicle s is calculated based on the unit cost of the key intelligent vehicle and has nothing to do with its own unit cost, and the key intelligent vehicle does not participate in the auction, the reverse auction of the intelligent vehicle resources satisfies the trust attribute.
[0160] Q.E.D.
[0161] To better illustrate the technical solution of the present invention, a specific example is used to conduct experimental verification on the present invention. In this embodiment, it is assumed that there is 1 user, 3 edge servers, and 4 intelligent vehicles, and the user has two sensing tasks. Table 1 is the resource demand list of the user in this embodiment.
[0162] User Unit bid Bid <![CDATA[d 11 > <![CDATA[k 111 > <![CDATA[k 121 > 1 2.50 15.00 3.00 2.00 1.00
[0163] Table 1
[0164] Table 2 is the resource and cost list provided by the edge server and the intelligent vehicle in this embodiment.
[0165]
[0166] Table 2
[0167] Table 3 is the network coverage constraint table of users, edge servers, and intelligent vehicles in this embodiment.
[0168] User 1 Intelligent vehicle 1 Intelligent vehicle 2 Intelligent vehicle 3 Intelligent vehicle 4 Edge server 1 <![CDATA[α 11 = 1]]> <![CDATA[β 11 = 1]]> <![CDATA[β 12 = 1]]> <![CDATA[β 13 = 0]]> <![CDATA[β 14 = 1]]> Edge server 2 <![CDATA[α 12 = 1]]> <![CDATA[β 21 = 1]]> <![CDATA[β 22 = 0]]> <![CDATA[β 23 = 1]]> <![CDATA[β 24 = 1]]> Edge server 3 <![CDATA[α 13 = 1]]> <![CDATA[β 31 = 1]]> <![CDATA[β 32 = 1]]> <![CDATA[β 33 = 0]]> <![CDATA[β 34 = 1]]>
[0169] Table 3
[0170] Since User 1 and Edge Server 1, Edge Server 2, and Edge Server 3 are all within the same network coverage area, the edge server set M1 = {Edge Server 1, Edge Server 2, Edge Server 3}. After sorting the edge servers in the edge server set M1 in ascending order of unit cost, it is Since the unit cost of Edge Server 3, which is 2.30, is less than the unit budget of the user, which is 2.50, and Edge Server 3 is the last edge server, Edge Server 3 is the critical edge server, and the other unit costs are regarded as unit rewards. After deleting Edge Server 3 from the initial edge server queue, it becomes List sever,1 = {Edge Server 1, Edge Server 2}.
[0171] The remaining budget of the user is 15 - 3 * 2.3 = 8.10, and the unit remaining budget is 2.70. After sorting the intelligent vehicles in the intelligent vehicle set s in ascending order of unit cost, it is {Intelligent Vehicle 1, Intelligent Vehicle 2, Intelligent Vehicle 3, Intelligent Vehicle 4}. Since the unit cost of Intelligent Vehicle 4, which is 1.90, is less than the unit remaining budget of User 1, which is 2.70, and Intelligent Vehicle 4 is the last intelligent vehicle, Intelligent Vehicle 4 is the critical intelligent vehicle.
[0172] Next, User 1 first conducts a resource auction for Edge Server 1 in the edge server queue List sever,1 = {Edge Server 1, Edge Server 2}, and updates the edge server queue List sever,1 = {Edge Server 2}. Since the available resource amount of Edge Server 1 meets the demand of User 1's computing task, a resource auction is conducted for the intelligent vehicle resources within the same network coverage area as Edge Server 1. The intelligent vehicle set Since the critical intelligent vehicle 4 does not participate in the auction, and intelligent vehicle 3 is not within the same network coverage area as Edge Server 1 and does not participate in the auction.
[0173] The maximum resource demand for User 1's sensing task is 2. After updating the resource demand of User 1's sensing task, it is and The resource demand of the intelligent vehicle is updated as shown in Table 2, where the minimum resource amount w provided by intelligent vehicle 1 and intelligent vehicle 2 min= 11.00. Obtain the task set A of user 1 = {(1, 1), (1, 2), (2, 1), (2, 2)}. The unit values of the user tasks are τ 11 = 2.20, τ 12 = 2.00, τ 21 = 6.60, τ 22 = 6.00. After sorting the task set A of user 1 according to the unit value of the tasks, it becomes A = {(2, 1), (2, 2), (1, 1), (1, 2)}. First, select the task (2, 1) with the largest unit value and update the allocation variable indicating that the sensing task 2 of user 1 is assigned to be executed on intelligent vehicle 1. Since the remaining resources of intelligent vehicle 1 no longer meet the conditions, intelligent vehicle 1 is deleted from the intelligent vehicle set and at the same time, update the task set of user 1 to A = {(1, 2)}. Next, select the task (1, 2) for allocation and update the allocation variable indicating that the sensing task 1 of user 1 is assigned to be executed on intelligent vehicle 2. Update the total value on edge server 1 to The resource allocation on edge server 1 ends.
[0174] Next, select edge server 2 in the edge server queue List sever,1 = {edge server 2} and update the edge server queue Intelligent vehicle set Since the key intelligent vehicle 4 does not participate in the auction, and intelligent vehicle 2 and edge server 2 are not within the same network coverage area and do not participate in the auction. Obtain the task set A of user 1 = {(1, 1), (1, 3), (2, 1), (2, 2)}. The unit values of the user tasks are τ 11 = 2.20, τ 13 = 1.50, τ 21 = 6.60, τ 23 = 4.50. After sorting the task set A of user 1 according to the unit value of the tasks, it becomes A = {(2, 1), (2, 3), (1, 1), (1, 3)}. First, select the task (2, 1) with the largest unit value and update the allocation variable indicating that the sensing task 2 of user 1 is assigned to be executed on intelligent vehicle 1. Since the remaining resources of intelligent vehicle 1 no longer meet the conditions, intelligent vehicle 1 is deleted from the intelligent vehicle set and at the same time, update the task set of user 1 to A = {(1, 3)}. Since intelligent vehicle 3 cannot meet the resource requirements of the sensing task 1 of user 1, the resource allocation on edge server 2 ends. Update the total value on edge server 1 to
[0175] Since So the final allocation plan is x 11 = 1, y 12 = 1, y 21 = 1.
[0176] The reward of edge server 1 is 6.90, the reward of intelligent vehicle 1 is 1.90, and the reward of intelligent vehicle 2 is 3.80. The payment price of user 1 is 6.90 + 1.90 + 3.80 = 12.60. The final allocation result is shown in Table 5.
[0177] Table 4 is the table of the final allocation result in this embodiment.
[0178]
[0179] Table 4
[0180] Although the above describes the illustrative specific embodiments of the present invention for the understanding of those skilled in the art of the present technology, it should be clear that the present invention is not limited to the scope of the specific embodiments. For those of ordinary skill in the art of the present technology, as long as various changes are within the spirit and scope of the present invention defined and determined by the appended claims, these changes are obvious, and all inventions and creations using the concept of the present invention are within the scope of protection.
Claims
1. A reverse auction task allocation method based on sidecar collaborative computing, characterized in that It includes the following steps: S1: The sidecar collaborative computing service provider obtains the parameters or data in the current sidecar collaborative computing system, including user data, intelligent vehicle data, the number of edge servers, and associated data, where: The user data includes: the resource requirement vector d of the computing task for each user i i = {d i1 , …, d iR}, where d ir represents the demand quantity of the computing task of user i for resource r, i ∈ N, N represents the set of users in the sidecar collaborative computing system, r ∈ R, R represents the set of resource types in the sidecar collaborative computing system; the sensing task set T i of each user i, the execution value v it of the sensing task t of user i, t ∈ T i ; the resource requirement vector k it of the sensing task t of each user i = {k it1 , …, k itR}, where k itr represents the demand quantity of the sensing task t of user i for resource r; the budget bid i of each user i; The intelligent vehicle data includes: the resource vector w of each intelligent vehicle s s ={w s1 ,…,w sR}, where w sr represents the quantity of resources r that the intelligent vehicle s can provide, s ∈ S, and S represents the set of intelligent vehicles in the side vehicle collaborative computing system; the unit resource cost of each intelligent vehicle s Edge server data includes: the resource vector c of each edge server m m ={c m1 ,…,c mR}, where c mr represents the quantity of resource r that edge server m can provide, m ∈ M, and M represents the set of edge servers in the sidecar collaborative computing system; the unit resource cost of each edge server m The associated data includes: the edge server coverage identifier α im , if user i and edge server m are within the same network coverage area, then α im = 1, otherwise α im = 0; the intelligent vehicle coverage identifier β is , if user i and intelligent vehicle s are within the same network coverage area, then β is = 1, otherwise β is = 0; The sidecar collaborative computing service provider initializes the resource allocation identifier of the user, and sets the user-intelligent vehicle allocation identifier y of each user its = 0, and the user-edge server allocation identifier x im = 0; S2: Calculate the unit budget ρ of user i using the following formula i : Sort the users in the user set according to the unit budget ρ i in descending order to obtain the user queue List user , and denote the original serial number of the u-th user as i u , where u = 1, 2, …, |N|, and |N| represents the number of users in the user set N; S3: Select the first user i in the current user queue List user and delete it from the user queue List user ; S4: The sidecar collaborative computing service provider takes the current user as the auctioneer and conducts a reverse auction on the resources of the edge servers and intelligent vehicles. The specific method is as follows: S4.1: Obtain the set of edge servers of user i For the set of edge servers M i Arrange the edge servers m in it in ascending order of unit cost to obtain the initial edge server queue of user i From the initial edge server queue Filter out the critical edge servers for user i, and record its serial number m in the initial edge server queue and the conditions to be satisfied for filtering are as follows: i or and m i = |M i | Among them, | | represents obtaining the number of individuals in the set; Delete the key edge server m and subsequent edge servers in the initial edge server queue of user i i to obtain the edge server queue List sever,i ; S4.2: Calculate the remaining budget b of user i using the following formula i :[[]]END]] S4.3: Sort the intelligent vehicles s in the intelligent vehicle set S according to the unit cost from small to large to obtain the intelligent vehicle queue List vehicle ; Screen the key intelligent vehicles from the intelligent vehicle queue List vehicle . Denote the serial number of the key intelligent vehicle in the intelligent vehicle queue List vehicle as s i . The conditions for screening are as follows: or and s i = |S S4.4: Initialize the value variable V i m = 0, m ∈ M; S4.5: Select the first edge server m from the edge server queue List sever,i and delete it from the edge server queue List sever,i ; S4.6: Determine whether the available resources of edge server m meet c mr ≥d ir , If yes, assume that the computing task of user i is uploaded to edge server m for execution, and go to step S4.7; otherwise, go to step S4.15; S4.7: Obtain the set of intelligent vehicles Obtain the set of sensing task pairings for user i Among them, for the sensing task t, (t, s) means that the sensing task t is executed on the intelligent vehicle s; screen the maximum resources for the sensing task requirements of user i Update the resource requirement for the sensing task t ∈ T of user i i of the resource requirement Update the resource supply of the intelligent vehicle s Obtain the minimum resource quantity provided by the intelligent vehicle Initialize the iteration count ξ = 0 and the assigned value S4.8: Update the current iteration number ξ = ξ + 1; Calculate the unit value τ of the sensing task t of user i on the intelligent vehicle s ts , the unit value τ ts is calculated using the following formula: Obtain the sensing task pairing with the maximum unit value for user i S4.9: Set the temporary assignment variable for the sensing task t of user i Update the sensing task pairing set of user i S4.10: Update the assigned value and S4.11: Determine If it holds, go to step S4.12; otherwise, go to step S4.13; S4.12: Update the intelligent vehicle set Update the sensing task pairing set S4.13: Determine the set of intelligent vehicles Or whether the set A of sensing task pairings is empty. If any one of the sets is empty, proceed to step S4.14; otherwise, return to step S4.8; S4.14: Update the total value of the sensing tasks of the current user i S4.15: Determine whether the edge server queue List sever,i is empty. If it is empty, proceed to step S4.16; otherwise, return to step S4.
5. S4.16: Obtain the edge server If V i m′ > 0, set the user-edge server allocation identifier x im′ = 1 and the user-smart vehicle allocation identifier x im′ = 1 indicates that the computing task of user i is uploaded to the edge server m' for execution, When the computing task is uploaded to the edge server m' for execution, the allocation scheme of the sensing task; y its = 1 indicates that the sensing task t of user i is transmitted to the smart vehicle s for execution; S4.17: Update the resource usage amount c of edge server m mr = c mr - x im d ir , Update the available resource amount of the intelligent vehicle s S5: Determine whether the current user queue List user is empty. If it is, the user resource allocation is completed and step S6 is entered; otherwise, return to step S3. S6: The sidecar collaborative computing service provider calculates the payment price of the user and the remuneration of the edge server and the remuneration of the intelligent vehicle S7: Each user i uploads the computing task to the edge server for execution according to the user-edge server allocation identifier x im and uploads the sensing task to the intelligent vehicle for execution according to the user-intelligent vehicle allocation identifier y its where x = 1 indicates that the computing task of user i is uploaded to the edge server m for execution; x im = 0 indicates that the computing task of user i is not uploaded to the edge server m for execution; y im = 1 indicates that the sensing task t of user i is uploaded to the intelligent vehicle s for execution; y its = 0 indicates that the sensing task t of user i is not uploaded to the intelligent vehicle s for execution; The user pays the price to the edge-cloud collaborative computing service provider according to the payment price its and the edge-cloud collaborative computing service provider pays the remuneration to the edge server and the intelligent vehicle respectively according to the remuneration of the edge server and the remuneration of the intelligent vehicle 2. The reverse auction task allocation method according to claim 1, wherein The specific method for calculating the remuneration of the payment price in step S6 is as follows: S6.1: For each user i, calculate their payment price using the following formula S6.2: Edge server set M. Edge server m calculates the reward according to the following formula S6.3: The intelligent vehicle s in the set S of intelligent vehicles calculates the reward according to the following formula