The Models

Market Interests

The goals of a market (from our perspective) is to enable people and companies to find each other and let them do commerce as easy as possible. There exist several kinds of markets, like stock markets, currency markets, goods markets, etc. Participants in the markets have an interest in settling good deals with other participants in order to satisfy their "commercial" wants and needs. These market interests are what we from now on call interests. Since the goal is to use agents to automate electronic commerce there is a need to formalize and structure the interests of market participants (because agents do not understand human interests as they are). First we define interests as the set of potential deals a participant is interested in. Each deal is defined by:

The above example is a deal with the participants Joakim and Niclas as buyer and seller. The content of the deal is that Joakim will give Niclas $14 in exchange for a CD and the date of the deal is the 26:th of January 98. This simple model of a participant's interest in the market is the information model and its realization has to enable modeling contracts, participants and trade objects. The MIF (Market Information Format) is made to enable description of this sort of information.

Market Interaction

Participants in the market interact with each other in order to find others with matching interests and to settle deals with each other. This interaction has, as the interests, to be modeled in a way that enable agents to automate it. Typical interaction patterns in a market:
  • Advertisement - to promote your interests
  • Searching / Querying - to find matching interests
  • Negotiation - to come closer to an agreement
  • Offering and Accepting (Deal settlement) - to commit to an agreement The interaction model has to support the above interactions and also be general so that new interaction patterns easily can be modeled. The interaction model is implemented as the Market Interaction Language, MIL, and is described in next section.

    Market Interaction Language, MIL

    MIL is the language that agents in MarketSpace use for market interaction. MIL is designed to be as simple as possible, but not too simple. It can model interactions like advertising, searching, negotiation, and closing deals.

    The table below contains abstract MIL messages, each with different message type (meaning). A message is on the form "MessageType( Sender, Receiver, EOI)", where Sender and Receiver are the agents involved in the interaction and EOI is an Expression of Interest.

    Message

    Meaning

    Noncommitting

    Following messages are not legally binding

    Ask(A, B, EOI)

    A asks B to send (tell) matching interests

    Tell(A, B, EOI)

    A informs B about the interest EOI

    Negotiate(A, B, EOI)

    A want B to send an offer to A based on the EOI

    Committing

    Following messages are legally binding

    Offer(A, B, EOI)

    A gives the offer EOI to B

    Accept(A, B)

    A accepts an offer from B

    Decline(A, B)

    A declines an offer from B (and B is no longer bound by the offer sent to A)

    Meta-messages

    Following messages are about earlier messages

    Error(A, B)

    A informs B that A did not understand last message from B

    The first three messages do not commit the sender (or the receiver) to anything, but the Offer, Accept and Decline messages are committing the sender. The Offer message commits the sender if the message contains a contract in which the sender agent is a participant. If the sender is not a participant in the offered contract, the offer is not binding. An Accept message binds the sender to a contract previously given with an offer. A Decline message relieves the commitment from the sender of the previous offer.

     

    Field

    Meaning

    Sender

    The sender of this message

    receiver

    The receiver of this message

    reply-with

    Message id for this message, a reply on it should refer to this id

    in-reply-to

    A reference to an earlier message (using the reply-with id as reference id)

    language

    The language used for the content and signature fields

    content

    A string containing the content (representing an interest)

    signature

    A string containing the signature of this message. The signature is at least based on the content and the message type.

    Example of a MIL message (with nonsense content):


    (ask :sender "map://smink.sics.se/agent1"
    :receiver "map://smink.sics.se/agent2"
    :reply-with 999
    :language mif_1.0
    :content "…")

    Joakim Eriksson, joakime@sics.se
    June 16, 1998