Multi-Agent

Contract Net Protocol

Classical bid-based multi-agent task allocation: a manager broadcasts a task announcement, contractors submit bids, and the manager awards the contract to the best bid.

Problem

Top-down assignment requires the scheduler to know every agent's capability and current load — global state that's expensive to maintain. Random or round-robin allocation ignores capability fit and load. Without a structured bidding mechanism, decentralized agents either collide on tasks or starve.

Solution

Define the protocol: (1) Announce — manager broadcasts task spec to capable contractors. (2) Bid — each contractor evaluates fit and submits bid {capability score, capacity available, cost, ETA}. (3) Award — manager picks best bid by configured criteria, sends acceptance. (4) Execute — winner commits and reports. (5) Cancel — bids not awarded receive cancellation. Add bid-validation to prevent dishonest bidding. Pair with decentralized-swarm-handoff, scatter-gather-saga, parallel-fan-out-gather.

When to use

  • Decentralized agent networks with heterogeneous capabilities.
  • Task allocation visible to multiple capable agents.
  • Latency budget allows bidding round.

Open the full interactive page

Diagram, neighbourhood map, code examples, related patterns and full provenance.

Related