---
title: "NegoLog: An Integrated Python-based Automated Negotiation Framework with Enhanced Assessment Components"
authors:
  - "Anıl Doğru"
  - "Mehmet Onur Keskin"
  - "Catholijn M. Jonker"
  - "Tim Baarslag"
  - "Reyhan Aydoğan"
doi: "10.24963/ijcai.2024/998"
url: "https://ijcai.org/proceedings/2024/998"
pdf: "https://ijcai.org/proceedings/2024/0998.pdf"
venue: "Proceedings of the Thirty-Third International Joint Conference on Artificial Intelligence"
year: 2024
pages: "8640-8643"
track: "Demo Track"
keywords:
  - "Agent-based and Multi-agent Systems: MAS: Agreement technologies: Negotiation and contract-based systems"
  - "Agent-based and Multi-agent Systems: MAS: Agent-based simulation and emergence"
---

# NegoLog: An Integrated Python-based Automated Negotiation Framework with Enhanced Assessment Components

Anıl Doğru, Mehmet Onur Keskin, Catholijn M. Jonker, Tim Baarslag, Reyhan Aydoğan

*Proceedings of the Thirty-Third International Joint Conference on Artificial Intelligence*, pages 8640-8643. DOI: [10.24963/ijcai.2024/998](https://doi.org/10.24963/ijcai.2024/998)

## Abstract

The complexity of automated negotiation research calls for dedicated, user-friendly research frameworks that facilitate advanced analytics, comprehensive loggers, visualization tools, and auto-generated domains and preference profiles. This paper introduces NegoLog, a platform that provides advanced and customizable analysis modules to agent developers for exhaustive performance evaluation. NegoLog introduces an automated scenario and tournament generation tool in its Web-based user interface so that the agent developers can adjust the competitiveness and complexity of the negotiations. One of the key novelties of the NegoLog is an individual assessment of preference estimation models independent of the strategies.

## Full text

## 1 Introduction

Agent-based negotiation aims to resolve conflicts of interest with intelligent agents negotiating on behalf of users in a range of group decision-making scenarios, spanning from commercial transactions to everyday life situations [Fatima et al., 2014; Marsa-Maestre et al., 2014]. Several simulation environments have been developed to facilitate the research in this field. Among them, the General Environment for Negotiation with Intelligent multi-purpose Usage Simulation, GENIUS framework [Hindriks et al., 2009; Lin et al., 2014], utilized in the Automated Negotiating Agents Competition(ANAC) [Jonker et al., 2017] plays a pivotal role in negotiating agent development and assessment. Researchers can design their negotiation strategies and protocols in Java and assess their performance by running tournaments using a rich negotiating agent repository over various scenarios. Recent developments in machine learning, including in negotiation, make Python a more suitable platform, given its rich set of libraries. Moreover, researchers typically need to provide their own logging mechanism if they need to store additional data for their approach (e.g., Reinforcement Learning, additional opponent modeling metrics), which is not straightforward. Members of the ANAC research community have developed GeniusWeb [Jonker et al., 2019] to resolve the programming language dependency and to enable real applications by distributing preferences, protocols, and agents over separate servers. This allows negotiators to rely fully on their servers and not on those of others; however, its distributed nature makes the agile development of agents difficult.

Another leading negotiation tool also utilized in ANAC is Negotiation Multi-Agent System (NegMAS), offering Pythonbased support for various protocols, strategies, and scenarios, especially in complex environments such as supply chain management [Mohammad et al., 2020]. Highlighting the interdependence of utility functions in negotiations, NegMAS distinguishes itself by offering a platform where utility functions evolve during the negotiations, addressing the static nature of negotiation setups in previous platforms. NegMAS automatically generates Python-based plots that illustrate the negotiation dynamics within the current outcome space, a concept referred to as the Negotiation Dance. While NegMAS offers comprehensive evaluation metrics, it lacks automated analysis of negotiation moves, such as reporting the efficacy of each negotiation move (DANCE steps), as discussed by [Hindriks et al., 2011]. Furthermore, NegMAS does not facilitate the evaluation of opponent modeling approaches independently from negotiation strategies (i.e., without needing to incorporate them into negotiation strategies). Consequently, it does not report metrics for opponent modeling (e.g., Root Squared Mean Error (RSME) and Spearman Correlations) to compare preference learning accuracy.

Recently, another framework called Negotiation Simulation Platform (NegoSim) has been introduced [Ebrahimnezhad and Fujita, 2023]. It extends the traditional bidding, opponent model, and acceptance strategy components with preference elicitation to facilitate agent development. While NegoSim offers user-friendly analysis tools, it does not generate extensive logs automatically. It provides a limited set of evaluation metrics that do not include measuring the performance of opponent modeling algorithms.

The main goal of the NegoLog framework is to equip researchers with comprehensive analytical capabilities for bilateral negotiations, allowing them to evaluate key negotiation components such as bidding strategy, opponent preferences, and strategy modeling. NegoLog empowers researchers to generate negotiation scenarios with varying sizes, degrees of opposition, and utility distribution. It caters to machine learning approaches, such as time-series analysis and reinforcement learning methods, by providing a set of logging mechanisms for the negotiation process (e.g., move, sensitivity, and cooperativeness analysis), outcomes (e.g., individual utilities, Nash distances, offer distributions), and opponent modeling (e.g., Spearman and Kendall-Tau rank correlations and RSME, move estimation). NegoLog's scenario generator and loggers are customizable, allowing the research community to extend and adapt NegoLog further.

## 2 NegoLog Framework

NegoLog 1 2 can evaluate bilateral negotiation tournaments among several agents across various domains. In each negotiation session of the tournament, the negotiation process is governed by Stacked Alternating Offers Protocol (SAOP) [Aydo˘gan et al., 2017]. Under this protocol, both parties negotiate without fully revealing their preferences, as they can either accept the opponent's bid or propose a counteroffer until a pre-defined deadline. If the negotiation ends without agreement, both parties receive their reservation value.

## 2.1 Architecture Design andModules

Similar to the other frameworks, NegoLog requires the implementation of an abstract class based on BOA components for agent development [Baarslag et al., 2014]. Consequently, developers can implement each component in a modular way. While running a tournament, the tournament class generates possible negotiation configurations (e.g., strategy and preference pairs) and runs each session accordingly, as shown in Figure 1. The tournament configurations can be saved as YAML data along with the chosen domains and reused/modified later as needed. Each of the selected opponent models can be fed with the current negotiation data and be evaluated in terms of prediction accuracy independently from the negotiation strategy. Furthermore, NegoLog contains a customizable analytics and visualization module to generate diverse statistical analyses and graphs. Researchers can also easily create custom analysis modules with built-in abstract logger classes. The following sections briefly explain the essential components.

## Domain Generator

NegoLog offers a versatile Domain Generator tool, enabling users to create negotiation scenarios based on user-defined parameters such as the number of issues and values, opposition, and utility distributions (e.g., uniform, random). Users also have the flexibility to edit generated domains manually. Besides, a recent research paper [de Jonge, 2022] underscores that balanced domains can be exploitable with sophisticated agents like Micro and outperform opponents despite their simplicity; accordingly, NegoLog has a balance score parameter to allow users to create both balanced and unbalanced domains. Our balance score metric measures to what extent the utility distribution for the agents is balanced and calculated as the average utility differences over the possible outcomes (i.e., 1n ∑ni=1 (U A i -U B i )). Note that it takes zero if the utility distribution is balanced. Otherwise, on average, the utility of the outcomes is higher for one of the agents. Our domain generator applies a boosting factor to profile A or B to create unbalanced domains. Figure 2 denotes four domains with various balance scores and opposition values.

[1 NegoLog GitHub Repository: github.com/aniltrue/NegoLog](https://github.com/aniltrue/NegoLog)

[2 The demonstration video can be accessed here.](https://drive.google.com/drive/folders/1PS06Rdu-WpDxOkbuubxkJllfh9vNKedr?usp=sharing)

Figure 1: Negotiation Session Process

![Image](https://ijcai.org/proceedings/2024/fulltext/998/image_000000_a37120a74a309b36ffca9c41aee3d115d9aea967767bee0c82bb18d8dcbbc4cf.png)

## Individual Opponent Model Evaluation

NegoLog introduces an abstract class for opponent model evaluation, which listens to negotiation sessions and builds several opponent models at once that estimate the opponent's preferences. This structure allows the independent development and evaluation of the opponent model and analysis of preference estimation performance [Baarslag et al., 2013a]. NegoLog can supply various estimators with received offers from the perspective of each agent throughout a negotiation session without directly utilizing an agent strategy. Thus, the performance evaluations can be conducted without relying on any specific bidding strategy. NegoLog keeps track of the performance of the opponent models by precise distance calculation via RMSE and estimated rank accuracy via Spearman and Kendall-Tau correlations [Baarslag et al., 2013b].

Figure 2: Domains with Different Balance Score and Opposition

![Image](https://ijcai.org/proceedings/2024/fulltext/998/image_000001_d0fc587b43588cf0f97ef47c06a9e45b0d10e21570e87e08840dcef0d7252372.png)

Figure 3: Tournament Generation Flow

![Image](https://ijcai.org/proceedings/2024/fulltext/998/image_000002_5306c0bb9a2c3daf9dcbb8a85e34813d00ceda1cabd97f4745d593220d9d9e9c.png)

![Image](https://ijcai.org/proceedings/2024/fulltext/998/image_000003_abd8532077dad251ccf710c00c42d10fecd01ac41f2fb07d81df066f9f302078.png)

## Web-Based User Interface

NegoLog is accessible through the console (i.e., command line) and a user-friendly Web-based interface. The user interface provides functionalities for configuring tournaments and monitoring the tournament process. Figure 3 illustrates the flow of tournament configuration generation. Users can define negotiation settings, select participating agents, specify loggers to be utilized and opponent preference estimators, and determine negotiation domains among generated scenarios during the configuration process. Additionally, the Webbased user interface includes the Domain Generator tool, enabling users to create, display, and edit negotiation domains conveniently via the Web-based interface.

## Analytics and Visualization Modules

NegoLog offers a range of built-in loggers designed to provide detailed negotiation logs, advanced analysis for evaluating agent strategy and opponent models, and statistical graphs. Table 1 summarizes the built-in analyses and their corresponding graphs. The evaluations are performed from three aspects: negotiation process, negotiation outcome, and preference estimation. Negotiation process-related analyses shed light on agents' behavior during negotiation sessions (e.g., utility distributions, concession, and selfish move percentages). Our negotiation outcome-related analytics provide the overall performance of the agents in the entire tournament, that of domain-based performances (e.g., performance in each domain), and the agent's performance against each opponent over all domains. Figure 4 illustrates an example of an opponent-based individual utility analysis in a heatmap graph. Lastly, preference estimation-related analyses evaluate the accuracy of estimators in predicting opponent preferences, enabling independent evaluation of opponent models. We aim to provide all statistics without requiring additional log file processing and simplify the researchers' lives.

Table 1: Analytics Modules for each Agent and Domain

| Session Process    | Negotiation Outcome   | Opponent Model Est.    |
|--------------------|-----------------------|------------------------|
| Offer Distribution | Individual Utilities  | RMSE & Spearman Corr.  |
| Move Analysis      | Nash &Kalai Distances | Move Estimation        |
| Sensitivity        | Social Welfare        | Estimated Nash & Kalai |
| Opp. Awareness     | Agreement Rate & Time | Pareto Estimation      |

Figure 4: Opponent-Based (a) &amp; Domain-Based (b) Analysis

## 2.2 Use Cases and Applications

Studies such as the conflict-based opponent model study [Keskin et al., 2023] underline the importance of opponent model-related analyses provided by NegoLog. Metrics like utility estimation performance (e.g., RMSE) and bid order estimation performance (e.g., Spearman and Kendall-Tau Correlations) are commonly employed in such studies. Our system can calculate them at the end of each round or only in the final round. Collecting massive datasets for training deep learning models necessitates a comprehensive logging mechanism [Yesevi et al., 2022]. These studies highlight the power of our framework in addressing these needs.

## 3 Conclusion and FutureWork

NegoLog has been developed to be a versatile and userfriendly framework for researching, agile development, and comparative evaluation of automated negotiation agents. From the development and research perspective of bilateral negotiations, it combines the best of the state-of-the-art in automated negotiation research frameworks. It has the rapid development and testing options of NegoMAS, combined with the repositories of agents, domains, and additive utility functions of Genius. It provides advanced customizable loggers, auto-generated statistics, visualization tools, and outcome analytics, e.g., Pareto optimality, distance to Nash, average utilities, and sensitivity to opponent's moves. Its novel features include the visualization of negotiation tournaments (heatmaps), the statistics of the dance moves, and tools for the customized generation of domains and profiles. The domain generator allows the developer to customize the characteristics of the domains and profiles generated, such as size, competitiveness, and unbalanced utility distribution. Unlike other tools, NegoLog enables modular, independent evaluation of opponent modeling approaches; furthermore, NegoLog supports the analysis of bidding and opponent modeling strategies in line with the BOA framework and the DANCE moves. These tools foster the independent development and analysis of sophisticated negotiating agents and preference estimation approaches. Incorporating an automated scenario generation tool completes the framework, offering a user-friendly and customizable environment for negotiation-related research.

## Acknowledgments

This work has been partially supported by the Chist-Era grant CHIST-ERA-19-XAI-005, and by the Scientific and Research Council of Turkey (T ¨UB˙ITAK, G.A. 120N680). This publication is part of the Vidi project COMBINE (VI.Vidi.203.044) which is (partly) financed by the Dutch Research Council (NWO). We also thank Duru Balpınarlı for her valuable contributions and feedback.

## References

1. [Aydogan et al., 2017] Reyhan Aydogan, David Festen, Koen V. Hindriks, and Catholijn M. Jonker. Alternating Offers Protocols for Multilateral Negotiation, pages 153- 167. Springer International Publishing, Cham, 2017.
2. [Baarslag et al., 2013a] Tim Baarslag, Mark J.C. Hendrikx, Koen V. Hindriks, and Catholijn M. Jonker. Predicting the performance of opponent models in automated negoti- ation. In International Joint Conferences on Web Intelli- gence (WI) and Intelligent Agent Technologies (IAT), 2013 IEEE/WIC/ACM, volume 2, pages 59-66, 2013.
3. [Baarslag et al., 2013b] Tim Baarslag, Mark J.C. Hendrikx, Koen V. Hindriks, and Catholijn M. Jonker. Predicting the performance of opponent models in automated negoti- ation. In Proceedings of the 2013 IEEE/WIC/ACM Inter- national Joint Conferences on Web Intelligence (WI) and Intelligent Agent Technologies (IAT), volume 2 of WI-IAT '13, pages 59-66, Washington, DC, USA, Nov 2013. IEEE Computer Society.
4. [Baarslag et al., 2014] Tim Baarslag, Koen Hindriks, Mark Hendrikx, Alexander Dirkzwager, and Catholijn M. Jonker. Decoupling Negotiating Agents to Explore the Space of Negotiation Strategies, pages 61-83. Springer Japan, Tokyo, 2014.
5. [de Jonge, 2022] Dave de Jonge. An analysis of the linear bi- lateral ANAC domains using the MiCRO benchmark strat- egy. In Luc De Raedt, editor, Proceedings of the Thirty- First International Joint Conference on Artificial Intel- ligence, IJCAI 2022, Vienna, Austria, 23-29 July 2022, pages 223-229. ijcai.org, 2022.
6. [Ebrahimnezhad and Fujita, 2023] Arash Ebrahimnezhad and Katsuhide Fujita. Negosim: A modular and ex- tendable automated negotiation simulation platform considering euboa. Applied Sciences, 13(1), 2023.
7. [Fatima et al., 2014] Shaheen Fatima, Sarit Kraus, and Michael Wooldridge. Principles of automated negotiation. Cambridge University Press, 2014.
8. [Hindriks et al., 2009] Koen Hindriks, Catholijn M. Jonker, Sarit Kraus, Raz Lin, and Dmytro Tykhonov. Genius: negotiation environment for heterogeneous agents. In Proceedings of The 8th International Conference on Au- tonomous Agents and Multiagent Systems -Volume 2, AA- MAS '09, page 1397-1398, Richland, SC, 2009. Interna- tional Foundation for Autonomous Agents and Multiagent Systems. [Hindriks et al., 2011] Koen Hindriks, Catholijn M. Jonker, and Dmytro Tykhonov. Let's dans! an analytic framework of negotiation dynamics and strategies. Web Intelligence and Agent Systems, 9:319-335, 01 2011.
9. [Jonker et al., 2017] Catholijn M. Jonker, Reyhan Aydogan, Tim Baarslag, Katsuhide Fujita, Takayuki Ito, and Koen Hindriks. Automated negotiating agents competition (ANAC). In Proceedings of the Thirty-First AAAI Con- ference on Artificial Intelligence (AAAI-17), pages 5070- 5072, Melbourne, 2017. AAAI Press.
10. [Jonker et al., 2019] Catholijn M. Jonker, Reyhan Aydogan, Tim Baarslag, and Wouter Pasman. Geniusweb. https: //tracinsy.ewi.tudelft.nl/pubtrac/GeniusWeb, 2019. Ac- cessed: 2024-06-20.
11. [Keskin et al., 2023] Mehmet Onur Keskin, Berk Buzcu, and Reyhan Aydogan. Conflict-based negotiation strat- egy for human-agent negotiation. Applied Intelligence, 53(24):29741-29757, dec 2023.
12. [Lin et al., 2014] Raz Lin, Sarit Kraus, Tim Baarslag, Dmytro Tykhonov, Koen V. Hindriks, and Catholijn M. Jonker. Genius: An integrated environment for support- ing the design of generic automated negotiators. Compu- tational Intelligence, 30(1):48-70, 2014.
13. [Marsa-Maestre et al., 2014] Ivan Marsa-Maestre, Mark Klein, Catholijn M. Jonker, and Reyhan Aydogan. From problems to protocols: Towards a negotiation handbook. Decision Support Systems, 60:39 -54, 2014. Automated Negotiation Technologies and their Applications.
14. [Mohammad et al., 2020] Yasser Mohammad, Shinji Nakadai, and Amy Greenwald. Negmas: A platform for automated negotiations. In PRIMA 2020: Principles and Practice of Multi-Agent Systems: 23rd International Conference, page 343-351, Berlin, Heidelberg, 2020.
15. [Yesevi et al., 2022] Gevher Yesevi, Mehmet Onur Keskin, Anıl Dogru, and Reyhan Aydogan. Time series predic- tive models for opponent behavior modeling in bilateral negotiations. In PRIMA 2022: Principles and Practice of Multi-Agent Systems, pages 381-398, 11 2022.
