Software

Most of my software is open source and released on GitHub, either under my personal account yasserfarouk or under the autoneg organization that hosts the wider NegMAS/automated-negotiation ecosystem. The two flagship projects are below, followed by the rest of the actively maintained repositories.

NegMAS Platform

NegMAS downloads per month

Authors: Yasser Mohammad et al.

NegMAS is a Python library for developing autonomous negotiation agents embedded in simulation environments. The name NegMAS stands for either NEGotiation MultiAgent System or NEGotiations Managed by Agent Simulations (your pick). Its main goal is to advance the state of the art in situated, simultaneous negotiations, though it is also widely used for simpler bilateral and multilateral negotiations, preference elicitation, and as the reference implementation for the ANAC competition tracks. It is the platform underlying most of my automated negotiation research.

SCML: Supply Chain Management League

SCML downloads per month

Authors: Yasser Mohammad et al.

SCML is the development and evaluation environment for the ANAC Supply Chain Management League: a simulated manufacturing value chain in which autonomous agents negotiate contracts for raw materials, intermediate goods and finished products under real-world pressures such as bankruptcy risk and delivery penalties. It ships both a “standard” world simulation and a simplified “one-shot” track. scml-agents collects the agents submitted to the competition over the years, and scml-vis provides tools for visualizing and debugging simulation runs.

More on GitHub

Automated Negotiation Leagues & Competitions
RepositoryDescriptionDownloads
anlOfficial repository for the Automated Negotiation League (ANL), part of ANACdownloads/month
anl-agentsAll agents submitted to the ANL track of ANAC since 2024downloads/month
han-agentsAll agents submitted to the Human-Agent Negotiation (HAN) league of ANAC
haniHuman-Agent Negotiation Interface, used to run human vs. agent negotiation sessions for the HAN leaguedownloads/month
unegNegotiation under uncertainty
NegMAS Ecosystem & Interoperability
RepositoryDescriptionDownloads
negmas-llmLLM support for NegMAS — use large language models as negotiators or negotiation componentsdownloads/month
negmas-appA graphical user interface for NegMAS
negmas-elicitPreference elicitation for automated negotiation, built on NegMASdownloads/month
jnegmasA Java interface to NegMAS
geniusbridgeA bridge allowing agents written for the Genius negotiation platform to run inside NegMAS
negmas-genius-agentsReimplementation of all GENIUS agents for NegMASdownloads/month
negmas-geniusweb-bridgeA wrapper that allows GeniusWeb agents to run in NegMAS negotiationsdownloads/month
negmas-negologA wrapper that allows NegoLog negotiators to run under NegMASdownloads/month
Robotics & Time-Series Tools
RepositoryDescriptionDownloads
posecopyA Matlab toolbox for pose copying in humanoid robots
mc2MC²: an integrated Matlab toolbox for change-point, causality and motif discovery in time series
Datasets
RepositoryDescription
kitchen_smartwatch_datasetSmart-watch accelerometer readings from 10 subjects preparing meals in an unmodified kitchen

Course and tutorial companion code (PAKDD 2025, AAMAS 2025, AJCAI 2023, IEEE ICA 2023, AAAI 2022, and others) is linked from the tutorials page. For the complete, continuously updated list of repositories — including one-off supplementary material for individual papers — see my personal GitHub profile and the autoneg organization.