Class BilateralNegotiation

java.lang.Object
com.tnsai.coordination.negotiation.bilateral.BilateralNegotiation
All Implemented Interfaces:
NegotiationProtocol

public final class BilateralNegotiation extends Object implements NegotiationProtocol
Bilateral negotiation protocol - two-party offer/counter-offer exchange.

Parties take turns making offers. Each party uses the configured ConcessionStrategy to compute their next offer. Agreement is reached when an offer is at or below the other party's current position.

Since:
0.0.2
  • Constructor Details

    • BilateralNegotiation

      public BilateralNegotiation()
  • Method Details

    • negotiate

      public NegotiationOutcome negotiate(List<com.tnsai.agents.Agent> parties, NegotiationConfig config)
      Description copied from interface: NegotiationProtocol
      Executes the negotiation between the given parties.
      Specified by:
      negotiate in interface NegotiationProtocol
      Parameters:
      parties - the agents participating in negotiation
      config - negotiation configuration
      Returns:
      the negotiation outcome
    • getType

      public com.tnsai.annotations.Coordination.NegotiationType getType()
      Description copied from interface: NegotiationProtocol
      Returns the negotiation type this protocol handles.
      Specified by:
      getType in interface NegotiationProtocol
      Returns:
      the supported negotiation type