Sisteme multiagent. Licitatii

download Sisteme multiagent. Licitatii

of 6

Transcript of Sisteme multiagent. Licitatii

  • 8/13/2019 Sisteme multiagent. Licitatii

    1/6

    1

    Modelarea i analiza sistemelor multiagentLaboratorul 6

    Licitaii

    1. Aspecte generale .......................................................................................................................... 1

    2. Descrierea licitaiilor.................................................................................................................... 12.1. Tipuri de evaluare a bunului licitat ...................................................................................... 1

    2.2. Strategii in licitaii ................................................................................................................ 12.3. Tipuri de licitaie .................................................................................................................. 22.4. Coaliii .................................................................................................................................. 33. Exemplificare printr-o aplicaie....................................................................................................34. Aplicaii .......................................................................................................................................6

    1. Aspecte generale

    Licitaiile au loc ntre un agent numit licitatori mai muli ageni numii cumprtori. Scopulunei licitaii este ca licitatorul s aloce un bun unuia dintre cumprtori. De obicei interesullicitatorului este s maximizezepreul, n timp ce al licitatorului este s-l minimizeze.

    n practic, exist mai multe tipuri de licitaii. Printre cele mai frecvent ntalnite se numr:licitaia englezeasc, licitaia olandez i tipul de licitare nchis.

    2. Descrierea licitaiilor

    2.1. Tipuri de evaluare a bunului licitat

    - valori private: valoarea bunului depinde doar depreferinele personale ale cumprtorului; acestase presupune c tie valoarea bunului;- valori comune: valoarea unui produs pentru un cumprtor depinde de valoarea acelui produs

    pentru alicumprtori;- valori corelate: valoarea unui produs pentru un cumprtor depinde parial de preferinele sale

    personale i parialde valoarea acelui produs pentru alii.

    2.2. Strategii in licitaii

    Strategia unui cumprtorn licitaii const n modul n care va licita i naciunile pe care le vantreprinde cu scopul de a obine profit ct mai mare. Strategia dominanteste cea care genereazcele mai bune rezultate din punctul de vedere al profitului. Cumprtorulva obine profitul maximfolosind strategia dominant.

    Modelarea si analiza sistemelor multi-agent - Laborator

    http://florinleon.byethost24.com/lab_masma.htm

  • 8/13/2019 Sisteme multiagent. Licitatii

    2/6

    2

    2.3. Tipuri de licitaie

    English (first-price open cry)

    Aceasta este un tip de licitaiefrecvent ntlnit, n cadrul cruia cel care liciteazncepe la preulde rezerv al obiectului i oferta nainteazprogresiv pn cnd nici unparticipant nu emite o ofert

    mai mare. n aceast licitaie, fiecare ofert ine cont decelelalte oferte citate.

    - licitaia pornete de la un pre stabilit;- cumprtorii pot anuna deschis preul pe care l liciteaz, care trebuie sfie mai mare dect

    preul licitat pn n acel moment;- ctigcumprtorul care a oferit cel mai mare pre.

    Observaii:

    - Strategie dominant:cumprtorul oferpuin mai mult dect ultimul prei se oprete cndajunge la valoarea real abunului.

    - Winners curse (ctigtorul licitaiei obine bunul licitat la unpre exagerat) n cazulincertitudinii referitoare la valoarea reala bunului licitat

    - Licitatorul poate plasa cumprtorifalipentru a crete artificial preul.

    First-price sealed-bid

    La acest tip de licitaie, cumprtorii emit oferte n mod secret. Nici un ofertant nu cunoatecota unei alte oferte. Cel mai mare ofertat este premiat cu obiectul corespunztor preului oferteisale.

    - o singur rundde negociere;- fiecare cumprtoranun preul n plic nchis;- ctigcel cu premaxim.

    Observaii:

    - Strategie dominant: cumprtorul face o ofert egal cel mult cuvaloarea privata bunului.Nu exist o soluie general pentru a determina ct demic ar trebui s fie aceast ofert.

    Dutch (descending)

    n acest caz, licitatorul pornete de la un pre ridicat i solicit un set deoferte descendente pncnd un cumprtor accept bunul la preul curent. O ofert suficient de mic propus chiar lanceputul licitaiei asigur faptul c bunul va fi vndut n cele din urm, dar exist posibi litatea calicitatorul s nu obin profit.

    - licitaia pornete de la un pre stabilit- licitatorul scade preul pn cnd unul din participani accept preul.

    Observaii:

    - Susceptibil la winners curse (situaie n care ctigtorul ajunge s plateasc mai mult

    dect valoreaz obiectul pe care l-a ctigat prin licitaie)-Nu exist strategie dominant.

    Modelarea si analiza sistemelor multi-agent - Laborator

    http://florinleon.byethost24.com/lab_masma.htm

  • 8/13/2019 Sisteme multiagent. Licitatii

    3/6

    3

    Vickrey (second-price sealed-bid)auction

    Cumprtorii fac oferte n mod secret. Ctig autorul celei mai mari oferte, care va primi bunulcorespunztor la preul dat de a doua ofert. La aceast licitaie, cel mai mare ofertant obinentotdeauna profit dac oferta acestuia este raional.

    - o singur rundde negociere;- ofertele sunt secrete fa de ceilali cumprtori- ctig cel care a fcut cea mai mare ofert, dar pltete al doilea pre.

    Observaii:

    - Strategia dominant: se liciteazvaloarea reala bunului.- Avantajul acestui tip de licitaie este faptul c ncurajeaz cumprtoriisfie sinceri- Ctigtorul licitaieinu poate ti ct a licitat cel care a pierdut (locul al doilea), deci nu tie

    dacpreul pltit (al doilea pre) este corect. O soluie ar fi folosirea de semnturi digitale sau a unei

    tere pri de ncredere.- Se poate dezvolta un comportament antisocial: dacun cumprtor tie c va pierde, poate

    crete intenionat preul pentru a-i face pe alii s plteasc mai mult.

    2.4. Coaliii (col lusion )

    Ori de cte ori la o licitaie ofertanii cunosc identitatea celorlaltor participani, exist riscul caacetia s se asocieze n scopul manipulrii rezultatului licitaiei, o practic cunoscut sub numelede collusion(ntelegere secret, coaliie).

    - Nici un tip de licitaie nu este imun la coaliii- Se pot forma coaliii care s meninpreul sczut- Ctigtorul obiectului (care trebuie s facparte din coaliie) mparte profitul cu ceilali.

    O alt practic ilegal prin care se poate a crete pretul unui bun licitat este urmtoarea:proprietarul bunului particip la licitaie, crescnd astfel concurena, licitnd fictiv i ieind dinlicitaie chiar nainte devaloarea licitat final.

    n cazul licitaiilor cu plic nchis(oferte secrete), dacun cumprtor reuete s afle ofertelecelorlaltorparticipani la licitaie, el poate s:

    - liciteze direct un pre care l va face s ctige;

    - se retrag, tiind de la nceput c nu poate ctiga.

    3. Exemplificare printr-o aplicaie

    Aplicaia AgentAuction implementeaz o variant simplificat de licitaie English. Sepresupune c exist un singur bun licitat, nespecificat. Licitaia este gestionat de unmanagerAgent. Acesta nregistreaz serviciul AuctionService corespunztor licitaiei, apoiateapt solicitri de nregistrare i oferte de pre de la agenii cumprtori, n cadrulcomportamentului de tip ciclic ManagerReceive.

    n sistem apar trei ageni cumprtori, care se solicit managerAgent-ului nregistrarea lalicitaie, prin comportamentul BuyerRegisterde tip oneshot:

    Modelarea si analiza sistemelor multi-agent - Laborator

    http://florinleon.byethost24.com/lab_masma.htm

  • 8/13/2019 Sisteme multiagent. Licitatii

    4/6

    4

    publicoverridevoidaction(){

    //inform managerAgent that I want to register for the auction

    ACLMessagem= newACLMessage(ACLMessage.INFORM);

    AIDreceiverAID= newAID("managerAgent", AID.ISLOCALNAME);m.addReceiver(receiverAID);m.setContent("registering");myAgent.send(m);

    myAgent.windowsForm.AddTextLine("Registering for auction ...");}

    managerAgent-ul adaug ntr-o structur de date proprie AID-urile agenilor cumprtori caresolicit nregistrarea, i le confirm faptul c au fost nregistrai cu succes (n comportamentulManagerReceive):

    if(received.Contains("registering")){//sender wants to register for auctionmyAgent.participantList.Add(sender);

    //reply to sender that registration was successfulACLMessagereply= newACLMessage(ACLMessage.INFORM);reply.setContent("registered");reply.addReceiver(sender);myAgent.send(reply);

    myAgent.windowsForm.AddTextLine("New participant: "+sender.getLocalName());

    }

    Licitaia se desfoar pe runde. Acestea sunt iniiate i ncheiate periodic de ctremanagerAgent n comportamentul ManagerSend de tip TickerBehavior. O rund const n

    primirea i evaluarea ofertelor de pre de la agenii cumprtori. La nceput, managerAgent-ultrimite cumprtorilorun pre iniial al produsului, pentru ca apoi, n fiecare rund, s le trimit celmai marepreprimitpn n acel moment:

    publicoverridevoidonTick(){

    intnParticipants= myAgent.participantList.Count;

    if(nParticipants> 1) // still more than 1 agent making offers{/* New auction round:* send calls to the participantsinform them on current auction priceask them to send new offers*/ACLMessagetoSend= newACLMessage(ACLMessage.INFORM);toSend.setContent("current_price"+ myAgent.currentPrice);

    foreach(AIDainmyAgent.participantList)toSend.addReceiver(a);

    myAgent.send(toSend);

    Modelarea si analiza sistemelor multi-agent - Laborator

    http://florinleon.byethost24.com/lab_masma.htm

  • 8/13/2019 Sisteme multiagent. Licitatii

    5/6

    5

    myAgent.windowsForm.AddTextLine(Environment.NewLine+ "New Round:current price is "+ myAgent.currentPrice);

    }elseif(nParticipants== 1) //only one agent left, the winner{

    AIDwinner= myAgent.currentWinner;myAgent.windowsForm.AddTextLine(Environment.NewLine+ "Auction over.

    Winner is "+ winner.getLocalName() + " with price: "+myAgent.currentPrice);

    this.stop();}else// no participants left{

    myAgent.windowsForm.AddTextLine(Environment.NewLine+ "Auction over.All participants retreated.");

    this.stop();}

    }

    La primirea informaiilor legate de preul maxim din licitaie (n cadrul comportamentului

    BuyerReceive), agenii cumprtori decid, cu o anumit probabilitate, dacfac o ofert de pre maimare, sau dac se retrag din licitaie. Ei trimit managerAgent-ului rspunul corespunztor:

    if(received.Contains("current_price")){

    // received new call from managerAgent

    //the highest current price is:intcurrentPrice= Convert.ToInt32(received.Remove(0, 13));myAgent.windowsForm.AddTextLine("Received current price: "+

    currentPrice);

    // probability to make offer decreases with each price increase

    myAgent.probabilityToBid*= myAgent.probabilityDecreaseFactor;

    ACLMessagetoSend= newACLMessage(ACLMessage.INFORM);toSend.addReceiver(m.getSender());//use agent name to generate unique seed for random numbersintseed= 1234 * Convert.ToInt32(myAgent.getLocalName().Remove(0, 5));//decide if to send new offer or retreatif(myAgent.probabilityToBid> newRandom(seed).NextDouble()){

    //make an offer which is higher than the current priceseed= 4321 * Convert.ToInt32(myAgent.getLocalName().Remove(0, 5));intnewPrice= currentPrice+ newRandom(seed).Next(1,

    myAgent.maxOfferIncrease);

    toSend.setContent("offer"+ newPrice);myAgent.windowsForm.AddTextLine("Sent new offer: "+ newPrice);

    }else{

    //price is too high, retreat from auctiontoSend.setContent("retreat");myAgent.windowsForm.AddTextLine("Retreated from auction.");

    }myAgent.send(toSend);

    }

    Licitaia se ncheie cnd fie rmne un singur cumprtor (care va fi si ctigtorul), fie se

    retrag toi cumprtorii(comportamentul ManagerSend).

    Modelarea si analiza sistemelor multi-agent - Laborator

    http://florinleon.byethost24.com/lab_masma.htm

  • 8/13/2019 Sisteme multiagent. Licitatii

    6/6

    6

    4. Aplicaie

    4.1.Sse implementeze protocolul de licitaie Vickreyprezentat mai sus. Caracteristici:

    Licitatorul va avea o listde produse; Cumprtorii vor avea un pre (valoare privat) care va varia +/- 10% de la un agent la altul

    pentru fiecare produs;

    Cumprtorii se vor nregistra ca participani la licitaie; Licitatorul va comunica startul, informnd asupra obiectului scos la licitaie: produs,

    caracteristici, perioada de ateptare a ofertelor; Cumprtorii vor trimitecte o ofertde pre; Dup ce perioada de ateptarea ofertelor a expirat, licitatorul va analiza ofertele primite i

    va trimite:

    o mesaje celor care vor pierde licitaia, ce vor conine informaii despre preul dat dectigtorul licitaiei i preul care l va plti acesta pentru produs;

    o un mesaj ctigtorului licitaiei, ce va conine informaii despre preul oferit de

    acesta i preul ce va trebui pltit (al doilea pre).

    Modelarea si analiza sistemelor multi-agent - Laborator

    http://florinleon.byethost24.com/lab masma.htm