Version 11 (modified by Wouter Pasman, 3 years ago) ( diff )

--

NOTICE GeniusWebPython is due for release on august 2, 2021

GeniusWebPython

GeniusWeb is an open architecture for negotiation via the internet. The core of the architecture is a JSON based communication protocol that standardizes the communication messages comprising a negotiation.

This project contains a c-python-3-based implementation of GeniusWeb core objects. It allows easy (de)serialization of many data structures needed for negotiation in GeniusWeb. Some data structures have not yet been implemented in GeniusWebPython, this will be done as needed. Please contact us if you need some missing classes.

A specification and full reference implementation of the GeniusWeb core is available here

Overview of the available core objects

Most classes in the python core are explained in the java reference implementation:

class wiki reference
issuevaluesee wiki issuevalue
informsee wiki inform
actionssee wiki actions
deadlinesee wiki deadline
progresssee wiki progress
connectionsee wiki connection

Example Parties

Example parties can be found here. Many of these are also included with the basic parties server to provide basic functionality.

Below is a table showing the currently available example parties and their properties. Notice, "Supported profile types" gives the class names of all supported types, so for instance "PartialOrdering" means all subclasses of PartialOrdering which also includes all UtilitySpaces.

Party Protocol Supported profile types Parameters (default value)
RandomPartySAOP, LearnLinearAdditiveminPower (2), maxPower (infinity). Used to control voting behaviour
stupidpartySAOPLinearAdditive-

GeniusWeb sources

Downloading source code

You can browse the GeniusWeb core sources directly using the browse button at the right top of this page.

You can download the source code of this component using

svn co https://tracinsy.ewi.tudelft.nl/pub/svn/GeniusWebPython

Normal developers that write new parties do not need to install the GeniusWeb source code. Even if you want to debug/trace into the GeniusWeb code -- for instance for debugging or understanding the inner workings of geniusWeb--, IDEs like Eclipse automatically allow this as the pip-installed libraries contain sources.

Attachments (2)

Download all attachments as: .zip

Note: See TracWiki for help on using the wiki.