{'fraction_non_alphanumeric': 0.0254643459327412, 'fraction_numerical': 0.0070631032514172675, 'mean_word_length': 4.71010537487681, 'pattern_counts': {'":': 0, '<': 1, '<?xml version=': 0, '>': 0, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
A Negotiating Strategy for a Hybrid Goal Function in Multilateral Negotiation

In various multi-agent negotiation settings, a negotiator's utility depends, either partially or fully, on the sum of negotiators' utilities (i.e., social welfare). While the need for effective negotiating-agent designs that take into account social welfare has been acknowledged in recent work, and even established as a category in automated negotiating agent competitions, very few designs have been proposed to date. In this paper, we present the design principles and results of an extensive evaluation of agent HerbT+, a negotiating agent aiming to maximize a linear tradeoff between individual and social welfare. Our evaluation framework relies on the automated negotiating agents competition (ANAC) and includes a thorough comparison of performance with the top 15 agents submitted between 2015-2018 based on negotiations involving 63 agents submitted to these competitions. We find that, except for a few minor exceptions, when social-welfare plays a substantial role in the agent's goal function, our agent outperforms all other tested designs.

our lives has led researchers to study the field of automatic negotiation. With today's hardware and advances in computational methods, automated negotiation has the potential to solve complex negotiations that a human cannot solve. A human might find it challenging to participate in and keep track of negotiations whenever the number of negotiated issues is rather large. Furthermore, in environments with continuous changes, such as the stock market, continuous negotiation is required, which is unfeasible for a non-automated agent. In 2006, as part of a large-scale research study aiming to compare the performance of automated agents against human agents, it was shown that, at times, scenario-dependent, automated negotiation outperforms human negotiation [29].
A negotiating agent's performance can be measured by its individual utility and by the social welfare resulting from the negotiations in which it participated. The individual utility of an agent is a representation of how optimal the agreement eventually reached is to the agent. It is calculated based only on the agent's own utility function. Social welfare is a representation of how optimal the agreement is to all parties involved. It is calculated using the entire population's utility functions. To date, the majority of the strategies suggested over the years for automatic negotiation have aimed at maximizing the agent's individual utility rather than social welfare, which makes sense as in most negotiation scenarios, the negotiator negotiates in his or her own self-interest. However, in real life, there are many scenarios where people negotiate, at least to some extent, also for the greater good. For example, consider a charity organization with the novel goal of helping people break out of the cycle of poverty by giving them jobs. While we do expect employees to negotiate the terms of their employment in a way that maximizes their individual utility, the charity will aim to maximize social welfare, either in the form of sum of employee utilities or the number of employees hired within a given budget (or any tradeoff within). Or, consider a firm organizing a cooking class as a communal activity to its employees that needs to negotiate the date, menu and other terms with employees representatives from different departments. Here, each representative aims to maximize the welfare of employees from her department, based on their preferences, whereas the firm aims to maximize overall social welfare. While the first example above represents bilateral negotiation and the second represents multilateral negotiation, in both examples, as well as in many other representative scenarios, the environment of agents is mixed. Some agents' goal might be to maximize their individual utility and some agents' goal might be to maximize the overall social welfare, or a function of the two. Furthermore, even when negotiators do not have any explicit interest in caring for other negotiators' welfare, their behavior is often influenced by the latter factor. For example, in a survey from 2006 conducted on pro-social behaviors, primarily using field tests, it was shown that people's behavior is generally pro-social rather than fully self-interested [34]. The appeal of social-welfare maximizing agreements is also explained by people's preference of agreements that will long last. An agreement that is excellent for one side and terrible for the other will not last. For example, a worker who agreed to poor working conditions will very soon search for a better job. In this paper, we present and provide an extensive evaluation of an automatic negotiation agent strategy aiming to maximize a tradeoff of social and individual welfare. We focus in linear tradeoffs between the two (i.e., a weighted sum), ranging from caring only for own individual utility to a fully social goal function. , i.e., a weighted sum of social welfare and individual utility where the weight of either one is set by the user according to his will. One major challenge in the development of such agent is the modeling of negotiators' utility from a given agreement. This is because typically there is no way to tell which agent is trying to maximize individual utility and which agent is interested also in social welfare (and to what extent), as revealing one's true preferences provides a leverage to the other negotiators. In that sense, the proposed strategy contributes several innovative concepts that we believe can be useful for other automated negotiation agents' designs. First, in our strategy, we show that an accurate estimate for an opponent's bid acceptance probability can be used as a good measure for its utility from the bid, based on the correlation between the two. Second, we show that separately maximizing individual utility and social welfare and taking the weighted sum of the two, results in an effective hybrid strategy for any trade-off between individual utility and social welfare (see Chapter 4 for more information). Through an extensive evaluation, based on the Genius infrastructure [30], we show that when fully maximizing social welfare, our strategy was able to outperform all of the top agents in the Automated Negotiating Agents Competition (ANAC) [20] between the years 2015 -2018, in most tested domains. Furthermore, we show that our agent's achievements are cross-domain stable and persistent and in most cases only influenced by the discount factor of the domain. A preliminary version of our strategy won first place in ANAC 2018 repeated multilateral negotiation league [3] in the social welfare category.

Related Work
In recent years there is a growing interest in strategies for agents engaged in multilateral negotiation, either in the form of extending existing bilateral negotiation protocols [11,2] or developing new ones [50]. The transition from bilateral to multilateral negotiation suggests many challenges, among which managing a concession process that involves several parties and generally longer negotiation rounds.
The problem of maximizing the social welfare of multiple entities was often solved by using a centralized approach. In this approach, there is a centralized entity (aka mediator approach) that is aware of all the agents and their preferences. This entity uses this information to determine the next course of action that will maximize social welfare. However, this approach is not always feasible and has a few drawbacks. It has no notion of privacy as each agent is obligated to reveal its preferences to the centralized entity [37]. In addition, sometimes, a centralized approach is computationally too expensive as the number of agents might be substantial [27]. To overcome these drawbacks there have been attempts to come up with decentralized approaches using automated negotiation [37,38,27]. However, the assumptions used in these works are quite strict. In particular, it is assumed that: -The aim of all of the agents is to maximize social welfare.
-Each agent has some knowledge about the preferences of at least some of the other agents.
These two assumptions usually come together. Indeed, in an environment where everyone tries to maximize social welfare, there is no interest for an agent to hide information from other agents as they all have a common goal. However, in a mixed environment of agents who try to maximize social welfare and agents who try to maximize their individual utility, the situation is different. Even if an agent seemingly reveals its preferences, there is no way to know whether its goal is to maximize social welfare and the disclosed preferences are its real preferences, or if its goal is to maximize its individual utility and the disclosed preferences are not its real preferences but rather meant to deceive the other agents, thereby causing them to agree to an offer which is good for it.
Social-welfare maximization [41,15] was also researched in the context of negotiations with a mediator in mediator-based protocols such as Mediated Single Text Negotiation [25]. The mediator is an unbiased entity without individual preferences whose role is to mediate between the other agents by proposing an offer that each agent either accepts or rejects. The mediator tries to find an offer that will be agreed on by all and will maximize the social welfare of the population. In this case, the agents' aim is to maximize their individual utility. These strategies also assume that the mediator has some knowledge about the agents' preferences. Most of the work that was done on negotiation with preference uncertainty was done in an attempt to maximize the negotiator's individual utility. ANAC was founded in 2010 [4]. This competition allows researchers to submit an agent that will compete against other agents in different negotiation domains. ANAC aims to bring together researchers from the negotiation community and provide a benchmark and a research agenda for automated negotiation. Until 2014 the agents in ANAC were evaluated based solely on their achieved individual utility. Since 2014 the agents have also been evaluated based on the average social welfare in negotiations in which they participated. In 2015 the competition settings were changed from bilateral negotiation to multilateral negotiation [13].
Most of the work on social welfare for multilateral negotiation with preference uncertainty was done for agents who participated in this competition. We hereby review several strategies that were designed for agents who participated in ANAC and got to the finals in the social welfare category. Liu et al. (2018) proposed a negotiation strategy that aims to find bids around the Nash bargaining solution for maximizing social welfare [31]. They evaluate what issues and what values are more valuable to their opponents by applying statistical analysis to calculate the standard deviation of the values of the issues and the standard deviation of each issue that was offered by their opponents. Then, they assume that the higher the standard deviation is, the more valuable the issue is to their opponent. Agent Atlas3, proposed by Mori and Ito (2017) [36], won in both the social welfare and the individual utility category in ANAC 2015. The agent's strategy consists of a bids searching method and a compromising strategy. The searching method is based on the relative utility compared to the maximum possible individual utility of the agent and the offered values' frequencies. The compromising strategy divides the negotiation flow to alternative offer phases and a final offer phase, and bases the current concession value on the final offer phase's expected utility. Gu and Ito (2017) proposed an agent which tries to maximize social welfare in closed multilateral negotiation [16]. Their agent strategy is strictly built for 3-agent scenarios and is composed of an agreement behavior and a conceder behavior. The agreement behavior tries to make a partial agreement with one agent before it tries to come to an agreement with both agents. It tries to estimate the number of bids with which the opponent may agree by calculating the average and standard deviation of the opponent's last ten bids. The conceder behavior is based on a formula by Faratin and Sierra (1998) [12] for determining the agreement threshold, which is modified to concede more as time goes by. Hayashi and Ito (2017) proposed a strategy [17] for maximizing social welfare. Their agent accepts an offer if the offer's utility is higher than a threshold value that decreases as the negotiation proceeds. The threshold function is tuned using the offered utilities, the time passed, and a constant value that was found by experimental negotiations. Their bidding strategy consists of choosing the highest utility bid that was offered or accepted by the opponents and randomly changing the value of one of its issues in order to increase its utility for the agent. Yucel et al. (2017) proposed a strategy [48] that acts as a mediator to maximize social welfare in close multilateral negotiation. Not to be confused with the above discussion of mediators, their agent only sees itself as a mediator and is not really a mediator, as the protocol is not a mediator-based one-the agent has the same position as any other agent in the negotiation. Their strategy uses the frequencies of the bids offered by the opponents to estimate the utility function of their opponents. Then it tries to find a bid that will be accepted by all the opponents and will maximize the agent's utility. There are some common properties in the strategies mentioned above, such as the use of a heuristic method on the frequencies of the values of the suggested bids for opponent modeling, a concession strategy based on a threshold that decreases as the negotiation goes on, and the use of constant values chosen empirically based on experimental negotiations. In our work, we tried different approaches. First, our social welfare strategy does not rely on a concession threshold as it has disadvantages for maximizing social-welfare (more information is provided in Section 4). In addition, for modeling the opponent, we use a machine learning model with some adaptation to its initialization for improving its predictions in automated negotiation settings (see Section 4 for more information).
A key component of our proposed agent design is the usage of machine learning for opponent modeling. The idea is not new, and several prior works use machine learning for opponent modeling as part of automated negotiation.
Matsune and Fujita (2018) proposed a method [32] for estimating the utility function of the opponents in a closed multi-issue negotiation. Their method uses the Boosting algorithm, which tries to combine several "weak learners" into one "strong learner" by weighing each one of the learners using the data collected from the agents' offers during the negotiation. Their paper is focused more on creating a good model with high accuracy and less about providing a negotiation strategy. Their method is only effective when the negotiations are under the same opponents and domains are repeated multiple times, unlike our design that becomes effective from the first negotiation. Gaussian process regression [39] is also a quite popular model for opponent modeling [28,9,46,45,47,44]. The usage of this model is a good example for a machine learning model that tries to learn a different thing -here the model is not used to learn the utility function of each opponent or whether the opponent would accept or reject a bid, but instead tries to learn the opponent's concession strategy. Hindriks and Tykhonov (2008) proposed an opponent modeling technique using Bayesian Learning [19] to estimate their opponent's utility function. However, their model assumes the values of each issue of a domain are ordered and that there is a value with a maximum utility, such that every other value's utility is linearly decreased according to the distance from the maximum value. In our environment, there are two types of issues: integer issue and discrete issue. While this assumption applies to integer issues, it does not apply to discrete issues as the values of discrete issues are not ordered. In addition, their paper focuses only on bilateral negotiation and their strategy's goal is to maximize the agent's individual utility.
Overall it seems that the vast majority of agents' strategies described in prior work do not use machine learning models and that the agents prefer to use heuristic methods and experimental negotiations to build their strategy. It is understandable as machine learning models require a certain amount of data that can only start being collected during the negotiation itself, and when there is a discount factor, the more data one allows himself to collect, the more utility he loses. However, the strategy proposed in this paper, despite this difficulty, was proven efficient for maximizing a trade-off function between social welfare and individual utility.

Negotiation Environment
As a basis for our negotiation environment, we adopt the negotiation model used in ANAC [20], which is based on the multilateral alternating offers protocol [2,5]. In this protocol, which is fully sequential, the agents follow some pre-specified cyclic order which determines their turn to take an action. The actions available to each agent on its turn are: (a) accept the last offer (denoted bid onward) made; (b) make a new offer and thus reject the last offer made; or (c) end the negotiation with no agreement. If an offer made is accepted by all other agents in their subsequent turn, then the negotiation terminates and the utility of each agent is determined according to the accepted bid. The negotiation is divided into T rounds, where each round contains one turn for each agent. At the end of each round all utilities are discounted as explained below. If no agreement is reached within T rounds, or if one of the agents decides to terminate the negotiation at round t ≤ T with no agreement, then each agent receives some pre-set default utility (termed reservation value), respectively discounted.
Each negotiation is associated with a negotiation domain. A negotiation domain is composed of a set of issues which values are the focus of the negotiation, meaning that each bid placed specifies a suggested set of values for the different negotiation issues. In our environment, there are two types of issues: an integer issue and a discrete issue. An integer issue describes a value that can be any integer between a range of two integers [x, y] where x and y are predetermined in the issue. A discrete issue describes a value that can be any value from a set of values {x1, x2, x3...} where the size and the values of the set are predetermined in the issue. Each agent A i is assigned with a utility function u Ai , which maps each possible bid to the utility the agent gains if the negotiation terminates with the acceptance of that bid. The utility functions are linear, i.e., can be computed as a weighted sum of the utilities associated with each value of each issue. Thus the utility encapsulated in a bid b to agent A i , denoted u Ai (b) is given by n j=1 w j u Ai (b j ), where n is the number of negotiated issues, w j is the weight assigned to the jth issue and u Ai (b j ) is the utility of Agent A i from the value b j assigned to issue j in bid b. All weights and utilities from specific issues are picked such that the resulting utility from a bid is necessarily within the interval (0, 1). Each domain also specifies a discount factor, df , which dictates the rate of the decline in the utility of a bid as the negotiation progresses. A utility U ≤ 1 obtained at round t ≤ T is discounted to a value U · df t/T . 1 While all above information about the domain is public and available to all agents in the negotiation, the individual utility functions are considered private and each agent knows only its own utility function. 2 The goal of the agent is to maximize some goal function which is a discounted weighted sum of the individual utility and social welfare resulting from the bid eventually agreed upon (or the reservation value if the negotiation terminates without an agreement). We use 0 ≤ β ≤ 1 as the weight assigned to the social welfare (and consequently the weight 1 − β to the individual utility component). This enables a wide spectrum of agent designs with respect to the agent's tendency towards social welfare, ranging from a completely self-interested agent (β = 0) to a fully social agent (β = 1). The social welfare is taken to be the sum of all of the agents' utilities (utilitarian social welfare) divided by the number of agents. , i.e.: utilitarian welf are(bid) = number of agents i Where u i is the utility function of the i-th agent We divide the utilitarian welfare by the number of agents so the scale of the social welfare values and the individual utility values will be the same, both between 0 and 1.
Similar to the settings of ANAC 2015 -2018, we assume that it is possible to iterate over (and evaluate) all of the solution space (i.e., all plausible bids) in a feasible time. We roughly estimate a feasible time to be one minute, although we are aware that the real run time is affected by additional parameters such as the machine's available resources. The same time limit is enforced by default in the framework we use.

Strategy Design
We base our agent's architecture on BOA (bidding strategy, opponent model, and acceptance condition) architecture, introduced by Baarslag et al. (2014) [6], which has become a common framework for developing negotiating agents [49,10,35,23]. The BOA architecture defines the different components in an agent's strategy used for its decision-making process, which are: opponent model, bidding strategy and acceptance condition. The opponent model component aims to model the opponents' preferences based on their actions thus far in the negotiation. These models are then used for evaluating the social welfare components of bids received and for generating the bid the agent can offer as an alternative. According to this framework, the agent's decision whether to accept or reject a newly received bid is made based on comparing the utility encapsulated in that bid and the expected utility from proposing an alternative bid of its own. In the following paragraphs, we provide a detailed description of HerbT+'s specific implementation of the above components.

Opponent Model
In the absence of any information about the other agents' design, strategies and goals, iHerbT+ generates and maintains a different opponent model for each negotiating opponent. Each one of those models is made to predict the probability that the opponent will accept a given offer.
Learning Algorithm. For constructing the opponent models we use Logistic regression, which is a standard supervised learning regression algorithm used to predict the probability of a target variable [33]. The nature of a target variable is dichotomous, which fits the nature of the bid acceptance variable in our case, enabling mapping any new bid to a value between 0 and 1, representing the probability of its acceptance by the opponent. The choice of using logistic regression in our setting heavily relies on the strong correlation between an opponent's utility from a bid and the probability that it will accept that bid ( Figure 5 demonstrates this correlation). Since individual utility functions in our application domain are linear, there is much advantage in using a linear prediction model such as logistic regression. Furthermore, regardless of the extent to which an opponent's utility depends on social welfare, its goal function maps to a linear combination of the different opponents' individual direct utilities from the bid. Using a non-linear model in this case might result in overfitting and slower learning [22].
Assembling the Data. Any newly received bid from an opponent or an opponent's decision to accept or reject a bid received is added to the bidding history and augments the input used for constructing the model of that opponent. A new bid is a positive example for an offer that the bidding opponent will accept, and so is the acceptance of a bid by an opponent. A decision to reject a bid is a negative example for a bid that will not be accepted by that opponent. Hence a rejection of an offer and consequently the proposal of a counter offer result in two additional inputs (one negative and one positive) for the modeling of that opponent.
The processing of the input involves converting each bid to a vector, in a way that values of discrete nature are represented as a sub-vector, using one-hot encoding [40], where only the value picked is true and all others are false, and values of parameters defined over a range are normalized to values in the range 0-1. The above usage of sub-vectors for discrete values enables correlating the weights assigned with specific values of the issue of concern rather than using a fixed weight. As for issues which values are taken from a range, the transition to values within the range 0-1 is a common practice in machine learning, aiming to provide a common scale, hence boost convergence of assigned weights by starting with similar initial weights. Each such bid input also includes the indication of whether to be accepted or rejected as the classification result.
Model Construction. For model construction, we provide an innovative mechanism, specifically suited for automated negotiation scenarios, to improve the model's prediction based on randomly initializing and training the model from scratch in each round. In our model construction, we use the Stochastic Gradient Descent Algorithm (SGD) [42], which minimizes the loss function by computing its gradient after each training sample, slightly pushing the weights in the right direction (the opposite direction of the gradient). Rather than choosing a single random sample at a time, moving the weights so as to improve performance on that single sample, we provide the samples (bids) in the order in which they have been collected by the agent. This choice is made primarily because it is possible that opponents' acceptance strategies evolve over time. This can be either because they acquire and make use of the information unfolded along the negotiation, due to modeling of their opponents, which keeps evolving throughout, or simply because of using complex strategies with different acceptance and concession strategies for different phases of the negotiation.
Providing the examples in the order in which they were received thus assigns greater weight to most recent observations. Formally, we consider the hypothesis space h θ (x) = sigmoid(W x + b), where θ = (W, b) and W ∈ R |x| , b ∈ R. x is the input bid, converted to a vector as mentioned earlier in the current section, and h θ (x) is the predicted acceptance probability of the input bid. We search for θ which minimizes the cost function: Where y is the actual outcome for the input bid, i.e., 1 if the bid was accepted (or offered) and 0 if it was rejected.
To search for θ that minimizes the cost function, as mentioned above, we use SGD with the modifications we mentioned earlier: Where ∇Cost(h θ (x), y) is the gradient of the cost function. In our implementation, we use a learning rate of 0.5.

Algorithm 1: Stochastic gradient descent (SGD)
Input: Training data S, learning rate η Output: Model parameters Θ θ ← |x| + 1 random negative values On each turn, we train the model from scratch (as opposed to updating the model based on the last observation received), using random initial weights. This design approach relates to a specific characterizing property of our setting-while typically the learned model is used for classifying all upcoming examples, in our case the goal is to maximize the benefit from the one bid we place during any of the coming turns that will be accepted by the opponents. Meaning that instead of being relatively accurate with all predictions made, it is far better to be able to accurately predict acceptance probability in at least one turn such that a highly affected bid will be produced and accepted by the opponents. Indeed, any model constructed from scratch using SGD when following all observations in the order received is just as good as the one constructed based on the current model with the necessary changes to weights resulting from the new observation according to the gradient descent, as they only differ in the initial weights assigned at the beginning of the process. However, with a new model during each turn, we substantially increase the probability that one of these new models will be far more accurate than the one that is continuously being updated with the new observations, hence the advantage of our approach. A comparison of our approach against continuously updating the same model is provided in the Appendix. At the beginning of the negotiation, when the amount of available data about bids and acceptances is very small, an accurate prediction is precluded. To handle this problem, we initialize the logistic regression model weights with random negative values. Doing so guarantees that the predicted acceptance probability for most offers evaluated is substantially small, hence the dominating part in the agent's goal function will be its own direct utility (see below for a more detailed explanation). This design choice is made to enable further learning, as much insight will be gained from the acceptance or rejection of such a-typical bids. This changes quite quickly-with the very first bids placed by the opponent or her decision to accept or reject a bid placed by one of the other agents the negative values are changed by the training procedure of the logistic regression. The weight of a value that was accepted by an opponent will increase and the weight of a value that was rejected will decrease further. Figure 6, shows the mean absolute error of the model in each round of the negotiation.

Bid Valuation
As defined in Section 3, the agent aims to maximize a discounted trade-off between individual and social welfare which is being captured by the parameter β. Knowing the direct utility u i (b) that each agent gains from a bid b enables calculating the direct individual utility and social welfare offered by this bid, if accepted. Still, the agent only knows its own direct utility function. Indeed, the opponent modeling applied enables estimating the acceptance probability of the bid by the other agents, and since this probability is highly correlated with individual utility it can be used, with some manipulation, to estimate the other agent's utility as part of the social welfare calculation. Unfortunately, even if one has a good estimation for the weighted utility encapsulated in each bid, it is not necessarily the bid associated with the maximum predicted utility that needs to be picked. Instead, the selection process needs to take into consideration the probability that the bid will be accepted and the (discounted) utility that will eventually be obtained in case it is rejected.
Considering the bid's chance of acceptance as part of the selection process is highly challenging, as predictions are highly noisy at early stages and the influence of an inaccurate estimate can be devastating. Estimating the expected utility from the continued negotiation in case the bid is not accepted is even more challenging, as the opponents' negotiation strategies are unknown to the agent and therefore difficult to model. We therefore turn to an alternative approach, one that treats each of the two components of the agent's goal function (individual utility and social welfare) differently. The idea is to assign a score to the bid and choose the bid associated with the maximum score. While the score we assign to bids is expressed in terms of utility, its calculation does not adhere to the traditional expected utility calculation principles, as we explain in the following paragraphs. 3 For the direct individual utility part of a bid, which is known to the agent at the time it makes its decision, we enforce a utility threshold, i.e., consider a value for this part only if the direct individual utility is above the threshold. The threshold starts at a value of 1 and linearly decreases over time until reaching the discounted reservation value, meaning that there will always be a bid above the threshold since there is always a bid with a utility value of 1. For bids offering a direct individual utility exceeding the threshold, we take their contribution to the bid's overall score to be the average acceptance probability of the bid by the opponents (which, as discussed above, is a good measure for their utility from that bid). This is done in order to increase the score of bids that are likely to be accepted, among those that offer an individual utility greater than the threshold set. Otherwise, i.e., if the bid offers the agent a direct individual utility smaller than the threshold set, the individual utility component adds no contribution to the score. This means that in such case, the bid must get an exceptionally high score in the social welfare component in order to compensate for the relatively low individual utility, in order to be picked as the winning bid. For the social-welfare part of the bid, which is highly noisy (and hence has a high potential for substantially damaging the score), we use a heuristics score function. The function estimates the average of the utilities that each agent gains from the bid. For our agent, we use our utility function, u ours (bid), as we know it. For the opponents, using the correlation assumption mentioned above, we use our opponent modeling output for a bid as an estimate of the utility for the opponent. To reduce the effect of estimation inaccuracies we take the square of the opponent modeling output for the score calculation. Thus, the calculation of social score(bid) is: where u i (bid) is the estimated acceptance probability according to the opponent modeling. This approach for bid valuation is very different from most strategies for automated negotiation with preference uncertainty as it is not based on a concession threshold. Most strategies, including social welfare-based ones [31,36,16,17,48], maintain a threshold that decreases along the negotiation, such that the agent will not accept or propose offers with a utility lower than the threshold.
Our strategy does not use such a threshold. 4 Instead, it always turn to the bid that maximizes expected score, where the only thing that changes along the negotiation rounds is the agent's modeling of the opponents' willingness to accept the different bids and consequently the utilities they encapsulate. Thus, as the negotiation progresses, our agent will offer bids that are more likely to be accepted by its opponents. This innovative approach is effective for reaching early agreements since the use of a concession threshold strictly forces the agent to reject a bid (until a certain point), regardless of the domain's preference homogeneity (preference homogeneity is described in Section 5.1) or the willingness of the opponents to compromise. As discussed in Section 6.2, reaching early agreements is extremely effective for maximizing social welfare. The two score components above are then weighed according to β. Thus the calculation of score(bid) is: β * social score(bid) + (1 − β) * individual score(bid) and the bid associated with the highest score (in a tie, one of the top bids is chosen randomly) is the one to be used as the alternative when evaluating the currently received bid (i.e., the bid that the agent needs to decide whether to accept or reject). Searching for the bid with the highest score presents a drawback: we assume it is feasible to evaluate the entire bid space in one turn. While this is true for the settings in ANAC between 2015 and 2018, it is problematic in other settings where the space is too big to iterate it fully. Still, in most real-life negotiation environments, such as the scenarios described in the introduction, the negotiation space is reasonable, and the negotiation cycles are long enough to reason about the entire space [1,26].

Acceptance Condition
Upon receiving a bid, our agent compares the discounted score of the bid against the discounted score of the next bid our agent will offer according to the bidding strategy. The discounting is calculated according to the time each one of these bids might get accepted by all agents. The agent accepts the proposed bid only if its score is higher than or equal to the next bid's discounted score. If the current bid and the new bid both apply to the same round, then no discounting takes place.

Experimental Design
A preliminary version of our negotiation agent (AgentHerb) was submitted to the ninth Automated Negotiating Agents Competition (ANAC) and won first place in the social-welfare category. The core difference between the submitted agent and HerbT+, which evaluation is described in the following paragraphs, is that while the latter fully implements the design proposed in the former section, the first is a specific instance that does not make any tradeoff between individual utility and social welfare (which is equivalent to using β = 1). We hereby detail the evaluation process of HerbT+, as well as the choices made during the evaluation and their reasoning.

Framework
The evaluation was run using the GENIUS framework [30]. GENIUS -General Environment for Negotiation with Intelligent multi-purpose Usage Simulation is a framework for designing and evaluating agents for automatic negotiations. It is used as the primary framework for the ANAC competitions and is actively used in academic research. Using this framework, one can create an agent that can negotiate in any domain. The GENIUS framework also allows the user to define a domain for the negotiation and to define utility functions which represent different preferences in the domain. Once a domain and agents are chosen for the negotiation, each utility function of the domain is assigned to an agent. The framework allows the user to run the negotiation with the agents he chose over the domains he chose, and analyze the results. In the framework, a domain is composed of several issues. As mentioned in Section 3, each issue can be either an integer issue or a discrete issue. GENIUS framework provides a comprehensive set of agents and domain scenarios that the user can use to evaluate his strategy. Most of these domains and agents are based on submissions from previous years of ANAC. Using this framework and the agents it provides, we ran an extensive set of negotiations to evaluate our strategy. To enable the execution of a large volume of negotiations based on which the evaluation takes place, we modified the source code of GENIUS to enable us to run the pools procedure, which is described in Figure 3. In addition, for analyzing the results, we modified the GENIUS's source code to receive additional information from the negotiation process about the actions of the agents during the negotiation.
The evaluation used seven different domains, each characterizing different classes of negotiation settings, and 63 negotiation agents (other than HerbT+). In ANAC, the time limit of each negotiation was 180 seconds. In our case, a limit of 180 seconds per negotiation would be impossible to run as we ran millions of negotiations in our evaluation. Therefore, we ran our experiment with a limit of 180 rounds, which is the default limit in the GENIUS framework. To ensure the difference between the time limit and the round limit is not critical to our agent performance, we did run some experiments with a time limit of 180 seconds.
Domains A domain characterizes a class of negotiation settings based on six parameters: -The number of issues in the domain.
-The size of the domain (i.e., the number of possible outcomes in the domain).
-The discount factor of the domain.
-The reservation value of the domain.
-The types of issues in the domain, i.e., integer or discrete.
-The preference homogeneity in the domain.
Most of these characteristics were also used in ANAC [13]. The last parameter, preference homogeneity, reflects the extent to which the different agents' utility functions align with each other. It is measured as the maximum social welfare the agents can reach in the domain, i.e., pref erence homogeneity(domain) = max bid∈domain number of agents i The greater the maximum possible social welfare, the greater the homogeneity between the utility functions, whereas low preference homogeneity means there are more conflicts between the utility functions used, hence it will be harder for the agents to reach an agreement. For the evaluation, we used the following domains:  Table 1: The domains used for the evaluation.
The above domains are based on a subset of the prebuilt domains and preferences from GENIUS 8.0.4: "Domain2", "Domain4", "Domain16", and "testIntDomain". In order to reach a highly varied set of settings, including those typically used in ANAC, we changed the discount factor and reservation value in a few of the prebuilt domains. This choice of domains aimed to provide a balanced mixture of small, medium and large solution spaces (yet still iterable in a feasible time), different kinds of discount factors, discrete and integer issues, low, medium and high reservation values and low and high preference homogeneity values.
Agents For the evaluation, we used agents from ANAC 2015 -2018, which were available to us via the GENIUS framework [30] (see Table 2). Agents from ANAC competitions which took place before 2015 were designed for bilateral negotiation and therefore are not suitable for multilateral negotiation. As for more recent ANAC competitions, after ANAC 2018 more constraints were added to the contest framework, such as having incomplete knowledge about the agent's own utility function. Therefore agents designed for those competitions could not be used either. In all these years, except for 2016, ANAC had two categories for the multilateral negotiation league: individual utility and social welfare. The winners of the individual utility category and the winners of the social welfare category are the ones who achieved the highest individual utility and social welfare, respectively.  In the evaluation, we wanted to assess our agent's performance compared to all types of agents, those who achieve higher utilities relative to others and those who do not. Therefore we want to let our agent negotiate against all of the agents available to us. Most multilateral agents support negotiating with two agents and are evaluated in three-agent scenarios, as those are the scenarios that are used in ANAC. Therefore, in our evaluation, we used three-agent scenarios as well. In order to compare the performance of all of these agents, a run of every scenario of three agents from the set of agents is required. With an upper limit of 180 rounds per negotiation, which is the default round limit in our framework, the time required to run all of these negotiations becomes impractical. In order to reduce the number of negotiations, we chose to compare our agent's performance against only the top agents. However, each of those agents will negotiate with all of the available agents. Therefore we create two pools. The first pool, i.e., evaluation pool, is used for evaluating a single agent's performance and includes all of the agents available to us. An agent evaluated using this pool will negotiate against every agent from this pool. The second pool, i.e., comparison pool, is one that contains the agents for whom we are interested in comparing their evaluations. The agents from the comparison pool are the agents who will be evaluated using the evaluation pool and compared to each other. In addition, since we are also interested in evaluating an agent against the top agents, the comparison pool is contained inside the evaluation pool. Using these two pools, we run every scenario of agents from the evaluation pool only if it contains at least one agent from the comparison pool.  For the evaluation pool, we chose all of the agents available to us, a total of 63 agents, not including our agent, from ANAC 2015 -2018. For the comparison pool, we chose our agent and 15 more agents who reached the top places in these years, either in the social welfare category or in the individual utility category. The following agents were used for the comparison pool:  Using this procedure, we significantly reduce the number of negotiations without compromising on the quality of the evaluation of each agent, as each agent from the top agents is still evaluated against all the types of agents available to us.

Results Analysis
In the following sections, we show the performance of our agent, HerbT+, compared to the performance of the chosen top agents. Furthermore, we provide an extensive analysis that sheds light on the contribution of several important design choices made and their contribution for the agent's success. We will start by providing the overall performance of our agent and then proceeds to discuss the observations and insights we have made about our agent from the results of the evaluation.

Agent Performance
In the following paragraphs, we compare how well each agent manages to make the tradeoff between social welfare and individual utility. To do so, we define beta score to be the score of an agreement given the tradeoff coefficient β between social welfare and individual utility: beta score(bid) is calculated using the following equation: β of 1 means we look only at the social welfare of a bid, and β of 0 means we look only at the individual utility of a bid. The graphs in Figure 4 show the beta score of each agent for each beta with jumps of 0. According to our results, except for domain D, where the discount factor is 1, our agent managed to outperform most of the agents. The lower the discount factor in the domain, the higher the beta score obtained by our agent. In fact, in domain A in which the discount factor is 0.2, our agent was able to achieve the highest beta score for almost every β (every β above 0.1). In addition, as can be seen, the closer the beta is to 1, i.e., the higher the weight of social welfare, the better the performance of our agent relative to the other agents. Yet, even when β is equal to 0, i.e., when our agent's goal is to maximize its individual utility, in most domains, our agent manages to outperform most of the agents and in domain B our agent managed to achieve the highest individual welfare among the agents. In most values of β in the graphs, Atlas3 [36] had the closest beta score to our agent, and in most domains, he was able to achieve a higher beta score than our agent did when β was close to 0. Atlas3's beta score can be explained by the fact that Atlas3 was proven effective for both social welfare and individual utility maximization (as he won both categories in ANAC 2015 [13]), unlike the other agents who were found effective for at most one of them. In order to further verify the performance of our agent, we ran a dependent t-test [21] on the results of the two agents whose sum of the beta scores over all the negotiations is the highest. The first agent is our agent, HerbT+, and the second is Atlas3. Using t-test, we found the difference between the two agents' performance to be statistically significant (p < 0.0001). Table 4 summarizes the social welfare score of all the agents in all of the domains when β equals 1, i.e., when the goal is to maximize the social welfare. 5 As can be seen from the table, the strategy described in this research was able to achieve the highest social welfare among the agents in all domains except for domain D (where the discount factor is 1) in which AgentH [17] achieved the highest social welfare. Even though our evaluation is based on limiting the number of rounds rather than the number of seconds allotted, we provide a comparison based on the latter measure (180 seconds) for domain B. Domain B was chosen because most of its characteristics are average compared to the rest of the domains. Here, again, the performance of our agent is best among all the agents tested, resulting in social welfare of 0.3221, compared to 0.3142 (JonnyBlack), 0.2926 (AgentX) and 0.2921 (Atlas3), which are the best agents in this category (see complete  -From the results in domain A and domain E, we conclude that a low number of possible outcomes (in our evaluation, 25 possible outcomes) and a high number of possible outcomes (in our evaluation, 65,536 possible outcomes) does not have a negative effect on our agent's performance.
-From the results of domain F, i.e., the domain with the integer issues type, and the results of domains A, B, C, E, and G, i.e., the domains with the discrete issues type, we can see that our agent manages to handle both domains with discrete issues and domains with integer issues. -From the results of domains A, C, and F, i.e., the domains with a low reservation value (reservation value of 0), and the results of domain G, i.e., the domain with high reservation value (reservation value of 0.7), we can see that both low reservation values and high reservation values do not have a negative effect on the agent's performance, as in both scenarios, our agent was able to achieve the best results. -From the results in domain B, we can see that although naturally, our agent's performance is lower on domains with low preference homogeneity than the other domains, it is still high relative to the other agents. -From the results of domain B with time limit, we can see that the difference between time limit and rounds limit does not have a negative effect on our agent's performance. -From the results of domain D, we conclude that our agent is sensitive to high discount values, and specifically, our agent's performance is lower on domains with a discount factor of 1, i.e., domains without discounting. More about that will be covered in the following sections.

Discount Factor Implications
Since in domain D, which was the only one where HerbT+ was not ranked first, the discount factor is 1, we extended the evaluation to verify that indeed the discount factor fully accounts to the difference. Specifically, we used domains A -D with β = 1 and β = 0.5 for all discount factors with jumps of 0.2. The results are presented in Table 5 and     Table 6: Beta score by discount factor for β = 0.5 Indeed, according to our results, a discount factor of 1 decreases the performance of our agent relative to other agents.
In addition, the results emphasize the stability of our agent. Our agent's achievements seem to be only influenced by the discount factor, unlike other agents whose results are harder to predict and seem to be influenced by many parameters since in each domain we see that another agent got the highest beta score.
The difference between the performance in discounted and undiscounted domains indicates that our agent manages to keep its utility from being substantially reduced by the discount factor and therefore increases the social welfare it achieves at the end of the negotiation.  From the table, we can see that when removing the effect of the discount factor on the results, our agent's score is still among the top agents. However, for example, in domain A, domain C, domain E, and domain G, we can see that there are agents with higher undiscounted social welfare than our agent. This difference strengthens our agent's capability of avoiding a significant discount factor reduction, relative to other agents, and explains a significant part in its success in maximizing the beta score. To understand the difference between our agent's discounted social welfare and undiscounted social welfare, first, we look at the average negotiation length of each agent, as provided in Table 8 and Table 9. 5 The lower the average length is, the smaller the effect of the discount factor.       Table 9: Average agreement round by discount factor for β = 0.5 According to our results, all of the agents who achieved good results in terms of social welfare also have a relatively low agreement round, e.g., AgentX, AgentH, Atlas3. These results genuinely emphasize the importance of finding agreement fast and finishing the negotiation early in order to maximize social welfare. Furthermore, in most domains, our agent has the lowest average agreement round, and when β = 1, it has the lowest one in all of the domains. Our agent's ability to quickly find agreements with a high beta score, with a low number of rounds, is one of the key aspects for its success in maximizing the beta score in domains with discount factors that are different than one. To understand the reasons for our agent's low agreement round, we collected statistics from the negotiation process of the agents about the agents' behaviors. The decline rate of an agent is the rate at which the agent rejects a received bid and proposes a counteroffer. It is calculated using the following equation: decline rate(agent) = number of declines(agent) number of actions(agent) number of declines(agent) and number of actions(agent) are the number of time agent rejected an offer and all the number of times agent had to make a decision on accepting or rejecting of an agreement, respectively, in all the negotiations we ran on a domain.       Further analysis of the results reveals that HerbT+ has the lowest decline rate among the agents in most of the domains and discount factors. In domains with a discount factor of 0.2, it even seems that our agent almost always accepts. Our agent's low decline rate relative to that of other agents explains our agent's low agreement round. As with average agreement rounds, the agents who achieved good social welfare among the top agents have a relatively low decline rate, which indicates that a low decline rate plays a substantial role for agents who want to maximize social welfare. In Table 8 and Table 10, we can see that even when the discount factor equals 1, our agent's average agreement round is low relative to other agents. However, since there is no discount factor reduction, an early agreement does not improve the negotiation's outcome, which causes our agent to lose that advantage over the other agents. In addition, when there is no discount factor reduction at all, agents have no incentive to make concessions and change their original offer until the late rounds in the negotiation, which makes our attempt to model the agent's utility function more difficult. These two reasons explain the lower results of our agent with a discount factor of 1. With that being said, while in ANAC all agents have the same discount factor, the situation might be different in other settings. In settings where each agent has its own discount factor, one that is not known to the other agents, there is an advantage for maximizing social welfare in early agreements, even if our agent's discount factor is 1, as we do not know how much the social welfare is reduced due to other agents' discount factors.

Always Accept Policy
Our agent's low decline rate, which is a key factor in its success, raises an important question regarding the need in efficient opponent modeling and bidding strategy-if the bids our agent rejects and the offers our agent makes are negligible for the performance of the agent, any agent who agrees on everything could achieve the same results. To verify the contribution encapsulated in our agent's opponent modeling and bidding strategy, we created a new agent to compare our agent against. Our new agent will have the same opponent model and bidding strategy, but its acceptance strategy will be to always accept, and therefore the new agent opponent model and bidding strategy will be used only when the new agent has to make an offer, i.e., when the new agent is the first to make an action in the negotiation. By comparing the new agent performance against the other top agents, we will be able to see the contribution of a low decline rate to the social welfare, as our new agent will have the lowest possible rate. To evaluate the agent we created, we added it to both the evaluation pool and comparison pool, as mentioned in section 5.1 under the name AlwaysAcceptAgent. We ran the evaluation with all of the top agents, including our agent, HerbT+, and the new agent on domains A-D, with beta = 1 (where the decline rate of our agent is the lowest), and with all of the discount factors with jumps of 0.2. The results are described in    According to our results, AlwaysAcceptAgent managed to outperform most of the agents in terms of social welfare, especially in domains with a low discount factor. From these results, we learn that in some scenarios, in order to maximize social welfare in multilateral negotiation, a strategy to consider, which is simple and achieves reasonably good results, is to agree on everything, i.e., taking yourself out of the picture and thus making it easier for the other agents to find an agreement. In addition, the results above demonstrate the effectiveness of the opponent model and the bidding strategy of our agent, HerbT+. Our agent was able to surpass AlwaysAcceptAgent's performance in all domains and discount factors except for a discount factor of 0.2, where they achieved similar results. To further explore the differences between the two agents, we provide the average social welfare and the average individual utility of the offers that "AlwaysAcceptAgent" and "HerbT+" accepted, over all the negotiations we ran on the domains (denoted acceptance social welfare and accepted individual utility, respectively). The average acceptance social welfare and average acceptance individual utility are calculated using the following equations: The results are described in Table 13.   According to our results, with most discount factors, our agent, HerbT+, does manage to accept bids with a higher social welfare than AlwaysAcceptAgent. Interestingly, the individual utility of the bids that HerbT+ accepts, in most discount factors, is much higher than the individual utility of the bids AlwaysAcceptAgent accepts even though HerbT+ is tuned to maximizing only social welfare (β = 1). This actually makes sense as our agent's individual utility is part of the overall social welfare, so, in order to maximize social welfare, one of our agent's interests is also to have a high individual utility for itself. From those results we learn that one reason for the difference between our agent's performance and that of AlwaysAcceptAgent is that, unlike AlwaysAcceptAgent, our agent also tries to achieve a high individual utility for itself, as doing so helps it to increase the overall social welfare.

Offers/Accepts Comparison
To understand the contribution of the offers our agent makes compared to the offers our agent accepts, we first provide the negotiation agreement rate of the agent. The negotiation agreement rate of an agent is defined as the likelihood of a negotiation to end with an agreement of the agent given the agent participated in the negotiation. We calculate it as the number of negotiations that ended with an agreement offered by the agent divided by the number of negotiation sessions in which the agent participated. The results are described in Table 14.   From the results, we can see that, especially when β is closer to 1, the chances of a negotiation ending with an agreement that was offered by our agent are relatively low. Therefore, our agent's performance is more influenced by the offers it accepts rather than the offers it makes. In addition, from the results of other agents, we learn that an agent's negotiation agreement rate is not strongly related to its performance. Both an aggressive agent, i.e., an agent that tends to end a negotiation with an offer it proposed, and a non-aggressive one that tends to accept other agents' offers can achieve good results. For example, while Sontag has a relatively low negotiation agreement rate and Agent33 has a relatively high negotiation agreement rate, both achieve relatively good results. To further investigate the contribution of the bids our agent accepts, we measured the acceptance beta score (i.e., the average beta score of the accepted bids of an agent) of all of the agents. The results are shown in Table 15 and       According to our results, in most scenarios, our agent, HerbT+, accepts bids with a relatively high beta score but usually not the highest. However, in Table 14, we saw that our agent's performance is more affected by the bids it accepts, i.e., its acceptance beta score, than the bids it offers. Therefore, a good acceptance beta score will increase its overall performance more than it would increase other agents' performance. From this result, we learn that a significant reason for our agent's success is a combination of a low decline rate and a low negotiation agreement rate while still maintaining a high acceptance beta score, especially when β = 1. In other words, our agent manages to achieve good results by accepting many bids relative to other agents and still manages to keep a high average of the beta score of the bids it accepts. With that being said, it would also be interesting to see the results of negotiations that do end with an agreement that was proposed by our agent. We measured for each agent the average beta score of the negotiations that ended with an offer of the agent. The results are shown in Table 17 and Table 18 Agent     Table 18: Beta score of the negotiations that ended with an offer of a specific agent for β = 0.5 According to our results, although not many negotiations end with an agreement that was offered by our agent, the ones that do end with a relatively high beta score, especially when β = 1.

Unique Populations
In the following section, we provide an analysis of our agent's evaluation in different and unique agent populations.
Only Social First, we used only the agents who try to maximize social welfare (i.e., the agents who had an achievement in the social welfare category according to Table 3) as our population. Using only negotiations with the agents in this population, we compared our agent's social welfare with β = 1 to the social welfare achieved by each of those agents. The results are provided in Table 19.  According to Table 19, when the entire population tries to maximize social welfare, our agent managed to achieve the highest social welfare than all the other agents in all the domains (including domain D, in which our agent did not achieve the highest social welfare with the original population, as shown in Table 4). In addition, every agent achieved higher social welfare in this population than it achieved in the original population in most domains. This makes sense since when all the agents in the negotiation want to maximize the social welfare, the social welfare will naturally be higher than the opposite case.
Self Negotiation Next, we evaluated how well our agent does in a negotiation against itself, relative to other agents, i.e., negotiation when all the negotiators are instances of the same agent (each such instance still has different preferences, but the strategy is the same). For this evaluation, we used only the negotiations who contain 3 instances of the same agents. The beta score of each agent is provided in Table 20.     Table 20, when competing against itself and when β = 1, our agent achieved the highest beta score in all domains (including domain D). Furthermore, when only negotiations of three instances of the same agent are considered, an agent's average beta score is equal to the average individual utility and the average social welfare of the agent. This means that when β = 1, in this kind of population, our agent outperforms all the other agents in all of the domains, both in its individual utility and social welfare. In addition, as can be seen in the table, unlike our agent, a lot of agents do not reach an agreement with themselves in some of the domains (when the beta score is the discounted reservation value of the domain).

Correlation Assumption
In our strategy, we assume that there is a strong correlation between an agent's utility function and the actions it takes, i.e., choosing a bid to offer and deciding whether to accept or reject another agent's offer. We test this assumption by comparing the output of the model we trained for each agent on each possible bid with the output of the real utility function of the agent. We compare the outputs using two measures: mean absolute error [43] and Pearson's correlation coefficient [24]. From the mean absolute error of the output of our model and the real utility function, we will be able to tell how close our model is to the real utility function and from the correlation between the output of our model and the output of the real utility function we will be able to verify the correlation assumption we use in our strategy. In addition, using these measures we compare our logistic regression model to other machine learning models: SVM [18], Decision tree [14], and Random forests [8]. We made the comparison using all of the negotiations in domain B. We chose domain B since it has the most samples of negotiations which proceeded to late rounds. The results are provided in Figure 5 and According to Figure 5, by training a logistic regression model with an agent's actions, we managed to build a model where the Pearson correlation coefficient of its output with the output of the real utility function is above 0.5. This indeed verifies the correlation assumption we use in our strategy. As expected, since the correlation is high, our model manages to achieve a relatively low mean absolute error with the real utility function. In addition, as can be seen in Figure 6, a logistic regression model does manage to achieve the lowest mean absolute error between the compared methods.

Random Initialization
In order to measure the effectiveness of re-initializing the logistic regression model with random weights in each turn, we compared our model with random initialization against our model which uses the same logistic regression model in all the negotiation's rounds and updates the model with each new observation. Table 21 provides the average agreement round and the achieved social welfare of each one of the models.   Table 21, we can see that when using the random initialization for the logistic regression model, our agent does manage to reach agreements faster, and therefore its achieved social welfare is higher.

Conclusion and Future Work
In this paper, we introduced an automated negotiation strategy for an environment with preference uncertainty that can be tuned by the user to balance between maximizing individual utility to maximizing social welfare. The proposed design includes several innovative aspects such as combining two score functions in order to build a strategy for any linear tradeoff between individual utility and social welfare, using an opponent's acceptance probability as an estimate for its utility, a random initialization mechanism specifically suited for automated negotiation opponent's modeling, and an effective non-threshold approach for maximizing social welfare.
Through an extensive evaluation, that includes 63 agents from ANAC 2015 -2018, we show that in most scenarios, our agent achieves the highest scores, for various tradeoffs between social welfare and individual utility. When the goal is to fully maximize social welfare our agent outperforms all the top agents in almost every domain.
Our motivation for developing such a strategy is to create a strategy that can simulate better the will of the user which in most cases is neither fully self-interested nor fully social. The majority of automated negotiation strategies today mainly focus on maximizing the individual utility of the user. In order to develop a strategy that can achieve a good agreement for the user both in the individual aspect of the agreement and the social aspect of the agreement, a study for social welfare strategies must be made as well.
In order to evaluate our strategy, we used 63 agents from ANAC 2015 -2018 and compared our performance against the performance of the top 15 agents from these years. In order to cover as many scenarios as possible, including but not limited to the scenarios that were used in ANAC, we evaluated our agent using 7 domains as described in table 1. From the results we made the following insights: -Our agent's achievements are stable and persistent on many domains and only influenced by the discount factor of the domain. -Our agent, when fully maximizing social welfare, is able to achieve higher social welfare than all the top agents in all of the domains except for domains with a discount factor of 1. -Our agent manages to achieve a higher beta score (i.e., the combination of individual utility and social welfare according to the user will) than most of the top agents in all of the domains except for domains with a discount factor of 1. -Our agent's success is highly influenced by its low average agreement round which also explains why it does better in domains with discount factors different than 1. -Our agent's performance is more affected by the offers it accepts rather than the offers it makes.
-Accepting most bids during the negotiation has a significant positive impact on the achieved social welfare.
In addition, in our strategy, we make an assumption which the likelihood of a bid to be accepted is strongly correlated to the agent's utility function, and therefore we can use our Logistic Regression model as an approximation of the utility function of an agent. In our evaluation, we compared the correlation and the accuracy of the model we trained against the real utility function. Indeed with the results, we were able to verify our correlation assumption.
We see several interesting extension of this work to be carried out in future work. Among these we emphasize the need to evaluate our strategy with non-linear utility functions and non-linear tradeoff functions (which should not change much in terms of agent design, but requires further evaluation), extending the design to support settings where the agent has partial information about its own utility function, and domains with an extremely large solution space. In addition, future research can focus on extending our evaluation for more than 3-agent scenarios.
Bibliography of the next opponent a from receiving a bid b, at a certain round r, after the bid was accepted by c opponents, in negotiation with n agents, knowing the opponent will accept it is: expected social welf are A (a, b, c, r) = expected social welf are((a + 1)%n, b, c + 1, r + 1) The expected social welfare knowing the next opponent is going to reject the bid and propose a counteroffer is: expected social welf are R (a, b, c, r) = expected social welf are((a + 1)%n, next bid(a), 0, r + 1) Where next bid(a) is the next bid agent a is going to propose. Therefore, the expected social welfare of the next agent receiving a bid, knowing only the probability of his acceptance of the bid, is: expected social welf are(a, b, c, r) = acceptance likelihood a,r (b) * expected social welf are A (a, b, c, r)+ (1 − acceptance likelihood a,r (b)) * expected social welf are R (a, b, c, r) Where acceptance likelihood a,r (bid) is the likelihood of agent a to accept a bid b at round r. The base case of this recursion is either all the agents accepted a bid (i.e., c = n−1) or no agreement was found within the round limit. Multiple issues arise when trying to calculate the score of a bid using this equation: -The opponent's counteroffer is unknown -The function next bid(a) is unknown to us, and therefore, we do not know what the agent will offer in case he will decide to reject our offer. -Our next actions are unknown -Since our actions are influenced by the offers the opponents make, since we do not know what offers the opponent are going to offer, we also do not know what actions we are going to take in the next turns. -Exponential time complexity -Even given all the missing information mentioned above, the complexity of calculating this equation is at least O(2 limit ). In our settings, the round limit of the negotiations is 180. Therefore, the computation becomes unfeasible. -Compatibility with real-time limit -In our settings, the limit of each negotiation is 180 rounds.
However, the limit can also be a real-time value. In ANAC the limit of each negotiation is 180 seconds. In such settings we would also not be able to know the number of rounds and therefore would not be able to calculate the base case (although we can try to estimate it by looking at the time of the previous rounds).
Nevertheless, we made an attempt to create a scoring function based on expected social welfare. In order the handle the mentioned issues, we made the following assumptions: -The events of each agent accepting a certain bid are independent.
-The actions of the opponents in the next turns are not going to affect our model in a way that will change our behavior. -The negotiation is going to end with either an agreement on a bid that was proposed by our agent or a disagreement.
Of course, those assumptions will not always be correct, but this is a compromise we take in order to handle the issues in calculating the expected social welfare.
Since we assume the next offers of the agents will not affect our behavior and the negotiation will not end with an agreement on an offer of an opponent, the offers of the opponent will not influence the rest of the negotiation and we might as well ignore them. In addition, since the opponents' actions will not affect our behavior, the next offer we are going to make is the same offer we are going to make until the end of the negotiation. Finally, in order to calculate the probability of a bid to be accepted by all opponents, we can use the independence assumptions and multiply the likelihood of each agent separately. Therefore, our scoring function will be calculated as follows: In order to calculate the acceptance likelihood of each agent, we can use our opponent model. To calculate the utility each agent gains from a certain bid, we can use the assumptions of the strong correlation between an agent's acceptance likelihood and an agent's utility function and calculate the utility using the output of the opponent model.
When evaluating our agent, we found this scoring function's performance to be less well than our original scoring function. A comparison of the two scoring functions is shown in table 22.

Scoring Function
Social Welfare Original 0.7505 Expected Social Welfare Based 0.7165 Table 22: Social welfare for both scoring functions on domain C