Negotiation device, negotiation method, and program

The negotiation device and method address the limitation of predetermined offer counts by calculating future offer utility, enabling accurate acceptance decisions in automated negotiations with fixed time limits.

JP7712614B2Active Publication Date: 2025-07-24NEC CORP +1
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
JP2024537340
Authority / Receiving Office
JP · JP
Patent Type
Patents
Current Assignee / Owner
Priority Date
2021-12-28
Filing Date
2022-12-26
Publication Date
2025-07-24
Estimated Expiration
2042-12-26

AI Technical Summary

Technical Problem

Existing automated negotiation techniques assume a predetermined maximum number of offers, which limits the ability to accurately determine whether to accept an offer based on future utility predictions.

Method used

A negotiation device and method that calculates the expected utility of future offers using a probability distribution of the number of future offers and history information, determining acceptance based on the utility of the current offer and expected utility, rather than a fixed maximum number of offers.

Benefits of technology

Enables accurate prediction of whether the current offer is more favorable than future offers in negotiations with a fixed maximum time length, allowing appropriate decision-making in automated negotiations.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 0007712614000009
    Figure 0007712614000009
  • Figure 0007712614000010
    Figure 0007712614000010
  • Figure 0007712614000011
    Figure 0007712614000011
Patent Text Reader

Abstract

The negotiation device (2000) acquires history information 30 indicating the presentation time of the current offer from the other agent (10) and the utility of each offer from the other agent (10) that has been received in the negotiation. In the negotiation, a maximum time length of the negotiation period is determined in advance. The negotiation device (2000) generates a probability distribution of the number of future offers based on the remaining time length of the negotiation period and the presentation time of the current offer. The negotiation device (2000) calculates the expected utility of the future offer based on the probability distribution of the number of future offers and the utility indicated by the history information (30). The negotiation device (2000) determines whether to accept the current offer based on the expected utility of the future offer and the utility of the current offer.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This disclosure generally relates to automated negotiation.

Background Art

[0002] Techniques related to automated negotiation have been developed. In automated negotiation, an agent offers an offer to its counterpart, and the counterpart either accepts or rejects the offer. Non-Patent Document 1 discloses a technique for determining whether to accept an offer based on the utility of the offer, which indicates how favorable the offer is to the agent receiving the offer.

Prior Art Documents

Non-Patent Documents

[0003]

Non-Patent Document 1

Summary of the Invention

Problems to be Solved by the Invention

[0004] In Non-Patent Document 1, it is assumed that the maximum number of offers is predetermined as a negotiation rule. This disclosure provides a new technique for appropriately determining whether to accept an offer in negotiation.

Means for Solving the Problems

[0005] The first negotiation device provided in the present disclosure includes at least one processor and a memory storing instructions. The at least one processor executes the instructions to obtain, in a negotiation with a maximum time length of a period being predetermined, history information indicating the presentation time of the current offer from the other party and the utility of each offer from the other party that has been received in the negotiation, generate a probability distribution of the number of future offers based on the remaining time length of the negotiation and the presentation time of the current offer, calculate the expected utility of the future offers based on the probability distribution of the number of future offers and the utility indicated by the history information, and determine whether to accept the current offer based on the expected utility of the future offers and the utility of the current offer.

[0006] The second negotiation device provided in the present disclosure includes at least one processor and a memory storing instructions. The at least one processor executes the instructions to obtain, for each of a plurality of other parties in the negotiation with a maximum time length of a period being predetermined, history information indicating the utility of each offer from the other party that has been received in the negotiation, calculate the expected utility of future offers from the other party based on the utility indicated by the history information of the other party for each of the plurality of other parties, determine an acceptance threshold using the maximum value of the expected utility of the future offers, and determine whether to accept the current offer based on the utility of the current offer and the acceptance threshold.

[0007] The first negotiation method provided by the present disclosure is executed by a computer. The negotiation method includes, in a negotiation in which a maximum time length of a period is predetermined, obtaining history information indicating a presentation time of a current offer from the other party and utilities of each offer from the other party that has been received in the negotiation, generating a probability distribution of the number of future offers based on a time length of a remaining period of the negotiation and the presentation time of the current offer, calculating an expected utility of a future offer based on the probability distribution of the number of future offers and the utilities indicated by the history information, and determining whether to accept the current offer based on the expected utility of the future offer and the utility of the current offer.

[0008] The second negotiation method provided by the present disclosure is executed by a computer. The negotiation method includes, in a negotiation in which a maximum time length of a period is predetermined, for each of a plurality of other parties in the negotiation, obtaining history information indicating a utility of each offer from the other party that has been received in the negotiation, calculating an expected utility of a future offer from the other party based on the utility indicated by the history information of the other party for each of the plurality of other parties, determining an acceptance threshold using a maximum value of the expected utilities of the future offers, and determining whether to accept the current offer based on the utility of the current offer and the acceptance threshold.

[0009] The first non-transitory computer-readable storage medium provided by the present disclosure stores a program for causing a computer to execute the first negotiation method of the present disclosure described above.

[0010] The second non-transitory computer-readable storage medium provided by the present disclosure stores a program for causing a computer to execute the second negotiation method of the present disclosure described above.

Advantages of the Invention

[0011] According to the present disclosure, a new technique for appropriately determining whether to accept an offer in negotiation is provided.

Brief Description of the Drawings

[0012]

Figure 1

Figure 2

Figure 3

Figure 4

Figure 5

Figure 6

Modes for Carrying Out the Invention

[0013] Hereinafter, exemplary embodiments according to the present disclosure will be described with reference to the drawings. In each drawing, the same elements are denoted by the same reference numerals, and redundant descriptions will be omitted as necessary. Also, the storage unit is composed of one or more storage devices.

[0014] Embodiment 1 <Overview> FIG. 1 shows an overview of the negotiation device 2000 according to Embodiment 1. Note that the overview shown in FIG. 1 shows an example of the operation of the negotiation device 2000 for easy understanding of the negotiation device 2000, and does not limit or narrow the range of operations that the negotiation device 2000 can perform.

[0015] The negotiation device 2000 operates as an automatic agent that negotiates with the counterparty agent 10. The counterparty agent 10 is an agent that provides an offer to the negotiation device 2000. Note that the counterparty agent 10 may be manually operated or automatically operated.

[0016] In this embodiment, it is assumed that the number of counterparty agents 10 is one. As will be described later, the negotiation device 2000 of Embodiment 2 handles a plurality of counterparty agents 10.

[0017] The negotiation device 2000 negotiates with the counterparty agent 10 according to the rule that the negotiation must be completed by the negotiation deadline. In other words, the length of the negotiation period is predetermined. Hereinafter, the negotiation period and its length are referred to as the "negotiation period" and the "maximum negotiation time", respectively.

[0018] The negotiation device 2000 receives an offer from the counterparty agent 10 and determines whether to accept this offer (referred to as the "current offer"). If the negotiation device 2000 rejects the current offer, the negotiation continues, and if the negotiation device 2000 accepts the current offer, the negotiation ends. Also, the negotiation ends when the negotiation period expires.

[0019] Whether to accept the current offer is determined based on the utility of the current offer. The utility of an offer is an index value that represents how favorable the offer is from the perspective of the party receiving the offer. The party may be the user of the negotiation device 2000.

[0020] Conceptually, for the negotiation device 2000, when it is expected that the counterparty agent 10 will present an offer more favorable than the current offer, it is preferable to reject the current offer and wait for a future offer. On the other hand, for the negotiation device 2000, when it is not expected that the counterparty agent 10 will present an offer more favorable than the current offer, it is preferable to accept the current offer. Note that a future offer is any offer received by the negotiation device 2000 after receiving the current offer in the negotiation.

[0021] Therefore, the negotiation device 2000 determines whether to accept the current offer based on the utility of the current offer and the expected utility of future offers. For example, when the utility of the current offer is equal to or greater than the expected utility of future offers, the negotiation device 2000 may determine to accept the current offer. On the other hand, when the utility of the current offer is less than the expected utility of future offers, the negotiation device 2000 may reject the current offer.

[0022] The expected utility of future offers is calculated using the history information 30. The history information 30 indicates the presentation time of the current offer and the utility of each offer (i.e., the current offer and past offers) that the negotiation device 2000 has received. Specifically, the negotiation device 2000 generates a probability distribution of the number of future offers based on the remaining negotiation time (i.e., the time length between the current time and the negotiation deadline) and the presentation time of the current offer. Then, the negotiation device 2000 calculates the expected utility of future offers based on the probability distribution of the number of future offers and the utility indicated by the history information 30. Hereinafter, the remaining negotiation time is referred to as the "remaining negotiation time".

[0023] <Example of operational effect> Unlike the negotiation assumed in Non-Patent Document 1, what is predetermined for the negotiation performed by the negotiation device 2000 is not the maximum number of offers but the maximum time length of the negotiation time. To handle this type of negotiation, the negotiation device 2000 predicts the distribution of the number of future offers based on the remaining negotiation time and calculates the expected utility of future offers based on the predicted distribution of the number of future offers. Then, whether to accept the current offer is determined based on the utility of the current offer and the expected utility of future offers. By doing so, the negotiation device 2000 can accurately predict whether the current offer is more preferable than future offers in a negotiation with a fixed maximum time length, and thereby appropriately determine whether to accept the current offer.

[0024] Hereinafter, a more detailed description of the negotiation device 2000 of Embodiment 1 will be given.

[0025] <Example of functional configuration> FIG. 2 shows an example of the functional configuration of the negotiation device 2000. The negotiation device 2000 includes an acquisition unit 2020, a prediction unit 2040, and a determination unit 2060. The acquisition unit 2020 acquires the history information 30. The prediction unit 2040 generates a probability distribution of the number of future offers based on the remaining negotiation time and the presentation time of the current offer. The prediction unit 2040 calculates the expected utility of the future offer based on the probability distribution of the number of future offers and the utility indicated by the history information 30. The determination unit 2060 determines whether to accept the current offer based on the utility of the current offer and the expected utility of the future offer.

[0026] <Example of hardware configuration> The negotiation device 2000 can be realized by one or more computers. Each of those one or more computers may be a dedicated computer created to realize the negotiation device 2000, or may be a general-purpose computer such as a personal computer (PC), a server machine, or a mobile device.

[0027] The negotiation device 2000 can be realized by installing an application on a computer. The application is realized by a program that causes the computer to function as the negotiation device 2000. In other words, the program implements the functional components of the negotiation device 2000.

[0028] FIG. 3 is a block diagram showing an example of the hardware configuration of the computer 1000 that realizes the negotiation device 2000. In FIG. 3, the computer 1000 has a bus 1020, a processor 1040, a memory 1060, a storage device 1080, an input / output interface 1100, and a network interface 1120.

[0029] Bus 1020 is a data communication path for the processor 1040, the memory 1060, the storage device 1080, the input / output interface 1100, and the network interface 1120 to transmit and receive data from each other. The processor 1040 is a processor such as a CPU (Central Processing Unit), a GPU (Graphics Processing Unit), or an FPGA (Field-Programmable Gate Array). The memory 1060 is a main memory element such as a RAM (Random Access Memory) or a ROM (Read Only Memory). The storage device 1080 is an auxiliary storage element such as a hard disk, an SSD (Solid State Drive), or a memory card. The input / output interface 1100 is an interface between the computer 1000 and peripheral devices (such as a keyboard, a mouse, or a display device). The network interface 1120 is an interface between the computer 1000 and a network. The network may be a LAN (Local Area Network) or a WAN (Wide Area Network).

[0030] The storage device 1080 can store the above-described program. The processor 1040 executes the program to realize each functional component of the negotiation device 2000.

[0031] The hardware configuration of the computer 1000 is not limited to the configuration shown in FIG. 3. For example, as described above, the negotiation device 2000 can be realized by a plurality of computers. In this case, those computers can be connected to each other via a network.

[0032] <Flow of processing> FIG. 4 is a flowchart showing an exemplary flow of processing executed by the negotiation device 2000 of Embodiment 1. Note that the flow of processing executed by the negotiation device is not limited to that shown in FIG. 4.

[0033] The negotiation device 2000 determines whether the negotiation period has expired (S102). If the negotiation period has expired (S102: YES), the negotiation device 2000 ends the process shown in FIG. 4. On the other hand, if the negotiation period has not expired (S102: NO), the negotiation device 2000 determines whether a new offer has been received (S104). If the negotiation device 2000 has not received a new offer (S104: NO), the process returns to step S202. The repeated execution of steps S102 to S104 means that the negotiation device 2000 waits for a new offer as long as the negotiation period has not expired.

[0034] If the negotiation device 2000 has received a new offer (S104: YES), the acquisition unit 2020 acquires the history information 30 (S106). Note that the new offer is treated as the current offer. The prediction unit 2040 generates a probability distribution of the number of future offers based on the remaining negotiation time and the presentation time of the current offer (S108). The remaining negotiation time can be calculated by subtracting the current time from the negotiation deadline. The prediction unit 2040 calculates the expected utility of the future offer based on the probability distribution of the number of future offers and the utility indicated by the history information 30 (S110).

[0035] The determination unit 2060 determines whether to accept the current offer based on the utility of the current offer and the expected utility of the future offer (S112). If the determination unit 2060 determines not to accept the current offer (S112: NO), the process returns to step S102 to continue the negotiation. On the other hand, if the determination unit 2060 determines to accept the current offer (S112: YES), the process shown in FIG. 4 ends.

[0036] <Acquisition of history information 30: S106> The acquisition unit 2020 acquires the history information 30 (S106). The history information 30 indicates the presentation time of the current offer and the utility of each offer (i.e., past offers and the current offer) that the negotiation device 2000 has received. Note that the history information 30 may additionally indicate the presentation time of the past offers.

[0037] FIG. 5 shows an exemplary structure of the history information 30. The history information 30 has three columns: an offer identifier 32, a presentation time 34, and an utility 36. The history information has a row for each offer. The offer identifier 32 of a certain row indicates the identifier (e.g., sequence number) of the offer corresponding to that row. The presentation time 34 of a certain row indicates the presentation time of the offer corresponding to that row, e.g., the time when the negotiation device received the corresponding offer. Note that, unless otherwise specified, since the start time of the negotiation is set to 0, the presentation time of the offer corresponds to the time duration from the start time of the negotiation to the time when the offer is received. The utility 36 of a certain row indicates the utility of the offer corresponding to that row. For example, the first row of the history information 30 shown in FIG. 5 indicates that the presentation time and the utility of offer 001 are t1 and u1, respectively.

[0038] Note that the utility of an offer is calculated based on one or more contents of the offer. The content of the offer depends on the negotiation. Assume that the opponent agent 10 is trying to sell a product to the user of the negotiation device 2000. In this case, the offer may include the number of products, the price of the products, the delivery time of the products, etc.

[0039] In some aspects, the utility of an offer is calculated using a utility function that takes one or more values representing the content of the offer and outputs a real-valued number representing the utility of the offer. The utility function may convert each of the contents of the offer into a score and calculate the weighted sum of the scores as the utility of the offer.

[0040] The history information 30 can be updated when the negotiation device 2000 receives a current offer. Specifically, the negotiation device 2000 can calculate the utility of the current offer, generate new information (e.g., a new row in the table shown in FIG. 5) for the current offer, and add this new information to the history information 30.

[0041] There are various ways to obtain the history information 30. In some embodiments, the history information 30 is pre-stored in the storage unit in a manner that the acquisition unit 2020 can obtain the history information 30 therefrom. In this case, the acquisition unit 2020 can access the storage unit and obtain the history information 30 from the storage unit. In other implementation forms, the acquisition unit 2020 can receive the history information 30 transmitted from another computer.

[0042] <Utility of Future Offers: S108, S110> As described above, the prediction unit 2040 calculates the expected utility of future offers (S110). The expected utility of future offers may depend on the number of future offers. However, since it is the maximum length of the negotiation rather than the maximum number of offers that is specified in the negotiation between the negotiation device 2000 and the counterparty agent 10, the number of future offers cannot be specified.

[0043] Therefore, the prediction unit 2040 can calculate the future expected utility as follows.

Number

[0044] The prediction unit 2040 can obtain P(k) and E(k), and calculate the expected utility E of future offers by applying the obtained P(k) and E(k) to formula (1). Hereinafter, an example of how to obtain P(k) and E(k) will be described.

[0045] <<Probability Distribution of the Number of Future Offers>> The prediction unit 2040 generates a probability distribution of the number of future offers, that is, P(k), based on the remaining negotiation time and the presentation time of the current offer (S108). In some embodiments, the probability distribution of the number of future offers can be modeled as follows. [Number] In the formula, k represents the number of future offers. P(k) represents the probability mass function of k (that is, P(k) represents the probability that the number of future offers is k). T represents the remaining negotiation time. c represents the index of the current offer. t_c represents the Offer presentation time of the current one.

[0046] Hereinafter, the introduction method of Equation (2) will be described. The number of future offers received by the negotiation device 2000 may depend on the frequency at which the negotiation device 2000 receives future offers. Therefore, the probability distribution of the number of future offers can be calculated based on the probability distribution of the frequency at which future offers are received.

[0047] The probability distribution of the frequency at which future offers are received can be modeled as follows. [Number] In the formula, f(λ) represents the probability density function of λ. λ represents the frequency at which future offers are received.

[0048] Using the probability distribution f(λ), the probability distribution of the number of future offers can be formulated as follows. [Number]

[0049] <<Utility of Future Offers with the Number of Future Offers Determined>> The negotiation device 2000 generates a conditional utility function E(k) (that is, calculates the expected utility of future offers under the condition that the number of future offers is k). First, the negotiation device 2000 predicts the distribution of the utilities of future offers. This can be predicted based on the history of offer utilities indicated by the history information 30.

[0050] In some embodiments, the prediction unit 2040 predicts the distribution of the utilities of future offers using Gaussian process regression. Specifically, the prediction unit 2040 can calculate the difference between each pair of temporally adjacent utilities as follows.

Equation

[0051] Then, the prediction unit 2040 applies the pair of the offer index and the difference in utilities of adjacent offers (that is, (i, Δu_i) for i = 1 to c) as input to Gaussian process regression, thereby obtaining the Gaussian distribution of the differences in utilities of adjacent future offers. Specifically, the prediction unit 2040 can obtain the pair of the mean and variance of the Gaussian distribution of the differences in utilities of adjacent future offers.

[0052] Next, the prediction unit 2040 can generate the Gaussian distribution of the utility of the feature offer by calculating the mean and variance as follows.

Equation

[0053] Note that, since the prediction unit 2040 applies the difference in utility between adjacent offers to Gaussian process regression, it can predict the utility of future offers more accurately than when directly applying the utility of the offers indicated by the history information 30 to Gaussian process regression. However, in other embodiments, the prediction unit 2040 may directly apply the utility of the offers indicated by the history information 30 to Gaussian process regression to obtain a Gaussian distribution of the utility of future offers. More specifically, a pair of the index and utility of an offer (i.e., (i, u_i) for i = 1 to c) is supplied as input to Gaussian process regression, thereby obtaining a Gaussian distribution of the utility of future offers. Note that u_i represents the utility of the i-th offer.

[0054] Using the distribution of the utility of future offers predicted as described above, the prediction unit 2040 calculates the expected utility of future offers, i.e., E(k), under the condition that the number of future offers is k. The prediction unit 2040 can calculate E(k) as follows.

Equation

[0055] Note that in order to shorten the calculation time of the above formula (7), the prediction unit 2040 may calculate formula (7) using the following formula.

Equation

[0056] <Acceptance determination: S108> The determination unit 2060 determines whether to accept the current offer based on the utility of the current offer and the expected utility of the future offer (S108). To do this, the determination unit 2060 only needs to determine whether the utility of the current offer is greater than or equal to a threshold Th called the "acceptance threshold" defined based on the expected utility of the future offer. When the current offer is greater than or equal to the acceptance threshold, the determination unit 2060 determines to accept the current offer. On the other hand, when the current offer is less than the acceptance threshold, the determination unit 2060 determines to reject (in other words, not accept) the current offer.

[0057] In some aspects, the determination unit 2060 can set the expected utility of the future offer as the acceptance threshold. In other implementations, the determination unit 20 6 0 can set the acceptance threshold Th: Th = E + α, which is the sum of the expected utility of the future offer and a margin, where E is the expected utility of the future offer and α is the margin. The margin α may be defined based on the benefit of ending the negotiation early. The longer the remaining negotiation time, the larger the margin α can be defined. This is because for the user of the negotiation device 2000, it may be more beneficial to end the negotiation earlier than to wait for a future offer that is slightly more preferable than the current offer from the perspective of utility.

[0058] <Output of negotiation device 2000> The negotiation device 2000 can output information based on the result of the determination regarding the current offer. Hereinafter, this information is referred to as "output information". The output information can be a response to the current offer. In this case, the negotiation device 2000 can send the output information to the counterparty agent 10. The response indicates acceptance or rejection of the current offer. Further, the response can also indicate a counteroffer. Note that there are various well-known methods for presenting a counteroffer based on the received offer, and one of those methods can be adopted by the negotiation device 2000.

[0059] Also, the negotiation device 2000 can output output information for notifying the result of the determination regarding the current offer of the user of the negotiation device 2000. In this case, the output information can include any information useful to the user, such as whether the current offer has been accepted and the expected utility of future offers.

[0060] The output information can be output in various ways. In some embodiments, the negotiation device 2000 can store the output information in the storage unit. In other embodiments, the negotiation device 2000 can output the output information to a display device and cause the output information to be displayed on the display device. In other embodiments, the negotiation device 2000 can send the output information to another computer such as the counterparty agent 10 or the user device (e.g., PC or smartphone) of the user of the negotiation device 2000.

[0061] Embodiment 2 <Overview> The negotiation device 2000 of Embodiment 2 negotiates with two or more counterparty agents 10. Therefore, the negotiation device 2000 can accept an offer from one of the plurality of counterparty agents 10 and reject offers from the rest of them.

[0062] To handle a plurality of counterpart agents 10, the negotiation device 2000 calculates the expected utility of future offers for each of the counterpart agents 10, which are represented by E1, E2, ···, EA (where A represents the number of counterpart agents 10). In this embodiment, the negotiation device 2000 acquires history information 30 for each counterpart agent 10. The history information 30 of the counterpart agent 10 indicates the presentation time of the current offer from the counterpart agent 10 and the utility of each offer received from the counterpart agent 10 by the negotiation device 2000.

[0063] Similar to the negotiation device 2000 of Embodiment 1, the negotiation device 2000 of Embodiment 2 determines whether to accept the current offer by comparing the utility of the current offer with the acceptance threshold. However, the method by which the negotiation device 2000 of Embodiment 2 determines the acceptance threshold is different from the method performed by the negotiation device 2000 of Embodiment 1 Specifically, the negotiation device 2000 determines the acceptance threshold based on the set of expected utilities of future offers calculated for each counterpart agent 10, that is, {E1, E2, ..., EA}. Hereinafter, this set will be referred to as the "expected utility set" and denoted as S (i.e., S = {E1, E2, ..., EA}). For example, the maximum value in the expected utility set S can be used as the acceptance threshold.

[0064] <Example of operational effect> According to the negotiation device 2000 of Embodiment 2, in a negotiation where there are a plurality of counterparts and the maximum negotiation time length is predetermined instead of the maximum number of future offers, it is possible to appropriately determine whether to accept the current offer.

[0065] Hereinafter, a more detailed description of the negotiation device 2000 of Embodiment 2 will be given.

[0066] <Example of functional configuration> The functional configuration of the negotiation device 2000 according to Embodiment 2 can be the same as that of the negotiation device 2000 according to Embodiment 1, as shown in FIG. 2. The acquisition unit 2020 according to Embodiment 2 acquires the history information 30 for each counterpart agent 10. For each counterpart agent 10, the prediction unit 2040 calculates the expected utility of future offers from the counterpart agent 10. The determination unit 2060 determines an acceptance threshold based on the expected utility of future offers from each counterpart agent 10, and determines whether to accept the current offer based on the utility of the current offer and the acceptance threshold.

[0067] <Hardware Configuration Example> The negotiation device 2000 according to Embodiment 2 may be realized by one or more computers similar to those realizing the negotiation device 2000 according to Embodiment 1. Therefore, its hardware configuration may also be the one shown in FIG. 3. However, the storage device 1080 according to Embodiment 2 may include a program for causing the computer 1000 to function as the negotiation device 2000 according to Embodiment 2.

[0068] <Flow of Processing> FIG. 6 is a flowchart showing an exemplary flow of processing executed by the negotiation device 2000 according to Embodiment 2. Note that the flow of processing executed by the negotiation device is not limited to that shown in FIG. 6.

[0069] The negotiation device 2000 initializes the set of expected utilities (S202). The set of expected utilities can be initialized to indicate 0 for each counterpart agent. Then, similar to the negotiation device 2000 according to Embodiment 1, the negotiation device 2000 according to Embodiment 2 waits for a new offer as long as the negotiation period has not expired (S204 and S206).

[0070] When it is determined that the negotiation device 2000 has received a new offer (S206: YES), the prediction unit 2040 calculates the expected utility of future offers from the partner agent 10 that has sent the new offer (i.e., the current offer) (S208). Hereinafter, the partner agent 10 that has sent the current offer is referred to as the "current partner agent". The prediction unit 2040 updates the set of expected utilities with the expected utility of future offers from the current partner agent calculated in step S208 (S210). The determination unit 2060 determines an acceptance threshold using the set of expected utilities updated in step S210 (S212).

[0071] The determination unit 2060 determines whether the utility of the current offer is equal to or greater than the acceptance threshold (S214). When the utility of the current offer is equal to or greater than the acceptance threshold (S214: YES), the determination unit 2060 determines to accept the current offer (S218). Accordingly, the process shown in FIG. 6 ends. On the other hand, when the utility of the current offer is not equal to or greater than the acceptance threshold (S214: NO), the determination unit 2060 determines to reject the current offer (S216). Accordingly, the process shown in FIG. 6 returns to S204 to continue the negotiation.

[0072] <Calculation of expected utility of future offers: S208> In response to the negotiation device 2000 receiving a new offer, the prediction unit 2040 calculates the expected utility of future offers from the current partner agent (S208). To do this, the acquisition unit 2020 acquires the history information 30 of the current partner agent. Next, the prediction unit 2040 generates a probability distribution of the number of future offers from the current partner agent corresponding to P(k) in Equation (1) based on the remaining negotiation time and the presentation time of the current offer. A specific method for generating the probability distribution of the number of future offers from the partner agent 10 has already been described in Embodiment 1.

[0073] The prediction unit 2040 also calculates the expected utility of future offers from the current opponent agent when the number of future offers (corresponding to E(k) in Equation (1)) is given, based on the utility indicated by the history information 30 of the current opponent agent. A specific method for calculating the expected utility of future offers from the opponent agent when the number of future offers is given has already been described in Embodiment 1.

[0074] Then, the prediction unit 2040 calculates the expected utility of future offers from the current opponent agent unconditionally for the number of future offers (corresponding to E in Equation (1)), based on the expected utility of future offers from the current opponent agent when the number of future offers is given and the probability distribution of the number of future offers from the current opponent agent. In other words, the prediction unit 2040 applies P(k) and E(k) of the current opponent agent to Equation (1) to calculate the expected utility E of the current opponent agent.

[0075] <Update of expected utility set: S210> The prediction unit 2040 updates the expected utility set with the expected utility of future offers from the current opponent agent. An element S[i] of the expected utility set S represents the expected utility of future offers from the opponent agent 10 having the identifier i. Assume that the current opponent agent has the identifier j. In this case, the prediction unit 2040 updates S[j] with the expected utility of future offers from the current opponent agent calculated in step S208.

[0076] <Determination of acceptance threshold: S212> The determination unit 2060 determines the acceptance threshold using the expected utility set. Basically, when the expected utility set includes a value larger than the utility of the current offer, it is expected that the negotiation device 2000 will receive a more favorable offer than the current one for the negotiation device 2000. Therefore, it is preferable not to accept the current offer.

[0077] Thus, in some embodiments, the negotiation device 2000 may set the maximum value within the set of expected utilities as the acceptance threshold. In this case, the negotiation device 2000 determines to accept the current offer only when the utility of the current offer is greater than or equal to all the expected utilities of future offers from the current counterparty agent 10.

[0078] In other embodiments, similar to Embodiment 1, the negotiation device 2000 of Embodiment 2 can include a margin in the acceptance threshold. Specifically, the determination unit 20 6 0 can set the acceptance threshold Th: Th = EL + α by adding a margin to the maximum value within the set of expected utilities, where EL is the maximum value within the set of expected utilities and α is the margin.

[0079] <End of negotiation> When the negotiation device 2000 accepts the current offer, it ends the negotiation with the plurality of counterparty agents 10. For example, the negotiation device 2000 notifies the end of negotiation to each counterparty agent 10. Regarding the current counterparty agent, the negotiation device 2000 can send a response indicating acceptance of the current offer. This response can also mean the end of the negotiation.

[0080] Although the present disclosure has been described with reference to the embodiments, the present disclosure is not limited to the above-described embodiments. Various changes that can be understood by those skilled in the art can be made to the configuration and details of the present disclosure within the scope of the present disclosure.

[0081] The program in the present disclosure includes a set of instructions (or software code) that cause a computer to perform one or more functions described in the embodiments when loaded into the computer. The program may be stored in a non-transitory computer-readable medium or a tangible storage medium. By way of example and not limitation, the computer-readable medium or tangible storage medium includes random-access memory (RAM), read-only memory (ROM), flash memory, solid-state drive (SSD), or other memory technologies, CD-ROM, digital versatile disc (DVD), Blu-ray Disc or other optical disc storage, magnetic cassette, magnetic tape, magnetic disk storage, or other magnetic storage devices. The program may be transmitted on a transient computer-readable medium or a communication medium. By way of example and not limitation, the transient computer-readable medium or communication medium includes electrical, optical, acoustic, or other forms of propagated signals.

[0082] This application claims priority based on Japanese Patent Application No. 2021-214132 filed on December 28, 2021, and incorporates the entire disclosure thereof herein.

Explanation of Signs

[0083] 10 Counterparty agent 30 History information 32 Offer identifier 34 Presentation time 36 Utility 1000 Computer 1020 Bus 1040 Processor 1060 Memory 1080 Storage device 1100 Input / output interface 1120 Network interface 2000 Negotiation device 2020 Acquisition unit 2040 Prediction unit 2060 Determination unit

Claims

1. In a negotiation where the maximum time length of the period is predetermined, obtain history information indicating the presentation time of the current offer from the other party and the utility of each offer received from the other party in the negotiation, Generate a probability distribution of the number of future offers based on the remaining time length of the negotiation and the presentation time of the current offer, Calculate the expected utility of future offers based on the probability distribution of the number of future offers and the utility indicated by the history information, A negotiation device that determines whether to accept the current offer based on the expected utility of future offers and the utility of the current offer.

2. The generation of the probability distribution of the number of future offers includes applying the remaining time length of the negotiation and the presentation time of the current offer to parameters of a predefined model of the probability distribution of the number of future offers. The negotiation device according to claim 1.

3. The calculation of the expected utility of future offers includes: Generating a conditional expected utility function that takes the number of future offers as input and outputs the expected utility of future offers on the condition that the number of future offers is represented by the input, Calculating the expected utility of future offers based on the conditional expected utility function and the probability distribution of the number of future offers. The negotiation device according to claim 1 or 2.

4. The generation of the conditional expected utility function includes: Calculating the difference in utility for each pair of utilities that are adjacent to each other in time indicated by the history information, Applying the calculated difference in utility to Gaussian process regression to obtain a Gaussian distribution of the difference in utility in future offers, Calculating the expected utility of each future offer based on the Gaussian distribution of the difference in utility in future offers. The negotiation device according to claim 3.

5. The negotiation is conducted with a plurality of the other parties, The expected utility of future offers is calculated for each of the other parties, The determination of whether to accept the current offer includes: Determining an acceptance threshold using the maximum value of the expected utility of future offers, When the utility of the current offer is greater than or equal to the acceptance threshold, determining to accept the current offer, the negotiation device according to claim 1 or 2.

6. In a negotiation where the maximum time length of the period is predetermined, for each of a plurality of counterparts in the negotiation, obtaining history information indicating the utility of each offer received from the counterpart in the negotiation, For each of the plurality of counterparts, calculating the expected utility of a future offer from the counterpart based on the utility indicated by the history information of the counterpart, Determining an acceptance threshold using the maximum value of the expected utility of the future offer, A negotiation device that determines whether to accept the current offer based on the utility of the current offer and the acceptance threshold.

7. In a negotiation where the maximum time length of the period is predetermined, obtaining history information indicating the presentation time of the current offer from the counterpart and the utility of each offer received from the counterpart in the negotiation, Generating a probability distribution of the number of future offers based on the remaining time length of the negotiation and the presentation time of the current offer, Calculating the expected utility of a future offer based on the probability distribution of the number of future offers and the utility indicated by the history information, A negotiation method executed by a computer, including determining whether to accept the current offer based on the expected utility of the future offer and the utility of the current offer.

8. In a negotiation where the maximum time length of the period is predetermined, for each of a plurality of counterparts in the negotiation, obtaining history information indicating the utility of each offer received from the counterpart in the negotiation, For each of the plurality of counterparts, calculating the expected utility of a future offer from the counterpart based on the utility indicated by the history information of the counterpart, Determining an acceptance threshold using the maximum value of the expected utility of the future offer, A negotiation method executed by a computer, including determining whether to accept the current offer based on the utility of the current offer and the acceptance threshold.

9. In a negotiation where the maximum time length of the period is predetermined, obtaining history information indicating the presentation time of the current offer from the other party and the utility of each offer received from the other party in the negotiation. Generating a probability distribution of the number of future offers based on the remaining time length of the negotiation and the presentation time of the current offer. Calculating the expected utility of future offers based on the probability distribution of the number of future offers and the utility indicated by the history information. A program for causing a computer to determine whether to accept the current offer based on the expected utility of future offers and the utility of the current offer.

10. In a negotiation where the maximum time length of the period is predetermined, for each of a plurality of parties to the negotiation, obtaining history information indicating the utility of each offer received from the party in the negotiation. For each of the plurality of parties, calculating the expected utility of future offers from the party based on the utility indicated by the history information of the party. Determining an acceptance threshold using the maximum value of the expected utility of future offers. A program for causing a computer to determine whether to accept the current offer based on the utility of the current offer and the acceptance threshold.

Citation Information

Patent Citations

  • Determining a counteroffer

    US20140214690A1

  • Negotiation device, estimation method, program, and estimation device

    US20210049660A1