Sunteți pe pagina 1din 2

Laborator licitatii

Sa se implementeze o licitatie englezeasca sau olandeza (la alegere)

: Olandeza: Gigel face parte dintr-un grup de traficanti de droguri. Gigel vrea sa vanda 3kg de heroina asa ca isi contacteaza cei 7 dealeri din agenda si le propune un pret pe gram. Dar marfa lui Gigel este de proasta calitate si se ingalbeneste rapid asa ca la fiecare 3 secunde coboara pretul, si ori de cate ori cineva incearca sa cumpere de la el ofera toata cantitatea ceruta fara sa negocieze pana cand epuizeaza stocul. Englezeasca: Gigel mai face parte dintr-un grup de mafioti. Gigel vrea sa vanda un AKM la cel mai bun pret posibil asa ca isi contacteaza cei 7 mafioti din agenda si le spune ca licitatia incepe de la $300. Gigel stie ca in orice moment politia va face o razie in cartierul lui asa ca trebuie sa gaseasca un cumparator in 10 secunde ca sa aiba timp sa faca si schimbul. Nota: se va folosi ca baza programul implementat protocolul Contract Net cu clasele ContractNetInitiator si SSIteratedContractNetResponder , reinitiind protocolul de fiecare data cand se schimba pretul (pana se epuzieaza stocul/ expira timpul). Unii dintre mafioti/dealeri nu vor licita deloc dar cel putin 2 vor licita valori diferite. Interfata (pentru un agent, oricare ar fi el, pentru ca toti agentii pot fi si buyeri si selleri) trebuie sa ofere urmatoarele facilitati utilizatorului:

- afisare lista nume de buyeri - configurare licitatie (nume produs, conditie de oprire : timp in secunde, pret minim) - selectare buyeri care sa fie invitati la licitatie - atentionare bid-uri - atentionare final de iteratie si castigator curent - atentionare finalizare cu confirmare de la user( Bugsy vrea sa cumpere la pretul de X . Finalizam? yes/no) - atentionare 0 bid-uri - atentionare invitatie la licitatie cu confirmare participare de la user (un yes/no) cu configurare licitatie . - atentionare accept - atentionare castig de licitatie cu confirmare (un yes/no) 3 agenti vor fi suficienti pentru a demonstra ca functioneaza.