De presentatie wordt gedownload. Even geduld aub

De presentatie wordt gedownload. Even geduld aub

Dingo1 4 de DINGO Gebruikerscommissie 2 december 2004 KaHo Sint-Lieven Gent.

Verwante presentaties


Presentatie over: "Dingo1 4 de DINGO Gebruikerscommissie 2 december 2004 KaHo Sint-Lieven Gent."— Transcript van de presentatie:

1 Dingo1 4 de DINGO Gebruikerscommissie 2 december 2004 KaHo Sint-Lieven Gent

2 Dingo2 Agenda  Welkom  Voorstelling Hobu/Tetra fonds  Status  Bespreking vorderingen  Discussie

3 Dingo3 Status van het project

4 Dingo4 Periode 1-9-2004 tot 30-11-2004  WP 4: testen van algoritmen  WP 6: agententechnologie  WP 7: onderhandelingsmodel

5 Dingo5 Mijlpalen  Vroeger al gerealiseerd: Mijlpaal 1: rapport personeelsplanning Mijlpaal 2: rapport gedistribueerde planning Mijlpaal 4: model personeelsplanning  Mijlpaal 3: 31-10-2004 Rapport agenten en onderhandeling Beschikbaar op de DINGO website

6 Dingo6

7 7 Bespreking

8 Dingo8 Overzicht  Agenten  Onderhandeling tussen agenten  Jade agentenplatform  Onderhandelingsmechanisme voor gedistribueerde personeelsplanning

9 Dingo9 Agenten  Voorbeelden  Definities  MAS (Multi-Agent Systems)

10 Dingo10 depot Mobiele verpleegsters

11 Dingo11 Voorbeelden  Routeplanning mbv agenten: Mobiele verpleegsters rijden van patiënt naar patiënt Sommige patiënten moeten bepaalde tijdsvensters bezocht worden Kunnen maar een vast aantal uren werken Willen in thuis lunchen, vinden bepaalde patiënten niet zo tof,…  Procedure: dispatching berekent de dagroutes Proberen de reistijd te minimaliseren en de werkbelasting evenwichtig over de routes te verdelen Verpleegsters worden volgens bepaalde criteria aan routes toegekend Verpleegster kunnen over hun routes onderhandelen en onderling verwisselen

12 Dingo12 Voorbeelden  Agenten? Agenten representeren de verpleegsters in de onderhandeling Gebruiken een sympathiemaat die een afspiegeling zijn van de relaties tussen de verpleegsters Sympathie brengt geheugen in het systeem

13 Dingo13 TeleTruck (Deutsche Forschungszentrum für Künstliche Intelligenz)  Gebruik van agenten op 2 niveaus in transportplanning 1. Afsluiten van contracten tussen 2 firma’s 2. Efficiënt plannen van het transport  In TeleTruck vooral focus op 2 de deel Vrachtwagens bestaan uit een chauffeur, een oplegger en een trekker Deze 3 ingrediënten kunnen op verschillende plaatsen zijn, maar moeten samengebracht worden om een job te kunnen uitvoeren TeleTruck gebruikt een biedschema gebaseerd op contract net protocol (CNP)

14 Dingo14 Persoonlijke assistent  Persoonlijke assistent is een software agent die acties volgt en probeert te helpen Het kan je surfgedrag volgen en zelf beslissen om bepaalde pagina’s op voorhand down te loaden Het kan meelezen over je schouder en probeert gelijkaardig documenten op je harde schijf te zoeken Het kan een helpende paperclip zijn Het kan zelf links op een website die je aan het lezen bent volgen en je aandacht vestigen op andere interessante gelijkaardige artikels

15 Dingo15 Persoonlijke assistent  Zo’n agent moet zeker volgende eigenschappen hebben: Autonoom handelen In staat om te leren Profiel van de gebruiker opbouwen AI technieken gebruiken bij het leren Data mining kan patronen in het gedrag van de gebruiker onthullen

16 Dingo16 Intelligent Room Project (MIT)  Kamer gedraagt zich als een persoon  Redeneert over wat er zich in de kamer afspeelt  Probeert te anticiperen  Veel input via sensoren  Enorme rekenkracht nodig!

17 Dingo17 Definities  AIMA (Artificial Intelligence: a Modern Approach, Russell and Norvig 1995)  Pattie Maes  KidSim  Wooldridge & Jennings

18 Dingo18 AIMA  “An agent is anything that can be viewed as perceiving its environment through sensors and acting upon that environment through effectors” (Russell and Norvig, 1995)

19 Dingo19 Pattie Maes  “Software agents differ from conventional software in that they are long-lived, semi- autonomous, proactive, and adaptive” (http://web.media.mit.edu/~pattie/)http://web.media.mit.edu/~pattie/

20 Dingo20 KidSim  “Let us define an agent as a persistent software entity dedicated to a specific purpose. "Persistent" distinguishes agents from subroutines; agents have their own ideas about how to accomplish tasks, their own agendas. "Specific purpose" distinguishes them from entire multifunction applications; agents are typically much smaller.”  http://www.acypher.com/Publications/CACM/Kid SimCACM.html http://www.acypher.com/Publications/CACM/Kid SimCACM.html

21 Dingo21 Wooldridge & Jennings  “Perhaps the most general way in which the term agent is used is to denote a hardware or (more usually) software-based computer system that enjoys the following properties: Autonomy, social ability, reactivity, pro-activeness”  http://www.csc.liv.ac.uk/~mjw/ http://www.csc.liv.ac.uk/~mjw/

22 Dingo22 Eigenschappen Reactief Reageren op externe asynchrone stimuli Autonoom Controleert eigen acties Goal Directed Neemt initiatieven om doel te bereiken Persistent “Is ‘living’, not ‘running’ ” Communicatief Met andere agenten en mensen Lerend Adaptief vermogen gebaseerd op ervaring Mobiel Beweegt tussen machines in het netwerk

23 Dingo23 Multi Agenten Systemen (MAS)  Multi-agentensystemen definiëren samenwerkende agenten voor taken die een individuele agent niet alleen kan  Intelligentie vloeit hier op natuurlijke wijze uit voort

24 Dingo24 MAS  Onderzoeksaspecten Aggregatie, Communicatie, Coördinatie, Collaboratie, Onderhandeling  Helpende agenten (Middle agents) Facilitator, Mediator, Broker, Matchmaker, Blackboard  Agenteninteractie Taal, Formaat, Ontologie

25 Dingo25 Waarop toepassen?  User interface Persoonlijke vertegenwoordiger voor de gebruiker,  Gedistribueerde systemen Asynchroon, autonoom, onbetrouwbare communicatie  Algoritmisch paradigma Bijv: optimalisatieproblemen, agenten bevatten aparte strategieën E.g. warmte distributie in een schijf

26 Dingo26 Waarop toepassen?  Software engineering Agenten abstraheren communicatie, controle, nemen van beslissingen, autonomie, persistentie Dwingen encapsulatie af, modulariteit, herbruikbaarheid, gelijktijdig, gedistribueerde uitvoering

27 Dingo27 Coördinatietechnieken tussen agenten  Organisational structuring Gebruik maken van a-priori structuur Master-slave door dispatching model Master-slave met een blackboard  Sterk gecontroleerd, lagere autonomie  Kan snelheid verminderen, betrouwbaarheid, robuustheid, ‘graceful decay’, bottleneck, gelijktijdigheid  Blackboard is een potentiële bottleneck

28 Dingo28 Master-slave modellen (Dispatching) Master Slave Blackboard Post Read

29 Dingo29 Contracting  Twee uitwisselbare rollen: Manager definieert deelproblemen & coördineert het gehele probleem Aannemer voert de deeltaak uit (eventueel m.b.v. onderaannemers)  Biedproces om een oplossing te vinden Taak aankondigen (manager) Taak evalueren (aannemers) Voorstel (aannemers) Evaluatie van voorstel en toekenning (manager) Coördinatie en evaluatie van het geheel (manager)

30 Dingo30 CNP manager Aankondigen van een taak aannemers manager Indienen van een bod aannemers manager aannemers Contract toekennen

31 Dingo31 Contract Net Protocol (CNP)  Voordelen Dynamische taaktoekenning om tot betere contracten te komen Agentenpopulatie is dynamisch Load balancing vloeit natuurlijk voort uit het bieden Hoge fouttolerantie  Beperkingen Geen conflictoplossing Verondersteld passieve, genereuze, eerlijke agenten Communicatie-intensief, hoge netwerk load

32 Dingo32 Andere manieren om tot een overeenkomst te komen  Veilingen: Tussen veilingmeester en bieders Doel: resource toekennen aan 1 van de bieders Veilingmeester: prijs maximaliseren  Ontwerpen van een gepast veilingmechanisme Bieders: prijs minimaliseren  Strategieën toepassen binnen de gestelde beperkingen, maar die resulteren in een optimaal resultaat

33 Dingo33 Soorten veilingen  Engels: first-price, open cry, ascending  Hollands: first-price, open cry, descending  First-price, sealed bid, one shot  Vickrey: second-price, sealed bid, one-shot

34 Dingo34 Onderhandeling  Veilingen: enkel interessant bij allocatie van goederen  Bij bereiken van overeenkomsten: onderhandelingen  Onderhandelingstechnieken: onderhandelingsverzameling: verzameling van alle mogelijke voorstellen die een agent kan doen Protocol: legale voorstellen in functie van de voorgeschiedenis Verzameling strategieën: bepalen welke voorstellen agenten zullen doen. Een strategie van een agent is meestal privé Regel: die bepaalt wanneer een deal voldaan is

35 Dingo35 Onderhandeling  Onderhandeling: verschillende rondes, in elke ronde een voorstel van een agent, voorstellen zijn bepaald door strategie, Voorstellen komen uit de onderhandelingsverzameling Zijn legaal volgens het vooropgestelde protocol Als overeenkomst bereikt wordt (volgens de regels), eindigt de onderhandeling

36 Dingo36 Task-oriented vs worth-oriented  Rosenschein en Zlotkin (1994) onderscheiden 2 belangrijke types onderhandelingsdomeinen: Task-oriented:  taken = expliciet gedefinieerd  Elke agent krijgt een verzameling taken om uit te voeren + bijbehorende kost.  Doel: minimaliseren van totale kost. Worth-oriented:  Algemener  Doelstellingen van agent = bepaald door definiëren van een waardefunctie voor mogelijke toestanden van omgeving.  Agent moet omgeving in toestand met hoogste waarde brengen  Hoe? Onderhandelen met andere agenten over ‘joint plans’  Joint plan? Het uitvoeren ervan vereist verschillende agenten  Deze joint plans brengen een omgeving van de ene toestand naar de andere  Onderhandelen over distributie van taken over agenten versus onderhandelen over een collectie van joint plans

37 Dingo37 Standaarden: FIPA  Foundation for Intelligent Physical Agents (http://www.fipa.org)http://www.fipa.org Agent management Agent User Interface API FIPA ACL FIPA Agent-software FIPA UI FIPA User

38 Dingo38 FIPA ACL (ask-if :sender I :receiver J :content (=(weer Belgium (November 2004)) cold) :ontology meteorology :reply-with query-17) (inform :sender J :receiver I :content true :in-reply-to query-17)

39 Dingo39 Fipa CNP

40 Dingo40 Agent Platform FIPA Agent Management Internal Message Transport Agent Communication Channel Directory Facilitator Agent Management System Software

41 Dingo41 Jade agentenplatform

42 Dingo42 Jade agentenplatform  Main container: De AMS (Agent Management System): naming service.  Verantwoordelijk voor unieke naam van agent in het platform  Creëren en verwijderen van agenten op remote containers De DF (Directory Facilitator)  soort gouden gids

43 Dingo43 Behaviours  Eigenlijk taak van een agent  Soorten behaviours: One shot Cyclic Simple Composite FSM …

44 Dingo44

45 Dingo45 Demo  MP3 agent

46 Dingo46 Onderhandelingsmechanisme voor gedistribueerde personeelsplanning  Uiteindelijk gekozen voor CNP (eigenlijk 3 X CNP)  Enkel uitwisselen van personeel, er moet niet tot overeenkomst gekomen worden  Jade: reeds voorzieningen voor CNP (Initiator & Responder)  Alhoewel: Uiteindelijk toch nog veel programmeren en niet zo evident!

47 Dingo47 Onderhandelingsmechanisme voor gedistribueerde personeelsplanning  3 soorten agenten OmbudsAgent DepartementsAgent PersoneelsAgent

48 Dingo48 OmbudsAgent DepartementsAgent i CFP Elk stuurt duurste kost + tijdstip. Resultaat van lokaal zoek- algoritme (Kost, T) i Evalueren elk de voorgestelde wijziging en genereren bijhorende kost ACCEPT PROPOSAL REJECT PROPOSAL De betrokken Departe- mentsAgenten wisselen personeel uit en passen het departementsrooster voor die shift aan. CNP CFP (Kost, T) i Enkel de agenten die aanpassingen hebben gedaan sturen hun kost terug CNP PersoneelsAgent j Doorgeven van werkschema aan initieel toegewezen personeel CFP: Qmax, Tmax Kost ACCEPT PROPOSAL Elke betrokken agent evalueert zijn eigen beper- kingen en gene- reert een kost REJECT PROPOSAL Neem de hoogste kost Stuur de anderen een REJECT Kost i ACCEPT PROPOSAL REJECT PROPOSAL CFP: Q max, T max CNP Als Kost i < drempel- waarde, dan wordt de verandering aan- vaard Anders niet Stuur de agenten die aanpassingen hebben gedaan een nieuwe CFP

49 Dingo49 OmbudsAgentDepartementsAgent i CFP Elk stuurt duurste kost + tijdstip. Resultaat van lokaal zoek- algoritme (Kost, T) i ACCEPT PROPOSAL REJECT PROPOSAL CNP PersoneelsAgent j Doorgeven van werkschema aan initieel toegewezen personeel Neem de hoogste kost Stuur de anderen een REJECT  OA stuurt CFP naar alle DA  Elke DA: start lokaal tabu search algoritme  Elke PA (die tot departement behoren) krijgt van DA initieel werkschema toegewezen  Elke DA stuurt hoogste kost + nodige kwalificatie en tijdstip  OA: neemt hoogste kost

50 Dingo50 Evalueren elk de voorgestelde wijziging en genereren bijhorende kost De betrokken Departe- mentsAgenten wisselen personeel uit en passen het departementsrooster voor die shift aan. CFP (Kost, T) i Enkel de agenten die aanpassingen hebben gedaan sturen hun kost terug CFP: Qmax, Tmax Kost ACCEPT PROPOSAL Elke betrokken agent evalueert zijn eigen beper- kingen en gene- reert een kost REJECT PROPOSAL Kost i ACCEPT PROPOSAL REJECT PROPOSAL CFP: Q max, T max Als Kost i < drempel- waarde, dan wordt de verandering aan- vaard Anders niet Stuur de agenten die aanpassingen hebben gedaan een nieuwe CFP CNP OmbudsAgentDepartementsAgent i PersoneelsAgent j

51 Dingo51 Onderhandelingsmodel  OA stuurt vraag naar alle DA met daarin shift en kwalificatie  Gevraagde wijziging wordt geëvalueerd door DA én PA  PA evalueert persoonlijke beperkingen + genereert extra kost bij verandering van departement  DA genereert kost bij undercoverage  DA stuurt laagste kost door  Uit alle ontvangen kosten kiest OA de laagste kost  Verandering wordt doorgevoerd: DA past zijn werknemers aan Gekozen PA past plaats van tewerkstelling aan  Alles herbegint!

52 Dingo52 Onderhandelingsmechanisme voor gedistribueerde personeelsplanning  Merk op: Er is geen onderscheid tussen departementen, kwalificaties en taken Geen gebruik van personeelsagenten tijdens tabu search  Communicatie tussen agenten zou te veel vertraging opleveren Personeelsagenten worden pas na tabu search gecreëerd Indien veel personeel: eventueel opteren om personeelsagenten pas creëren wanneer ze nodig zijn Jade heeft problemen met veel agenten

53 Dingo53 Demonstratie  Dep 1 CM (Dep 1)  Dep 2 CV (Dep 1, Dep 2, Dep 3) EL (Dep 2)  Dep 3 EV (Dep 1, Dep 3) FV (Dep 1, Dep, 2, Dep, 3) IM (Dep 2, Dep 3)

54 Dingo54 Toekomst  Agenten communiceren via boodschappen (FIPA!)  In Jade: mogelijkheid om via objecten te communiceren Onze huidige implementatie gebruikt objecten Uiteindelijk de bedoeling om echte boodschappen uit te wisselen  Ontologie maken  Testen op reële data  Koen werkt verder aan GUI!

55 Dingo55 Vervolg project  Testen van algoritmen op praktische problemen  Verdere uitwerking en implementatie van het agentenmodel

56 Dingo56 Discussie


Download ppt "Dingo1 4 de DINGO Gebruikerscommissie 2 december 2004 KaHo Sint-Lieven Gent."

Verwante presentaties


Ads door Google