OPTIMIZATION METHOD, OPTIMIZATION DEVICE, AND PROGRAM

The optimization method enhances online stochastic matching by controlling node appearance probabilities and weights, improving profit in applications like crowdsourcing and taxi dispatch platforms through a 1-1/e approximation.

JP7605317B2Active Publication Date: 2024-12-24NIPPON TELEGRAPH & TELEPHONE CORP
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
JP2023532875
Authority / Receiving Office
JP · JP
Patent Type
Patents
Current Assignee / Owner
Filing Date
2021-07-05
Publication Date
2024-12-24
Estimated Expiration
2041-07-05

AI Technical Summary

Technical Problem

Conventional online stochastic matching techniques only consider complete dichotomous graphs with uniform edge weights and one-dimensional node appearance probabilities, leading to reduced profits in applications like crowdsourcing and taxi dispatch platforms.

Method used

An optimization method that formulates a profit-maximizing matching problem by controlling the appearance probability and weight of each node, using a probability function and value to determine an optimal matching strategy, with a guaranteed 1-1/e approximation rate.

Benefits of technology

Improves the profit of service providers by optimizing the matching process, addressing non-uniform edge weights and node probabilities, thereby enhancing the efficiency of online probability matching.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 0007605317000009
    Figure 0007605317000009
  • Figure 0007605317000010
    Figure 0007605317000010
  • Figure 0007605317000011
    Figure 0007605317000011
Patent Text Reader

Abstract

An optimization method according to an embodiment optimizes a matching problem between a first set of nodes U that probabilistically occur and a given second set of nodes V, wherein a computer performs: an input procedure for inputting a probability function pu representing the probability of occurrence of a first node u∈U, and the value wuv of matching the first node u∈U to a second node v∈V; a formulation procedure for using the probability function pu and the value wuv to formulate a first optimization problem representing a problem for maximizing the profit determined by the value wuv and a control variable xu for controlling the probability function pu; and an optimization procedure for solving the first optimization problem in accordance with the characteristics of the probability function pu and thereby calculating at least a set of optimum values x*=(xu *)u∈U for the control variable xu that maximize the profit.
Need to check novelty before this filing date? Find Prior Art

Description

[Technical field]

[0001] The present invention relates to an optimization method, an optimization device, and a program. [Background technology]

[0002] Online probabilistic matching is known as an optimization problem with various applications. It is a special matching problem for a bipartite graph G = (U, V, E). In this problem, we know the node set V in advance but not the node set U in advance. We assign v ∈ V to each u ∈ U that appears sequentially (i.e., assign an edge e with a weight between v ∈ V and u ∈ U). uv ∈E). An example of an application is internet advertising allocation, where a given advertising space v∈V is allocated to a website visitor u∈U on whose website it is not known in advance. Other applications include crowdsourcing, which allocates tasks v∈V to workers u∈U that appear sequentially via the internet, and taxi dispatch platforms, which allocate taxis v∈V to customers u∈U that appear sequentially.

[0003] Here, in online probabilistic matching, we may consider a variable x that can control the appearance probability of each node u∈U. Such a variable x appears commonly in many applications. For example, in crowdsourcing, we can consider that a worker u∈U appears probabilistically depending on the value of a variable x that represents wages, remuneration, etc. Also, for example, in a taxi dispatch platform, we can consider that a customer u∈U appears probabilistically depending on the value of a variable x that represents the fare.

[0004] Examples of conventional online probabilistic matching techniques that introduce a variable x that can control the occurrence probability of each node u∈U include techniques described in Non-Patent Document 1 and Non-Patent Document 2. Non-Patent Document 1 describes a price optimization technique in crowdsourcing, and Non-Patent Document 2 describes a price optimization technique in a product buying and selling market. [Prior art documents] [Non-patent literature]

[0005] [Non-Patent Document 1] Yaron Singer and Manas Mittal. Pricing mechanisms for crowdsourcing markets. In WWW, pp. 1157-1166, 2013. [Non-Patent Document 2] Moshe Babaioff, Shaddin Dughmi, Robert Kleinberg, and Aleksandrs Slivkins. Dynamic pricing with limited supply. ACM Trans. Econ. Comput., Vol.3, No.1, March 2015. Summary of the Invention [Problem to be solved by the invention]

[0006] However, the conventional techniques described in Non-Patent Documents 1 and 2 have the following two problems.

[0007] (1) It only considers complete bipartite graphs in which each edge has uniform weight.

[0008] (2) Each node has a common probability of occurrence, and the variable x that controls them is one-dimensional.

[0009] These two problems are likely to cause a decline in the final profits obtained in each application. Note that the profits are the profits obtained by service providers such as crowdsourcing and taxi dispatch platforms (for example, the total difference between the reward obtained by having a worker perform a task and the wage paid to the worker, the total difference between the fare received from the customer and the transportation cost by taxi, etc.).

[0010] An embodiment of the present invention has been made in view of the above, and aims to improve the benefits of online probabilistic matching. [Means for solving the problem]

[0011] In order to achieve the above object, an optimization method according to one embodiment is an optimization method for optimizing a matching problem between a first node set U that appears probabilistically and a given second node set V, the optimization method including: u and the value w of matching the first node u ∈ U with the second node v ∈ V uv and the probability function p u and the value w uv Using the probability function p u Control variable x to control u and the value w uv and a formulation procedure for formulating a first optimization problem representing a problem of maximizing a profit determined by the probability function p u According to the characteristics of the control variable x that maximizes the profit by solving the first optimization problem, u The optimal set of values ​​x * =(x u * ) u∈U and an optimization procedure for calculating at least: Effect of the Invention

[0012] The benefits of online probability matching can be improved. [Brief description of the drawings]

[0013] [Figure 1] FIG. 13 is a diagram illustrating an example of a problem setting. [Diagram 2] FIG. 1 illustrates an example of a minimum cost flow problem. [Diagram 3] FIG. 2 is a diagram illustrating an example of a functional configuration for an optimization problem according to the present embodiment. [Figure 4] 10 is a flowchart showing an example of the flow of an optimization process according to the present embodiment. [Diagram 5] 10 is a flowchart showing an example of the flow of a solution calculation process for an optimization problem according to the present embodiment. [Figure 6] FIG. 2 is a diagram illustrating an example of a hardware configuration of an optimization device according to the present embodiment. DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS

[0014] An embodiment of the present invention will now be described, in which an optimization device 10 capable of improving the benefits of online probability matching will be described.

[0015] <Theoretical configuration of this embodiment> The theoretical configuration of this embodiment will be described.

[0016] <Problems with the prior art> As described above, the conventional techniques described in Non-Patent Documents 1 and 2 have the following two problems.

[0017] (1) It only considers complete bipartite graphs in which each edge has uniform weight.

[0018] (2) Each node has a common probability of occurrence, and the variable x that controls them is one-dimensional.

[0019] First, we will explain the problem described in (1). In actual applications, each edge often has a different weight. For example, in crowdsourcing, the weight of each edge represents the compatibility between the worker and the task connected by that edge, but the compatibility is thought to change for each combination of worker and task. In addition, in a taxi dispatch platform, the weight of each edge represents the distance between the customer and the taxi, but the distance is thought to change for each combination of customer and taxi. Furthermore, in actual applications, it is often not possible to express it as a complete bipartite graph. For this reason, if the variable x or matching is optimized under the constraints of (1) above without taking these factors into consideration, it is thought that this will cause a decrease in the profits that the service provider can ultimately obtain.

[0020] Next, we will explain the problem described in (2). In actual applications, each node u∈U does not necessarily appear with the same probability of appearance, and the variable x that controls the probability of appearance is not necessarily one. For example, in crowdsourcing, the probability of appearance of workers with high skills and workers with general skills is considered to be different. It is also common to pay higher wages to workers with higher skills. For this reason, if the variable x and matching are optimized under the constraints of (2) above without taking these into consideration, it is likely to cause a decrease in the profits that the service provider ultimately obtains.

[0021] Therefore, in this embodiment, an optimization problem is formulated by removing the constraints (1) and (2) above, and an approximation method is proposed for this optimization problem that guarantees an approximation rate of (1-1 / e).

[0022] <Problem definition and formulation> First, consider a problem formulation that removes the constraints (1) and (2) above. For example, as shown in Figure 1, V = {v1, v2, v3, v4}, U = {u1, u2, u3}, and the variable that controls the occurrence probability of node u∈U is x u , the occurrence probability of node u∈U is p u (x u), edge e connecting node v ∈ V and node u ∈ U uv ∈E's weight is w uv +x u In FIG. 1, |V|=4 and |U|=3, but this is just an example, and |V| and |U| can be any natural number.

[0023] In this case, when you perform steps 1 and 2 below, what is the best way to get the most profit from x=(x u ) u∈U The purpose is to determine a matching method (hereinafter referred to as a matching strategy) for (v,u). As shown in Figure 1, the probability of a node not appearing (i.e., the probability that no node u appears) is p u (x u ) minus 1.

[0024] Step 1: Variable x = (x u ) u∈U Determine.

[0025] Step 2: Repeat the following trials (a) to (c) n times (n is a predetermined natural number).

[0026] (a) Probability of occurrence p u (x u ) according to node u i ∈U. At this time, the node u i There can be at most one, and it may not occur at all. i If appears, proceed to (b); if not, end the trial.

[0027] (b) Each node u that appeared in (a) above i For node u, according to the matching strategy, i Matching with node v∈V gives profit w uv +x u At this time, node u i It is possible that u does not match any node v∈V. i If is not matched with any node v∈V, the profit wuv +x u cannot be obtained.

[0028] (c) Delete node v in (u,v) that was matched in (b) above.

[0029] For example, in crowdsourcing, node u∈U is a worker, node v∈V is a task, and w uv is the reward (positive value) obtained by having worker u execute task v, and x u For example, in a taxi dispatch platform, node u∈U is a customer, node v∈V is a taxi, and w uv is the transportation cost (negative value) of gasoline, etc. required to transport customer u to the destination, and x u is the freight charge (positive value) received from customer u.

[0030] The final x and matching strategy that will yield the greatest profit can be obtained by solving the following optimization problem (P).

[0031]

number

[0032] In other words, the above optimization problem (P) is a problem of maximizing the expected value of the profit obtained by the variable x that controls the appearance probability of each node u∈U and the matching strategy π.

[0033] <<Solution of optimization problem (P)>> By solving the above optimization problem (P), the optimal variable x=(x u ) u∈U and a matching strategy π can be determined. When solving the optimization problem (P), any optimization method can be used as long as it can derive an optimal solution or an approximate solution. For example, a solution may be obtained using a genetic algorithm or Bayesian optimization, or a new algorithm proposed in the future may be used.

[0034] However, since there is currently no conventional method that can solve the optimization problem (P) within a realistic time, we propose an approximate solution method below. After completing the common procedure 2-1, this approximate solution method branches into either procedure 2-2a or 2-2b depending on whether the following assumption 1 is satisfied.

[0035] Assumption 1: For all u∈U, p u (x u ) → 0(x u →∞), and 1-p u (x u ) is the monotone hazard rate function. u (x u ) is bijective.

[0036] This assumption 1 is p u This is a weak assumption because it includes the normal distribution, the uniform distribution, the complementary cumulative distribution function of the exponential distribution, etc.

[0037] In addition, q u (x u ):=1-p u (x u ), then (q' u (x u )) / (1-q u (x u )) is x u When q is monotonically non-increasing, u (x u ) is x uIt is said to be a monotone hazard rate function.

[0038] Procedure 2-1: Function max π E A~P(·|x) Approximation of [f(x,π,A)] First, the function max π E A~P(·|x) We give a function that approximates [f(x,π,A)]. For a given x, we use the matching strategies described in the following references: H Let's call it (x).

[0039] References: Brian Brubach, Karthik Abinav Sankararaman, Aravind Srinivasan, Pan Xu, Online Stochastic Matching: New Algorithms and Bounds, arXiv:1606.06395v4 [cs.DS] In more detail, we use the matching strategy realized by “Algorithm 9: SM” described in “5 Non-integral arrival rates with stochastic rewards.” in the above reference. H (x). In “Algorithm 9: SM” described in this reference, an optimization problem (linear programming problem) shown in equations (13) to (16) in the reference is solved, and a matching strategy is determined based on the result.

[0040] In addition, the optimal value of the following linear programming problem is * Let's call it (x).

[0041]

number

[0042] Therefore, in this case, the following inequality holds according to "Theorem 4." in the above reference. Note that "Theorem 4." shows that "Algorithm 9: SM" is a (1-1 / e) approximation matching strategy.

[0043]

number

[0044] optimization problem max x L * (x) can be written as follows:

[0045]

number

[0046] Procedure 2-2a: Solution of the optimization problem (AP) when assumption 1 is satisfied If Assumption 1 is satisfied, the first constraint of the optimization problem (AP) is the optimal solution x * Since the equality always holds, in the optimization problem (AP),

[0047]

number

[0048]

number

[0049] The optimal solution z of the problem shown in Eq. * =(z uv * ) u∈U,v∈V About

[0050]

number

[0051] In this case, we prepare new subscripts s and t. For all u, z su :=Σ v z uv Then, for all v, z vt :=Σ u z uv Let us assume that z st Assuming that the slack variables are used, the problem shown in Equation 6 above can be rewritten as follows:

[0052]

number

[0053] In this case, it can be shown that the objective function of the optimization problem (FP) is a convex function according to Assumption 1. Therefore, the optimization problem (FP) becomes a minimum convex cost flow problem with a capacity constraint, and can be solved quickly using existing solutions.

[0054] Procedure 2-2b: Solution of the optimization problem (AP) when assumption 1 is not satisfied If assumption 1 is not met (i.e., occurrence probability p u (x u ) is a general function that does not satisfy Assumption 1), the optimization problem (AP) is a non-convex optimization problem. Therefore, the optimal solution or an approximate solution of the optimization problem (AP) can be obtained by using a heuristic solution method or an approximate solution method such as Bayesian optimization or simulated annealing.

[0055] <Functional configuration of optimization device 10> The functional configuration of the optimization device 10 according to this embodiment is shown in Fig. 3. As shown in Fig. 3, the optimization device 10 according to this embodiment has an input unit 101, a formulation unit 102, an optimization unit 103, and an output unit 104.

[0056] The input unit 101 is a unit for inputting various parameters (probability function p u (x u ), the value of matching node u with node v is w uv ) is input to the input unit 101. The input unit 101 may input these various parameters from any input source. For example, the input unit 101 may input these various parameters by reading them from an auxiliary storage device or the like, may input them by receiving them from another device or the like connected via a communication network or the like, or may input them by accepting an input operation by a user or the like.

[0057] The formulation unit 102 uses various parameters input by the input unit 101 to formulate the optimization problem (P).

[0058] The optimization unit 103 calculates an approximate solution to the optimization problem (P) formulated by the formulation unit 102. At this time, the optimization unit 103 transforms the optimization problem (P) into an optimization problem (AP), and calculates the approximate solution by either procedure 2-2a or 2-2b depending on whether assumption 1 is satisfied.

[0059] The output unit 104 outputs the approximate solution calculated by the optimization unit 103. The output unit 104 may output the approximate solution to any output destination. For example, the output unit 104 may output (save) the approximate solution to an auxiliary storage device or the like, output (transmit) the approximate solution to another device or the like connected via a communication network or the like, or output (display) the approximate solution on a display device such as a display.

[0060] 3 shows a case where each functional unit is included in one optimization device 10, but the present invention is not limited to this, and each functional unit may be distributed among a plurality of devices. For example, there may be two devices, a formulation device and an optimization device, and the formulation device may have the formulation unit 102 and the optimization device may have the optimization unit 103.

[0061] <Optimization process flow> The flow of the optimization process executed by the optimization device 10 according to this embodiment will be described with reference to FIG.

[0062] First, the input unit 101 inputs various parameters (probability function p u (x u ), the value of matching node u with node v is w uv ) (Step S101).

[0063] Next, the formulation unit 102 formulates the optimization problem (P) using the various parameters input in the above step S101 (step S102).

[0064] Next, the optimization unit 103 calculates an approximate solution to the optimization problem (P) formulated in the above step S102 (step S103). The process flow of this step S103 will be described later in detail.

[0065] Then, the output unit 104 outputs the approximate solution calculated in the above step S103 (step S104).

[0066] Here, the details of the process flow of step S103 above will be described with reference to FIG.

[0067] First, the optimization unit 103 transforms the optimization problem (P) formulated in the above step S102 into an optimization problem (AP) (step S201). That is, the optimization unit 103 transforms the optimization problem (P) into the optimization problem (AP) by the above procedure 2-1.

[0068] Next, the optimization unit 103 judges whether the above assumption 1 is satisfied (step S202). That is, the optimization unit 103 determines whether the probability function p u (x u ) satisfies assumption 1.

[0069] If it is determined in step S202 that assumption 1 is satisfied, the optimization unit 103 transforms the optimization problem (AP) into an optimization problem (FP) and calculates a solution using an existing solution method for a minimum convex cost flow problem (step S203). That is, the optimization unit 103 calculates a solution using the above procedure 2-2a. As a result, the optimal solution z * Therefore, the optimal solution (p * ,z * ) is obtained, and the optimal solution (x * ,π * ) is obtained. As mentioned above, this optimal solution (x * ,π * ) is a 1-1 / e approximation to the solution of the optimization problem (P).

[0070] On the other hand, if it is not determined in step S202 that assumption 1 is satisfied, the optimization unit 103 calculates a solution to the optimization problem (AP) by a heuristic solution method or an approximation solution method (step S204). That is, the optimization unit 103 calculates a solution by the above procedure 2-2b.

[0071] As described above, the optimization device 10 according to this embodiment formulates an optimization problem (P) from which the above constraints (1) and (2) are removed, and calculates a solution to this optimization problem (P) that guarantees an approximation rate of (1-1 / e) if the above assumption 1 is satisfied. This makes it possible to improve the profits of service providers in applications of online probabilistic matching that can be formulated as an optimization problem (P) (for example, crowdsourcing and taxi dispatch platforms, etc.).

[0072] The optimization device 10 according to the present embodiment calculates a solution (x * ,π * ), but also to provide a solution (x * ,π * The optimization device 10 according to the present embodiment may be incorporated as part of a server or system that realizes a crowdsourcing or taxi dispatch platform, for example, and may have a function of setting a solution (x * ,π * ) may be capable of performing the actual matching.

[0073] <Hardware configuration of optimization device 10> The hardware configuration of the optimization device 10 according to this embodiment is shown in Fig. 6. As shown in Fig. 6, the optimization device 10 according to this embodiment is realized by the hardware configuration of a general computer or computer system, and has an input device 201, a display device 202, an external I / F 203, a communication I / F 204, a processor 205, and a memory device 206. Each of these hardware components is connected to each other via a bus 207 so as to be able to communicate with each other.

[0074] The input device 201 is, for example, a keyboard, a mouse, a touch panel, a physical button, etc. The display device 202 is, for example, a display, a display panel, etc. Note that the optimization device 10 does not necessarily have to have at least one of the input device 201 and the display device 202, for example.

[0075] The external I / F 203 is an interface with an external device such as a recording medium 203a. The optimization device 10 can read and write data from and to the recording medium 203a via the external I / F 203. The recording medium 203a may store, for example, one or more programs that realize the respective functional units (the input unit 101, the formulation unit 102, the optimization unit 103, and the output unit 104) of the optimization device 10. The recording medium 203a may be, for example, a compact disc (CD), a digital versatile disc (DVD), a secure digital memory card (SD memory card), a universal serial bus (USB) memory card, or the like.

[0076] The communication I / F 204 is an interface for connecting the optimization device 10 to a communication network. One or more programs for implementing each functional unit of the optimization device 10 may be acquired (downloaded) from a predetermined server device or the like via the communication I / F 204.

[0077] The processor 205 is, for example, one of various types of arithmetic devices such as a CPU (Central Processing Unit) or a GPU (Graphics Processing Unit). Each functional unit of the optimization device 10 is realized by, for example, processing that one or more programs stored in the memory device 206 cause the processor 205 to execute.

[0078] The memory device 206 is, for example, any of various storage devices such as a hard disk drive (HDD), a solid state drive (SSD), a random access memory (RAM), a read only memory (ROM), or a flash memory.

[0079] The optimization device 10 according to this embodiment can realize the above-mentioned optimization process by having the hardware configuration shown in Fig. 6. Note that the hardware configuration shown in Fig. 6 is an example, and the optimization device 10 may have other hardware configurations. For example, the optimization device 10 may have multiple processors 205, may have multiple memory devices 206, or may have various hardware other than the hardware shown in Fig. 6.

[0080] The present invention is not limited to the above-described embodiments specifically disclosed, and various modifications, changes, combinations with known technologies, etc. are possible without departing from the scope of the claims. [Explanation of symbols]

[0081] 10 Optimization Device 101 Input section 102 Formulation part 103 Optimization Department 104 Output section 201 Input Device 202 Display device 203 External I / F 203a Recording media 204 Communication I / F 205 Processor 206 Memory Device 207 Bus

Claims

1. 1. An optimization method for optimizing an online matching problem between a first node set U, which represents a set of first nodes that appear stochastically sequentially, and a given second node set V, comprising the steps of: A probability function p u and the value w when matching the first node u ∈ U with the second node v ∈ V uv and an input procedure for inputting The probability function p u and the value w uv Using the probability function p u Control variable x for controlling u and the value w uv a formulation procedure for formulating a first optimization problem representing a problem of maximizing a profit determined by The probability function p u According to the characteristics of the control variable x that maximizes the profit by solving the first optimization problem, u The set of optimal values ​​x * = (x u * ) u∈U an optimization procedure for calculating at least The computer executes the first optimization problem is a problem of maximizing an expectation of a function f(x, π, A) expressing the profit with respect to a probability P(A|x) that the event A occurs under the set x of values ​​of the control variable x u when a set x=(x u ) u∈U of the control variable x u , the matching strategy π, and an event A that specifies one first node u∈U that appears in each trial when a predetermined number of trials are repeated and an order of appearance of the one first node u in each trial, The optimization procedure comprises: The optimization method further comprises calculating an optimal value π* of said strategy.

2. The optimization procedure comprises: The first optimization problem is transformed into a second optimization problem using a function that approximates an objective function of the first optimization problem, and the second optimization problem is solved to obtain the control variable x u The set of optimal values ​​x * The optimization method according to claim 1 , further comprising the step of calculating at least:

3. The optimization procedure comprises: For every first node u ∈ U, p u (x u ) → 0(x u →∞), and 1-p u (x u ) is the monotone hazard rate function, and p u (x u ) satisfies the assumption that it is bijective, the second optimization problem is transformed into a minimum convex cost flow problem, and the control variable x u The set of optimal values ​​x * The optimization method according to claim 2 , further comprising the step of calculating at least:

4. The optimization procedure comprises: If the assumption is not satisfied, the second optimization problem is solved by a heuristic method including Bayesian optimization and simulated annealing to find the control variable x u The set of optimal values ​​x * The optimization method according to claim 3 , further comprising the step of calculating at least:

5. An optimization device for optimizing an online matching problem between a first node set U representing a set of first nodes that appear stochastically and sequentially and a given second node set V, comprising: A probability function p u and the value w when matching the first node u ∈ U with the second node v ∈ V uv An input unit for inputting The probability function p u and the value w uv Using the probability function p u Control variable x for controlling u and the value w uv a formulation unit for formulating a first optimization problem representing a problem of maximizing a profit determined by The probability function p u According to the characteristics of the control variable x that maximizes the profit by solving the first optimization problem, u The set of optimal values ​​x * = (x u * ) u∈U An optimization unit that calculates at least having the first optimization problem is a problem of maximizing an expectation of a function f(x, π, A) expressing the profit with respect to a probability P(A|x) that the event A occurs under the set x of values ​​of the control variable x u when a set x=(x u ) u∈U of the control variable x u , the matching strategy π, and an event A that specifies one first node u∈U that appears in each trial when a predetermined number of trials are repeated and an order of appearance of the one first node u in each trial, The optimization unit is The optimization device further calculates an optimal value π* of said strategy.

6. A program for causing a computer to execute the optimization method according to any one of claims 1 to 4.

Citation Information

Patent Citations

  • Application performance control system for real time monitoring and control of distributed data processing applications

    US20190079846A1

  • Simulated annealing accelerated optimization for real-time drilling

    US20200240257A1