Resource allocation method and device

By introducing an auction mechanism in resource allocation, the resource unit is allocated based on the initial bidding of resource demand objects and the demand resource information of resource demand objects, the problem of unreasonable resource allocation in the existing technology is solved, and intelligent allocation and efficient allocation of resources are realized.

CN119693104APending Publication Date: 2025-03-25CHINABANK PAYMENT (BEIJING) TECH CO LTD
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202411794167.X
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2024-12-06
Publication Date
2025-03-25

AI Technical Summary

Technical Problem

The prior art ignores the dynamic demands of resources and the real-time preferences of users in resource allocation, resulting in unreasonable resource allocation and affecting resource utilization.

Method used

By obtaining the initial bidding and demand resource information of the resource demand object, resource units are allocated based on the auction mechanism to ensure the accuracy and rationality of resource allocation.

Benefits of technology

The intelligent allocation of resources is realized, ensuring that the resource demand objects can obtain resources that meet their needs, and improving the efficiency and accuracy of resource allocation.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119693104A_ABST
    Figure CN119693104A_ABST
Patent Text Reader

Abstract

The invention discloses a resource allocation method and device, and relates to the technical field of computers. A specific embodiment of the method comprises the steps of obtaining a resource demand object and a to-be-allocated resource, obtaining an initial bid of the resource demand object by determining demand resource information of the resource demand object, performing auction based on the initial bid, a demand resource type, demand resource parameters and a plurality of resource units, and performing resource allocation according to a result. According to the embodiment, intelligent allocation of the resources is realized, and the allocation efficiency and accuracy of the resources are improved.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to the field of computer technology, and in particular to a method and device for resource allocation. Background Art

[0002] At present, in the current network environment, in order to ensure the normal operation of various systems and services, reasonable resource allocation is required to ensure that the resources allocated by each party can support the normal operation of its services. Usually, static allocation or a simple polling mechanism is used to allocate resources, such as computing power, bandwidth, storage space, etc. These methods often ignore the dynamic demand for resources and the real-time preferences of users. The resource allocation results may be unreasonable, affecting the use of resources. When allocating resources through the above methods, the resource utilization rate is uneven, which may cause some resources to be overloaded while other resources are idle. It is impossible to consider the real-time status of resources and demand and allocate resources reasonably. Summary of the invention

[0003] In view of this, an embodiment of the present invention provides a method and apparatus for resource allocation, which can improve the accuracy and rationality of resource allocation.

[0004] To achieve the above object, according to one aspect of an embodiment of the present invention, a method for resource allocation is provided, including:

[0005] Acquire multiple resource demand objects and resources to be allocated, where the resources to be allocated include multiple resource units, and the division of the resource units is determined based on historical resource demand data;

[0006] Determine the required resource information of each resource requirement object, the required resource information includes the required resource type and required resource parameters;

[0007] Obtaining an initial bid for each resource requirement object, where the initial bid is determined based on the required resource type and required resource parameters;

[0008] A resource auction is conducted based on an initial bid of each resource demand object, a required resource type of each resource demand object, a required resource parameter of each resource object and a plurality of resource units, and a resource unit is allocated to each resource demand object according to the auction result.

[0009] Optionally, obtain the initial bid for each resource requirement object, including:

[0010] Determine the value of the required resource type of each resource demand object according to the preset resource value rule;

[0011] An initial bid for each resource demand object is obtained based on the demand resource type of each resource demand object and the value of each demand resource type.

[0012] Optionally, a resource auction is conducted based on an initial bid of each resource demand object, a demand resource type of each resource object, a demand resource parameter of each resource object, and a plurality of resource units, including:

[0013] Determine the resource demand object corresponding to each resource unit based on the demand resource type and demand resource parameter of each resource demand object, wherein the resource demand object corresponding to each resource unit is an object of resources within the resource unit that can satisfy the resource demand object's demand;

[0014] According to the price priority rule and the priority priority rule, the first resource demand object among the resource demand objects corresponding to each resource unit is determined to obtain a first auction result.

[0015] Optionally, the method further comprises:

[0016] If there are resource demand objects of unallocated resource units in the first auction result, adjust the initial bids of the resource demand objects of unallocated resource units based on the first auction result, and re-determine the resource demand objects corresponding to each resource unit based on the adjusted initial bids of each resource demand;

[0017] Re-determine the second resource demand object in the resource demand object corresponding to each resource unit according to the price priority rule and the priority priority rule to obtain a second auction result;

[0018] Adjusting the initial bids of the resource requirement objects that have not been allocated resource units is repeatedly performed until all resource requirement objects have allocated resource units.

[0019] Optionally, if there are resource demand objects with unallocated resource units in the first auction result, adjusting the initial bids of the resource demand objects with unallocated resource units based on the first auction result includes:

[0020] If there are resource demand objects with unallocated resource units in the first auction result, the initial bids of the resource demand objects with unallocated resource units are adjusted based on the first auction result and a preset bid threshold of the resource demand objects with unallocated resource units.

[0021] Optionally, the method further comprises:

[0022] Get new indicators of resources to be allocated for multiple resource demand objects;

[0023] Determine the target bid of each resource demand object and the target value of multiple resource units included in the resources to be allocated based on the newly added indicators;

[0024] A resource auction is conducted based on a target bid, a target value, multiple resource demand objects, and multiple resource units, and resource units corresponding to each resource demand object are allocated according to the auction result.

[0025] Optionally, the division of resource units is determined based on historical resource demand data and is achieved in the following manner:

[0026] Obtain historical resource demand data within the target time period;

[0027] Based on the historical resource demand data within the target time, the reinforcement learning model is used to adjust the resource unit division rules;

[0028] The system resources are divided based on the adjusted division rule to obtain a plurality of resource units.

[0029] According to another aspect of an embodiment of the present invention, a device for resource allocation is provided, including:

[0030] An acquisition module, used to acquire multiple resource demand objects and resources to be allocated, where the resources to be allocated include multiple resource units, and the division of resource units is determined based on historical resource demand data;

[0031] A determination module is used to determine the required resource information of each resource requirement object, where the required resource information includes the required resource type and required resource parameters;

[0032] An acquisition module, used to acquire an initial bid for each resource demand object, where the initial bid is determined based on the resource type and resource parameters of the demand;

[0033] The allocation module is used to conduct resource auction based on the initial bid of each resource demand object, the required resource type of each resource demand object, the required resource parameters of each resource object and multiple resource units, and allocate resource units to each resource demand object according to the auction results.

[0034] According to another aspect of an embodiment of the present invention, an electronic device is provided, comprising: one or more processors; a storage device for storing one or more programs, wherein when the one or more programs are executed by the one or more processors, the one or more processors implement the resource allocation method provided by an embodiment of the present invention.

[0035] According to another aspect of an embodiment of the present invention, a computer readable medium is provided, on which a computer program is stored. When the program is executed by a processor, the resource allocation method provided by an embodiment of the present invention is implemented.

[0036] According to another aspect of an embodiment of the present invention, a computer program product is provided, including a computer program, and when the computer program is executed by a processor, the resource allocation method provided by an embodiment of the present invention is implemented.

[0037] An embodiment of the above invention has the following advantages or beneficial effects: the resource allocation method provided in the embodiment of the present invention can determine the bid for resources based on the resource demand type and resource demand parameters of the resource demand object, and realize the auction of resource units based on the bid, and allocate resources according to the auction results, thereby realizing intelligent allocation of resources. At the same time, the bid can accurately reflect the degree of resource demand of each object, and further resource allocation through auction can accurately allocate resources that meet the needs of each object, thereby improving the efficiency of resource allocation.

[0038] The further effects of the above-mentioned non-conventional optional manner will be described below in conjunction with the specific implementation manner. BRIEF DESCRIPTION OF THE DRAWINGS

[0039] The accompanying drawings are used to better understand the present invention and do not constitute an improper limitation of the present invention.

[0040] Figure 1 is a schematic diagram of main steps of a method for resource allocation according to an embodiment of the present invention;

[0041] Figure 2 is a schematic diagram of main modules of a device for resource allocation according to an embodiment of the present invention;

[0042] Figure 3 is an exemplary system architecture diagram to which embodiments of the present invention may be applied;

[0043] Figure 4 It is a schematic diagram of the structure of a computer system of a terminal device or a server suitable for implementing an embodiment of the present invention. DETAILED DESCRIPTION

[0044] The following is a description of exemplary embodiments of the present invention in conjunction with the accompanying drawings, including various details of the embodiments of the present invention to facilitate understanding, which should be considered as merely exemplary. Therefore, it should be recognized by those of ordinary skill in the art that various changes and modifications may be made to the embodiments described herein without departing from the scope and spirit of the present invention. Similarly, for clarity and conciseness, the description of well-known functions and structures is omitted in the following description.

[0045] It should be noted that the collection, collection, updating, analysis, processing, use, transmission, storage and other aspects of user personal information involved in the technical solution disclosed in the present invention are in compliance with the provisions of relevant laws and regulations, are used for legitimate purposes, and do not violate public order and good morals. Necessary measures are taken for user personal information to prevent illegal access to user personal information data and maintain the security of user personal information, network security and national security.

[0046] It should be noted that in the technical solution of the present invention, the collection, use, storage, sharing and transfer of user personal information involved are in compliance with the provisions of relevant laws and regulations, and it is necessary to inform the user and obtain the user's consent or authorization. When applicable, the user's personal information is de-identified and / or anonymized and / or encrypted.

[0047] Figure 1 FIG. 1 is a schematic diagram of the main steps of the method for resource allocation according to an embodiment of the present invention. Figure 1 As shown, including:

[0048] Step S101, obtaining a plurality of resource demand objects and resources to be allocated, wherein the resources to be allocated include a plurality of resource units, and the division of the resource units is determined based on historical resource demand data.

[0049] Before allocating resources, first obtain each resource demand object and the resources to be allocated in the system. The resources to be allocated include multiple resource units divided according to historical demand data. Among them, the resource demand object is each user or task; the resources to be allocated include CPU (central processing unit), memory, storage and network bandwidth.

[0050] Optionally, the resource unit division may be predicted based on historical resource demand data. For example, the divided resource unit may be the minimum resource amount among the resources whose usage frequency reaches a preset threshold in the historical resource demand data.

[0051] Optionally, each resource requirement object has a priority identifier, which can be used to determine the order of subsequent resource allocation operations, and give priority to the allocation tasks of resource requirement objects with higher priorities. The setting of the priority identifier can be set according to the user / task type, or according to the size of the required resources. The priority can also be set according to the importance and urgency of the task / user.

[0052] Step S102: Determine the required resource information of each resource requirement object, where the required resource information includes the required resource type and required resource parameters.

[0053] Determine the required resource information according to the obtained resource requirement objects, including the required resource type and required resource parameters of each object, that is, the size of the required resources. For example, task 1 requires 2 CPU cores and 3 GB of memory.

[0054] Optionally, after the acquired resource requirements are quantified, an identifier needs to be set for determining different resource requirement objects during subsequent resource allocation.

[0055] Optionally, the demand resource information of the acquired resource demand object can be obtained through intelligent prediction. Introduce machine learning algorithms to predict future resource demand based on historical data and prepare resources in advance. The steps are as follows: 1. Data collection and organization: Collect historical resource usage data, including CPU, memory, storage, and network bandwidth. Organize data, remove outliers, and ensure data quality. 2. Select appropriate machine learning algorithms: Select algorithms suitable for time series prediction, such as ARIMA (differential autoregressive moving average model), LSTM (long short-term memory artificial neural network model), etc. Also consider using ensemble learning methods such as random forest or XGBoost (distributed gradient boosting library) to improve prediction accuracy. 3. Model training and validation: Use historical data for model training, split data sets for training, validation, and testing. Improve the generalization ability of the model through cross-validation and hyperparameter optimization. 4. Prediction and evaluation: Regularly predict future resource demand and compare it with actual demand to evaluate the accuracy of the model. According to the prediction results, prepare and allocate resources in advance to reduce resource waste and shortage. 5. Continuous improvement: Update the model regularly and incorporate the latest data to improve the accuracy of the prediction. Adjust prediction models and algorithms based on user feedback and actual usage.

[0056] Step S103, obtaining an initial bid for each resource demand object, where the initial bid is determined based on the demand resource type and demand resource parameters.

[0057] Get the initial bid of each resource demand object for system resources. The initial bid is determined according to the size of the required resources. For example, task 1 requires 2 CPU cores and 3 GB memory, and the bid is 10; task 2 requires 2 CPU cores and 4 GB memory, and the bid is 15.

[0058] Optionally, historical bids need to be considered when determining the initial bid, and the initial bid for the current resource demand is determined based on the historical bids.

[0059] Step S104 , conducting resource auction based on the initial bid of each resource demand object, the resource type required by each resource demand object, the resource parameter required by each resource object and multiple resource units, and allocating resource units to each resource demand object according to the auction result.

[0060] After determining the initial bid, a resource auction is conducted based on the resource demand type, resource demand parameters and resource units of each resource demand object. The bid of each resource demand object for the resource unit is determined based on the initial bid, and the resource unit obtained by each resource demand object at the auction is determined based on the bid situation, i.e., the auction result. Furthermore, resource units, i.e., system resources, are allocated to each resource demand object based on the auction result.

[0061] The resource allocation method provided in an embodiment of the present invention can determine the bid for resources based on the resource demand type and resource demand parameters of the resource demand object, and realize auction of resource units based on the bid, and allocate resources according to the auction results, thereby realizing intelligent allocation of resources. At the same time, the bid can accurately reflect the degree of resource demand of each object, and further resource allocation through auction can accurately allocate resources that meet the needs of each object, thereby improving the efficiency of resource allocation.

[0062] Optionally, obtaining the initial bid for each resource demand object includes: determining the value of the required resource type of each resource demand object according to a preset resource value rule; and calculating the initial bid for each resource demand object based on the required resource type of each resource demand object and the value of each required resource type. When determining the initial bid for each resource demand object, it is necessary to determine its initial bid according to the configured resource price rule. Specifically, it includes: determining the value of each required resource type of the resource demand object according to the rules, and calculating the sum to obtain the initial bid for the resource demand. For example, the value of the CPU of Task 1 is 5, the value of the memory is 10, and the initial bid of Task 1 is 15.

[0063] Optionally, when determining the value of each resource type, calculation may be performed based on the demand for each resource type, for example, if a CPU 2 core is required, the value is 5, a CPU 3 core is required, the value is 7, and so on.

[0064] Optionally, the initial pricing of the resource demand object can be personalized. First, historical data analysis is performed, including collecting historical bids, transaction prices, and usage patterns of bidders (resource demand objects) for data analysis. Then, a pricing model is selected: a regression model (such as random forest regression or XGBoost) is used to predict the price sensitivity of bidders. Finally, a personalized strategy is set: based on the prediction results, a personalized initial auction price is set, taking into account the market average price and the bidder's ability to pay. Among them, the pricing model uses a supervised learning model for price prediction, uses bidder historical data as a training set, and uses a cross-validation method to optimize model parameters to ensure the accuracy and robustness of the model. The pricing model can be improved through data enhancement: increasing the diversity of training samples through data enhancement technology to improve the generalization ability of the model, or feature engineering: extracting more relevant features (such as the industry type of the bidder, regional market characteristics), improving the prediction accuracy of the model, and training improvements.

[0065] Optionally, a resource auction is conducted based on the initial bid of each resource demand object, the required resource type of each resource object, the required resource parameter of each resource object, and multiple resource units, including: determining the resource demand object corresponding to each resource unit based on the required resource type and required resource parameter of each resource demand object, wherein the resource demand object corresponding to each resource unit is an object of resources in the resource unit that can meet the resource demand object's demand; determining the first resource demand object among the resource demand objects corresponding to each resource unit according to the price priority rule and the priority priority rule, and obtaining the first auction result. When conducting a resource auction, the resource demand party is used as a bidder to participate in the auction of the resource unit. According to the initial bids of each bidder, the bid information obtained by each resource unit is determined. Among them, each bidder will only bid for the resource unit that can meet its resource demand. After obtaining the initial bid, further calculating the allocation of each resource unit according to the price priority rule and the priority rule, including giving priority to the higher price for multiple bid information received by a resource unit; and giving priority to the allocation of resources of the resource demand object with a higher priority. In addition, when multiple resource units receive bidding information for the same resource object, resource units that are more suitable for the resource object are preferentially allocated to the resource demand object.

[0066] Optionally, the method further includes: if there are resource demand objects with unallocated resource units in the first auction result, adjusting the initial bids of the resource demand objects with unallocated resource units based on the first auction result, and redetermining the resource demand objects corresponding to each resource unit based on the adjusted initial bids of each resource demand; redetermining the second resource demand object in the resource demand objects corresponding to each resource unit according to the price priority rule and the priority priority rule to obtain a second auction result; and repeatedly adjusting the initial bids of the resource demand objects with unallocated resource units until all resource demand objects have allocated resource units. If not all resource demand objects have been allocated resource units after the first round of bidding, the next round of auction is required, at which time the initial bids of the resource demand objects with unallocated resource units need to be adjusted, the bids need to be appropriately increased, and the new bids are resent to the resource units for the second round of resource auctions. Repeat the above operations until all resource demand objects are auctioned to resource units.

[0067] Optionally, if there are resource demand objects with unallocated resource units in the first auction result, adjusting the initial bid of the resource demand objects with unallocated resource units based on the first auction result includes: if there are resource demand objects with unallocated resource units in the first auction result, adjusting the initial bid of the resource demand objects with unallocated resource units based on the first auction result and a preset bid threshold of the resource demand objects with unallocated resource units. When adjusting the initial bid of the resource demand object, the bid may be appropriately increased, but it must be ensured that it does not exceed the bid threshold set for the resource demand object.

[0068] Optionally, each resource demand object needs to evaluate its demand for different types of resources and bid when determining the initial bid and subsequent bidding operations. Resource demand objects with the same required resource quantity may increase their bids by different amounts due to different demands for different types of resources.

[0069] The resource allocation method provided by the embodiment of the present invention can intelligently and dynamically adjust the bids of resource demand objects during the auction process, which helps to obtain the global optimal auction result.

[0070] Optionally, the method further includes: obtaining newly added indicators of resources to be allocated of multiple resource demand objects; determining the target bid of each resource demand object and the target value of multiple resource units included in the resources to be allocated based on the newly added indicators; conducting resource auctions based on the target bid, target value, multiple resource demand objects and multiple resource units, and allocating the resources to the resource units corresponding to each resource demand object according to the auction results. After determining that the bids and resource units of each resource demand object can be determined based on real-time indicators, such as newly added resource types, etc., it is necessary to re-auction in combination with the newly added indicators to obtain the auction results.

[0071] According to the resource allocation method provided in an embodiment of the present invention, since in the resource allocation process of the present invention, the data of the resource demand object can be real-time data, its various parameters can be dynamically adjusted, including various parameters involved in the initial bid determination process, such as resource type, etc., which can make the present invention applicable to more application scenarios and improve the flexibility of the solution.

[0072] Optionally, the division of resource units is determined based on historical resource demand data, which is achieved by: obtaining historical resource demand data within the target duration; adjusting the division rule of resource units using a reinforcement learning model based on the historical resource demand data within the target duration; and dividing system resources based on the adjusted division rule to obtain multiple resource units. The division of resource units can be determined based on the historical resource demand data within the target duration. Among them, the target duration can be selected according to actual conditions, such as 3 months in history, and there is no restriction on this. Dynamic unit division includes: adjustment rules: demand analysis: real-time monitoring of resource demand and market dynamics, using sliding window technology to analyze recent demand changes. Automatic adjustment: automatic adjustment of the size and type of resource units according to demand fluctuations to ensure flexibility in resource allocation. Priority rules: when resources are tight, priority is given to adjusting the configuration of high-demand resource units. Model implementation: using a reinforcement learning model (such as Deep Q-Network, DQN): dynamically adjusting the resource unit division strategy through trial and error learning. Training method: using historical demand data for simulation training, optimizing the unit division strategy to maximize resource utilization. Improved training methods: Adaptive learning rate: Adjust the learning rate according to the training progress to improve the convergence speed of the model. Multi-task learning: Simultaneously train multiple related tasks (such as the division of different resource types) to improve the generalization ability of the model.

[0073] According to the resource allocation method provided by the embodiment of the present invention, it is possible to predict the data of resource demand objects based on their historical data, including determining their bids for resources based on the resource demand type and resource demand parameters of the resource demand objects, auctioning based on the bids, and allocating resources based on the auction results, thereby realizing intelligent resource allocation. At the same time, resource allocation through auctioning can improve resource allocation efficiency. In addition, bids can be intelligently adjusted during the auction process to achieve global optimization of resource allocation, further improving the accuracy and rationality of resource allocation.

[0074] The resource auction process of the present invention is explained based on a specific example. Assume that there is a cloud computing platform with three virtual machines (VMs) and three tasks (Tasks) that need to allocate resources. The resource requirements (CPU, memory) and budget of each task are different. Virtual machine (VM) and task (Task) situation: VM1: CPU 2 cores, memory 4GB; VM2: CPU 3 cores, memory 6GB; VM3: CPU 4 cores, memory 8GB; Task1: CPU 2 cores, memory 3GB, budget 10; Task2: CPU 2 cores, memory 4GB, budget 15; Task3: CPU 3 cores, memory 6GB, budget 20.

[0075] Auction process:

[0076] Initialize auction: Each virtual machine is used as an auction object and an initial price is set.

[0077] First round of bidding:

[0078] Task1 bids 10, hoping to get any VM that meets its needs.

[0079] Task 2 bids 15, also hoping to get any VM that meets its needs.

[0080] Task3 bids 20 and hopes to get a VM with at least 3 CPU cores and at least 6 GB of memory.

[0081] First round of allocation:

[0082] VM1 receives bids from Task1 and Task2 and is assigned to Task2 first based on price because its bid is higher.

[0083] VM2 and VM3 receive bids from Task3. Since VM3's resources better meet Task3's requirements, they are allocated to Task3 first.

[0084] Second round of bidding:

[0085] Task1 needs to re-bid, and it raises its bid to 12.

[0086] Second round of allocation:

[0087] VM1 is now assigned to Task1 according to the new bid.

[0088] Auction ends:

[0089] Task1 gets VM1 with a price of 12.

[0090] Task2 gets VM2 at a price of 15.

[0091] Task3 gets VM3 at a price of 20.

[0092] The purpose of the auction is to obtain the overall optimal result. The final result is the optimal allocation result for all demand objects, rather than the optimal allocation result for a single resource demand object.

[0093] Figure 2 is a schematic diagram of a resource allocation device 200 provided in an embodiment of the present invention, such as Figure 2 As shown, including:

[0094] An acquisition module 201 is used to acquire a plurality of resource demand objects and resources to be allocated, wherein the resources to be allocated include a plurality of resource units, and the division of the resource units is determined based on historical resource demand data;

[0095] A determination module 202 is used to determine the required resource information of each resource requirement object, where the required resource information includes the required resource type and required resource parameters;

[0096] An acquisition module 201 is used to acquire an initial bid for each resource demand object, where the initial bid is determined based on the resource type and resource parameters of the demand;

[0097] The allocation module 203 is used to conduct resource auction based on the initial bid of each resource demand object, the required resource type of each resource demand object, the required resource parameters of each resource object and multiple resource units, and allocate resource units to each resource demand object according to the auction results.

[0098] The resource allocation device provided in accordance with the embodiment of the present invention can determine the bid for resources based on the resource demand type and resource demand parameters of the resource demand object, and realize auction of resource units based on the bid, and allocate resources according to the auction results, thereby realizing intelligent allocation of resources. At the same time, the bid can accurately reflect the degree of resource demand of each object, and further resource allocation through auction can accurately allocate resources that meet its needs to each object, thereby improving the efficiency of resource allocation.

[0099] Optionally, the acquisition module 201 is further used to: determine the value of the required resource type of each resource demand object according to a preset resource value rule;

[0100] An initial bid for each resource demand object is obtained based on the demand resource type of each resource demand object and the value of each demand resource type.

[0101] Optionally, the allocation module 203 is further used to: determine the resource demand object corresponding to each resource unit based on the demand resource type and demand resource parameter of each resource demand object, wherein the resource demand object corresponding to each resource unit is an object of resources in which the resources in the resource unit can meet the demand of the resource demand object;

[0102] According to the price priority rule and the priority priority rule, the first resource demand object among the resource demand objects corresponding to each resource unit is determined to obtain a first auction result.

[0103] Optionally, the apparatus further includes: a determination module 204 (not shown in the figure), configured to adjust the initial bid of the resource demand object of the unallocated resource unit based on the first auction result if there is a resource demand object of the unallocated resource unit in the first auction result, and re-determine the resource demand object corresponding to each resource unit based on the adjusted initial bid of each resource demand;

[0104] Re-determine the second resource demand object in the resource demand object corresponding to each resource unit according to the price priority rule and the priority priority rule to obtain a second auction result;

[0105] Adjusting the initial bids of the resource requirement objects that have not been allocated resource units is repeatedly performed until all resource requirement objects have allocated resource units.

[0106] Optionally, determination module 204 is further used to: if there are resource demand objects of unallocated resource units in the first auction result, adjust the initial bid of the resource demand objects of the unallocated resource units based on the first auction result and a preset bid threshold of the resource demand objects of the unallocated resource units.

[0107] Optionally, the device also includes: an acquisition module 201, which is also used to acquire new indicators of resources to be allocated for multiple resource demand objects; a determination module 204, which is also used to determine the target bid of each resource demand object and the target value of multiple resource units included in the resources to be allocated based on the new indicators; an allocation module 203, which is also used to auction resources based on the target bid, target value, multiple resource demand objects and multiple resource units, and allocate resources to the resource units corresponding to each resource demand object according to the auction results.

[0108] Optionally, the division of resource units is determined based on historical resource demand data and is achieved in the following manner:

[0109] Obtain historical resource demand data within the target time period;

[0110] Based on the historical resource demand data within the target time, the reinforcement learning model is used to adjust the resource unit division rules;

[0111] The system resources are divided based on the adjusted division rule to obtain a plurality of resource units.

[0112] The resource allocation device provided by the embodiment of the present invention can predict the data of resource demand objects based on their historical data, including determining their bids for resources based on the resource demand type and resource demand parameters of the resource demand objects, auctioning based on the bids, and allocating resources based on the auction results, thereby realizing intelligent resource allocation. At the same time, resource allocation through auction can improve resource allocation efficiency. In addition, bids can be intelligently adjusted during the auction process to achieve global optimization of resource allocation, further improving the accuracy and rationality of resource allocation.

[0113] Figure 3 An exemplary system architecture 300 is shown to which the method or apparatus for resource allocation according to an embodiment of the present invention can be applied.

[0114] like Figure 3As shown, the system architecture 300 may include terminal devices 301, 302, 303, a network 304 and a server 305. The network 304 is used to provide a medium for communication links between the terminal devices 301, 302, 303 and the server 305. The network 304 may include various connection types, such as wired, wireless communication links or optical fiber cables, etc.

[0115] Users can use terminal devices 301, 302, 303 to interact with server 305 through network 304 to receive or send messages, etc. Various communication client applications can be installed on terminal devices 301, 302, 303, such as shopping applications, web browser applications, search applications, instant messaging tools, email clients, social platform software, etc. (only for example).

[0116] The terminal devices 301 , 302 , and 303 may be various electronic devices having a display screen and supporting web browsing, including but not limited to smart phones, tablet computers, laptop computers, and desktop computers, etc.

[0117] The server 305 may be a server that provides various services, such as a backend management server (only an example) that provides support for shopping websites browsed by users using the terminal devices 301, 302, and 303. The backend management server may analyze and process the received data such as the allocation request, and feed back the processing result (such as the allocation result - only an example) to the terminal device.

[0118] It should be noted that the resource allocation method provided in the embodiment of the present invention is generally executed by the server 305 , and accordingly, the resource allocation device is generally set in the server 305 .

[0119] It should be understood that Figure 3 The number of terminal devices, networks and servers in the embodiment is only for illustration. Any number of terminal devices, networks and servers may be provided according to the implementation requirements.

[0120] Reference below Figure 4 , which shows a schematic diagram of the structure of a computer system 400 of a terminal device or a server suitable for implementing an embodiment of the present invention. Figure 4 The terminal device or server shown is only an example and should not bring any limitation to the functions and scope of use of the embodiments of the present invention.

[0121] like Figure 4As shown, the computer system 400 includes a central processing unit (CPU) 401, which can perform various appropriate actions and processes according to a program stored in a read-only memory (ROM) 402 or a program loaded from a storage part 408 into a random access memory (RAM) 403. In the RAM 403, various programs and data required for the operation of the system 400 are also stored. The CPU 401, the ROM 402, and the RAM 403 are connected to each other through a bus 404. An input / output (I / O) interface 405 is also connected to the bus 404.

[0122] The following components are connected to the I / O interface 405: an input section 406 including a keyboard, a mouse, etc.; an output section 407 including a cathode ray tube (CRT), a liquid crystal display (LCD), etc., and a speaker, etc.; a storage section 408 including a hard disk, etc.; and a communication section 409 including a network interface card such as a LAN card, a modem, etc. The communication section 409 performs communication processing via a network such as the Internet. A drive 410 is also connected to the I / O interface 405 as needed. A removable medium 411, such as a magnetic disk, an optical disk, a magneto-optical disk, a semiconductor memory, etc., is installed on the drive 410 as needed, so that a computer program read therefrom is installed into the storage section 408 as needed.

[0123] In particular, according to the embodiments disclosed in the present invention, the process described above with reference to the flowchart can be implemented as a computer software program. For example, the embodiments disclosed in the present invention include a computer program product, which includes a computer program carried on a computer-readable medium, and the computer program contains program code for executing the method shown in the flowchart. In such an embodiment, the computer program can be downloaded and installed from the network through the communication part 409, and / or installed from the removable medium 411. When the computer program is executed by the central processing unit (CPU) 401, the above-mentioned functions defined in the system of the present invention are executed.

[0124] It should be noted that the computer-readable medium shown in the present invention may be a computer-readable signal medium or a computer-readable storage medium or any combination of the above two. The computer-readable storage medium may be, for example, but not limited to, an electrical, magnetic, optical, electromagnetic, infrared, or semiconductor system, device or device, or any combination of the above. More specific examples of computer-readable storage media may include, but are not limited to: an electrical connection with one or more wires, a portable computer disk, a hard disk, a random access memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or flash memory), an optical fiber, a portable compact disk read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination of the above. In the present invention, a computer-readable storage medium may be any tangible medium containing or storing a program that can be used by or in combination with an instruction execution system, device or device. In the present invention, a computer-readable signal medium may include a data signal propagated in a baseband or as part of a carrier wave, which carries a computer-readable program code. This propagated data signal may take a variety of forms, including but not limited to electromagnetic signals, optical signals, or any suitable combination of the above. Computer-readable signal media may also be any computer-readable medium other than computer-readable storage media, which may send, propagate or transmit a program for use by or in conjunction with an instruction execution system, apparatus or device. The program code contained on the computer-readable medium may be transmitted using any appropriate medium, including but not limited to: wireless, wire, optical cable, RF, etc., or any suitable combination of the above.

[0125] The flow chart and block diagram in the accompanying drawings illustrate the possible architecture, function and operation of the system, method and computer program product according to various embodiments of the present invention. In this regard, each box in the flow chart or block diagram can represent a module, a program segment, or a part of a code, and the above-mentioned module, program segment, or a part of a code contains one or more executable instructions for realizing the specified logical function. It should also be noted that in some alternative implementations, the functions marked in the box can also occur in a different order from the order marked in the accompanying drawings. For example, two boxes represented in succession can actually be executed substantially in parallel, and they can sometimes be executed in the opposite order, depending on the functions involved. It should also be noted that each box in the block diagram or flow chart, and the combination of the boxes in the block diagram or flow chart can be implemented with a dedicated hardware-based system that performs a specified function or operation, or can be implemented with a combination of dedicated hardware and computer instructions.

[0126] The units or modules involved in the embodiments of the present invention may be implemented in software or hardware. The units or modules described may also be set in a processor. For example, they may be described as: a processor includes an acquisition module, an allocation module, and a determination module. The names of these units or modules do not, in some cases, constitute limitations on the units or modules themselves. For example, the acquisition module may also be described as a "module for acquiring multiple resource demand objects and resources to be allocated."

[0127] As another aspect, the present invention further provides a computer-readable medium, which may be included in the device described in the above embodiment; or may exist independently without being assembled into the device. The above computer-readable medium carries one or more programs, and when the above one or more programs are executed by a device, the device includes:

[0128] Acquire multiple resource demand objects and resources to be allocated, where the resources to be allocated include multiple resource units, and the division of the resource units is determined based on historical resource demand data;

[0129] Determine the required resource information of each resource requirement object, the required resource information includes the required resource type and required resource parameters;

[0130] Obtaining an initial bid for each resource requirement object, where the initial bid is determined based on the required resource type and required resource parameters;

[0131] A resource auction is conducted based on an initial bid of each resource demand object, a required resource type of each resource demand object, a required resource parameter of each resource object and a plurality of resource units, and a resource unit is allocated to each resource demand object according to the auction result.

[0132] According to the technical solution of the embodiments of the present invention, the resource allocation method provided by the embodiments of the present invention can determine the bid for resources based on the resource demand type and resource demand parameters of the resource demand object, and realize auction of resource units based on the bid, and allocate resources according to the auction results, thereby realizing intelligent allocation of resources. At the same time, the bid can accurately reflect the degree of resource demand of each object, and further resource allocation through auction can accurately allocate resources that meet its needs to each object, thereby improving the efficiency of resource allocation.

[0133] The above specific implementations do not constitute a limitation on the protection scope of the present invention. It should be understood by those skilled in the art that various modifications, combinations, sub-combinations and substitutions may occur depending on design requirements and other factors. Any modification, equivalent substitution and improvement made within the spirit and principle of the present invention shall be included in the protection scope of the present invention.

Claims

1. A method for resource allocation, characterized in that: include: Acquire multiple resource demand objects and resources to be allocated, wherein the resources to be allocated include multiple resource units, and the division of the resource units is determined based on historical resource demand data; Determine the required resource information of each resource requirement object, wherein the required resource information includes a required resource type and a required resource parameter; Obtaining an initial bid for each resource demand object, wherein the initial bid is determined based on the demand resource type and the demand resource parameter; A resource auction is conducted based on the initial bid of each resource demand object, the resource type required by each resource demand object, the resource parameters required by each resource object and the multiple resource units, and a resource unit is allocated to each resource demand object according to the auction result.

2. The method according to claim 1, characterized in that The obtaining of the initial bid of each resource demand object comprises: Determine the value of the required resource type of each resource demand object according to the preset resource value rule; An initial bid for each resource demand object is obtained based on the required resource type of each resource demand object and the value of each required resource type.

3. The method according to claim 1, characterized in that: The resource auction based on the initial bid of each resource demand object, the demand resource type of each resource object, the demand resource parameter of each resource object and the multiple resource units includes: Determine the resource demand object corresponding to each resource unit based on the demand resource type and demand resource parameter of each resource demand object, wherein the resource demand object corresponding to each resource unit is an object of resources within the resource unit that can meet the resource demand object; According to the price priority rule and the priority priority rule, the first resource demand object among the resource demand objects corresponding to each resource unit is determined to obtain a first auction result.

4. The method according to claim 3, characterized in that The method further comprises: If there are resource demand objects of unallocated resource units in the first auction result, adjusting the initial bids of the resource demand objects of the unallocated resource units based on the first auction result, and re-determining the resource demand objects corresponding to each resource unit based on the adjusted initial bids of each resource demand; Re-determine the second resource demand object in the resource demand object corresponding to each resource unit according to the price priority rule and the priority priority rule to obtain a second auction result; The initial bids of the resource requirement objects that have not been allocated resource units are adjusted repeatedly until all resource requirement objects have allocated resource units.

5. The method according to claim 4, characterized in that If there is a resource demand object of unallocated resource units in the first auction result, adjusting the initial bid of the resource demand object of unallocated resource units based on the first auction result includes: If there are resource demand objects of unallocated resource units in the first auction result, the initial bid of the resource demand objects of the unallocated resource units is adjusted based on the first auction result and a preset bid threshold of the resource demand objects of the unallocated resource units.

6. The method according to claim 1, characterized in that The method further comprises: Get new indicators of resources to be allocated for multiple resource demand objects; Determine a target bid for each resource demand object and a target value of a plurality of resource units included in the resources to be allocated based on the newly added indicator; A resource auction is conducted based on the target bid, the target value, the multiple resource demand objects and the multiple resource units, and resource units corresponding to each resource demand object are allocated according to the auction result.

7. The method according to claim 1, characterized in that The division of resource units is determined based on historical resource demand data and is achieved in the following manner: Obtain historical resource demand data within the target time period; Based on the historical resource demand data within the target duration, a reinforcement learning model is used to adjust the resource unit division rules; The system resources are divided based on the adjusted division rule to obtain a plurality of resource units.

8. A resource allocation device, characterized in that: include: An acquisition module, used for acquiring a plurality of resource demand objects and resources to be allocated, wherein the resources to be allocated include a plurality of resource units, and the division of the resource units is determined based on historical resource demand data; A determination module, used to determine the required resource information of each resource requirement object, wherein the required resource information includes the required resource type and required resource parameters; The acquisition module is used to acquire an initial bid for each resource demand object, where the initial bid is determined based on the resource type of the demand and the resource parameters of the demand; An allocation module is used to conduct resource auctions based on the initial bid of each resource demand object, the required resource type of each resource demand object, the required resource parameters of each resource object and the multiple resource units, and allocate resource units to each resource demand object according to the auction results.

9. An electronic device, characterized in that: include: one or more processors; a storage device for storing one or more programs, When the one or more programs are executed by the one or more processors, the one or more processors implement the method according to any one of claims 1 to 7.

10. A computer readable medium having a computer program stored thereon, characterized in that: When the computer program is executed by a processor, the method according to any one of claims 1 to 7 is implemented.

11. A computer program product, comprising a computer program, characterized in that When the computer program is executed by a processor, the method according to any one of claims 1 to 7 is implemented.