Coordination dans les SMA - elfallah/cours/F3.pdf · requiredrequired to ttooto be bbeebe...

48
Coordination dans les SMA Problématique et Approches AMAL EL FALLAH SEGHROUCHNI [email protected]

Transcript of Coordination dans les SMA - elfallah/cours/F3.pdf · requiredrequired to ttooto be bbeebe...

Coordination dans les SMA

Problématique et Approches

AMAL EL FALLAH SEGHROUCHNI

[email protected]

PlanPlanPlanPlan

1.1.1.1. ProblématiqueProblématiqueProblématiqueProblématique dededede lalalala coordinationcoordinationcoordinationcoordination

2.2.2.2. ApprochesApprochesApprochesApproches dededede coordinationcoordinationcoordinationcoordination

3.3.3.3. ExempleExempleExempleExemple :::: CoordinationCoordinationCoordinationCoordination parparparpar formationformationformationformation dededede coalitionscoalitionscoalitionscoalitions

4.4.4.4. ConclusionConclusionConclusionConclusion

PlanPlanPlanPlan

1.1.1.1. ProblématiqueProblématiqueProblématiqueProblématique dededede lalalala coordinationcoordinationcoordinationcoordination

2.2.2.2. ApprochesApprochesApprochesApproches dededede coordinationcoordinationcoordinationcoordination

3.3.3.3. ExempleExempleExempleExemple :::: CoordinationCoordinationCoordinationCoordination parparparpar formationformationformationformation dededede coalitionscoalitionscoalitionscoalitions

4.4.4.4. ConclusionConclusionConclusionConclusion

DéfinitionDéfinitionDéfinitionDéfinition de la Coordinationde la Coordinationde la Coordinationde la Coordination

“Coordination“Coordination“Coordination“Coordination correspondscorrespondscorrespondscorresponds totototo allallallall thethethethe additionaladditionaladditionaladditional activitiesactivitiesactivitiesactivities thatthatthatthat areareareare

requiredrequiredrequiredrequired totototo bebebebe performed,performed,performed,performed, inininin anananan environmentenvironmentenvironmentenvironment withwithwithwith severalseveralseveralseveral agents,agents,agents,agents, andandandand

thatthatthatthat oneoneoneone agentagentagentagent pursuingpursuingpursuingpursuing thethethethe samesamesamesame goal(s)goal(s)goal(s)goal(s) wouldwouldwouldwould notnotnotnot accomplish”accomplish”accomplish”accomplish”

[Malone[Malone[Malone[Malone 88888888]]]]

ManagementManagementManagementManagement ofofofof interinterinterinter----dependenciesdependenciesdependenciesdependencies betweenbetweenbetweenbetween activitiesactivitiesactivitiesactivities [Malone[Malone[Malone[Malone 94949494]]]]

TheTheTheThe processprocessprocessprocess bybybyby whichwhichwhichwhich agentsagentsagentsagents reasonreasonreasonreason aboutaboutaboutabout theirtheirtheirtheir actionsactionsactionsactions andandandand thosethosethosethose ofofofof othersothersothersothers inininin

orderorderorderorder totototo ensureensureensureensure consistencyconsistencyconsistencyconsistency ofofofof jointjointjointjoint actionsactionsactionsactions [Jennings[Jennings[Jennings[Jennings 96969696]]]]

La coordination La coordination La coordination La coordination estestestest présenteprésenteprésenteprésentedansdansdansdans divers divers divers divers systèmessystèmessystèmessystèmes & applications& applications& applications& applications

Dans les systèmes naturels et dans les systèmes logicielsLa nature est unesource d’inspiration

Schooling of FishA Swarm of Locusts

Autonomous Formation Flying and UAV Networks

ExemplesExemplesExemplesExemples de de de de l’ingénieriel’ingénieriel’ingénieriel’ingénierie des des des des systèmessystèmessystèmessystèmes logicielslogicielslogicielslogiciels

man-made systems

The successor of Terra Numerica

3D representation / digitalization of

different districts of Paris

Terra Dynamica projectaims to provide an interactive and real-time

simulation of 100 000 urban actors (animation and representation)

Transport NW

- bus

- …

Road signs:

- traffic lights

-…

Traffic :

- cars

- bycycles

- pedestrians

Actors:

- individuals

- groups

- crowds

- …

Exemples de l’ingénierie des systèmes logiciels

D’autresD’autresD’autresD’autres situations de coordination …situations de coordination …situations de coordination …situations de coordination …

Pourquoi la coordination ?Pourquoi la coordination ?Pourquoi la coordination ?Pourquoi la coordination ?

HypothèsesHypothèsesHypothèsesHypothèsesAgentsAgentsAgentsAgents logiciels,logiciels,logiciels,logiciels, autonomes,autonomes,autonomes,autonomes, hétérogènes,hétérogènes,hétérogènes,hétérogènes, coopératifscoopératifscoopératifscoopératifs ououououconcurrents,concurrents,concurrents,concurrents, distribuésdistribuésdistribuésdistribués etetetet communicantscommunicantscommunicantscommunicants

EnvironnementEnvironnementEnvironnementEnvironnement partagépartagépartagépartagé etetetet dynamiquedynamiquedynamiquedynamique

RessourcesRessourcesRessourcesRessources limitéeslimitéeslimitéeslimitées

ProblèmesProblèmesProblèmesProblèmesGénériquesGénériquesGénériquesGénériques

Exécutions concurrentes => Blocage, famine, etc.

Communications asynchrones => Absence d’état global

SpécifiquesSpécifiquesSpécifiquesSpécifiques

Définition des communications dans un système ouvert

Gestion des informations incomplètes, vision partielle des agents

Conciliation entre autonomie et exécution globale

Problématique de la coordinationProblématique de la coordinationProblématique de la coordinationProblématique de la coordination

DifférentesDifférentesDifférentesDifférentes perspectivesperspectivesperspectivesperspectivesProblèmeProblèmeProblèmeProblème dededede priseprisepriseprise dededede décisiondécisiondécisiondécision distribuéedistribuéedistribuéedistribuée soussoussoussous incertitudeincertitudeincertitudeincertitude

ProblèmeProblèmeProblèmeProblème relatifrelatifrelatifrelatif àààà lalalala connaissanceconnaissanceconnaissanceconnaissance etetetet l’actionl’actionl’actionl’action

ProblèmeProblèmeProblèmeProblème dededede conceptionconceptionconceptionconception teltelteltel quequequeque lalalala coordinationcoordinationcoordinationcoordination dededede “frameworks”“frameworks”“frameworks”“frameworks” pourpourpourpourdesdesdesdes organisationsorganisationsorganisationsorganisations HommeHommeHommeHomme----MachineMachineMachineMachine

EtcEtcEtcEtc....

ProcessusProcessusProcessusProcessus quiquiquiqui contrôlecontrôlecontrôlecontrôle et/ouet/ouet/ouet/ou guideguideguideguide lelelele comportementcomportementcomportementcomportement desdesdesdesagentsagentsagentsagents

AtteindreAtteindreAtteindreAtteindre ouououou maintenirmaintenirmaintenirmaintenir unununun étatétatétatétat globalglobalglobalglobal oùoùoùoù lesleslesles étatsétatsétatsétats locauxlocauxlocauxlocaux desdesdesdes agentsagentsagentsagentssontsontsontsont compatiblescompatiblescompatiblescompatibles (résolution(résolution(résolution(résolution d’interactionsd’interactionsd’interactionsd’interactions négatives)négatives)négatives)négatives)

FavoriserFavoriserFavoriserFavoriser lalalala synergiesynergiesynergiesynergie desdesdesdes agentsagentsagentsagents (résolution(résolution(résolution(résolution d’interactionsd’interactionsd’interactionsd’interactions positives)positives)positives)positives)

Planification de missions aériennesPlanification de missions aériennesPlanification de missions aériennesPlanification de missions aériennes

Une Mission d’InterceptionAgent : Pilote

Ordre décollage

Données d ’interception

Décollage

CAP

Navigation guidée

TirTriangulation Localisation

Retour à la BaseRéorganisation

DetectionDétection

Besoin de réorganisation et/ou de replanification

quand de nouveaux événements se produisent

Exemple de planification de missions aériennesExemple de planification de missions aériennesExemple de planification de missions aériennesExemple de planification de missions aériennes

RationalitéRationalitéRationalitéRationalitéObjectifsObjectifsObjectifsObjectifs proprespropresproprespropres auxauxauxaux pilotespilotespilotespilotes ==== accompliraccompliraccompliraccomplir missionmissionmissionmission etetetet surviesurviesurviesurvie

ObjectifObjectifObjectifObjectif globalglobalglobalglobal ==== lalalala missionmissionmissionmission d’interceptiond’interceptiond’interceptiond’interception

TendanceTendanceTendanceTendance naturellenaturellenaturellenaturelle àààà lalalala coopérationcoopérationcoopérationcoopération (car(car(car(car bénéfique)bénéfique)bénéfique)bénéfique)

AutonomieAutonomieAutonomieAutonomie limitéelimitéelimitéelimitéeInterventionsInterventionsInterventionsInterventions humaineshumaineshumaineshumaines potentiellespotentiellespotentiellespotentielles (la(la(la(la base)base)base)base)

PasPasPasPas dededede possibilitépossibilitépossibilitépossibilité dededede trichetrichetrichetriche (surveillance(surveillance(surveillance(surveillance àààà distance)distance)distance)distance)

HomogénéitéHomogénéitéHomogénéitéHomogénéitéVisionVisionVisionVision centraliséecentraliséecentraliséecentralisée dededede lalalala missionmissionmissionmission

EnvironnementEnvironnementEnvironnementEnvironnementDynamiqueDynamiqueDynamiqueDynamique etetetet incertainincertainincertainincertain

EnEnEnEn tanttanttanttant que que que que mécanismemécanismemécanismemécanisme

CentraliséCentraliséCentraliséCentraliséFacileFacileFacileFacile àààà mettremettremettremettre enenenen oeuvre,oeuvre,oeuvre,oeuvre, règlesrèglesrèglesrègles établiesétabliesétabliesétablies,,,, areareareare wellwellwellwellestablished,established,established,established, aaaa protocolprotocolprotocolprotocol cancancancan bebebebe followed,followed,followed,followed, ........

MaisMaisMaisMais sensiblesensiblesensiblesensible àààà lalalala pannepannepannepanne dededede l’agentl’agentl’agentl’agent centralcentralcentralcentral

DistribuéDistribuéDistribuéDistribuéRéalisteRéalisteRéalisteRéaliste dansdansdansdans certainescertainescertainescertaines situations,situations,situations,situations, plusplusplusplus procheprocheprocheproche desdesdesdesexigencesexigencesexigencesexigences dededede l’Il’Il’Il’I....AAAA....DDDD.... etetetet plusplusplusplus robusterobusterobusterobuste........

MaisMaisMaisMais nécessitenécessitenécessitenécessite desdesdesdes techniquestechniquestechniquestechniques sophistiquéessophistiquéessophistiquéessophistiquées (e(e(e(e....gggg....temporiéestemporiéestemporiéestemporiées etetetet desdesdesdes interactionsinteractionsinteractionsinteractions efficacesefficacesefficacesefficaces))))

2 modèles de coordination : orienté tâches et orienté agents

Modèles de coordination Modèles de coordination Modèles de coordination Modèles de coordination (1/2)(1/2)(1/2)(1/2)

ModèlesModèlesModèlesModèles orientésorientésorientésorientés tâchestâchestâchestâchesIssusIssusIssusIssus dededede lalalala résolutionrésolutionrésolutionrésolution distribuéedistribuéedistribuéedistribuée dededede problèmesproblèmesproblèmesproblèmes

Existence d’un agent « central »

Affectation des tâches et coordination souvent centralisées

Existence d’un but global

Agents généralement coopératifs

Optimisation de l’efficacité globale

ExempleExempleExempleExemple

Intéressant pour les approches

descendantes

Modèles de coordination Modèles de coordination Modèles de coordination Modèles de coordination (2/2)(2/2)(2/2)(2/2)

ModèlesModèlesModèlesModèles orientésorientésorientésorientés agentsagentsagentsagentsAbsenceAbsenceAbsenceAbsence dededede butbutbutbut globalglobalglobalglobal

AbsenceAbsenceAbsenceAbsence d’agentd’agentd’agentd’agent «««« centralcentralcentralcentral »»»»

CoordinationCoordinationCoordinationCoordination distribuéedistribuéedistribuéedistribuée (ex(ex(ex(ex.... négociation,négociation,négociation,négociation, consensus,consensus,consensus,consensus, etcetcetcetc....))))

AgentsAgentsAgentsAgents généralementgénéralementgénéralementgénéralement compétitifscompétitifscompétitifscompétitifsExemple : optimisation d’une fonction d’utilité individuelle

ExempleExempleExempleExemple

ScénarioScénarioScénarioScénario dudududu «Commerce«Commerce«Commerce«Commerce électronique»électronique»électronique»électronique»Agents égoïstes : maximisation du profit individuel

Coordination basée sur l’atteinte de consensus

Stratégies individuelles inconnues a priori

Modèles orientés agentsModèles orientés agentsModèles orientés agentsModèles orientés agents

DansDansDansDans cetcetcetcet exempleexempleexempleexemple lesleslesles agentsagentsagentsagents sontsontsontsont compétitifscompétitifscompétitifscompétitifs ouououou coopératifscoopératifscoopératifscoopératifs

OptimisationOptimisationOptimisationOptimisation d’uned’uned’uned’une utilitéutilitéutilitéutilité individuelleindividuelleindividuelleindividuelle ouououou collectivecollectivecollectivecollective

InspiréeInspiréeInspiréeInspirée desdesdesdes systèmessystèmessystèmessystèmes réactifsréactifsréactifsréactifs (self*(self*(self*(self* systems)systems)systems)systems)

ButButButBut globalglobalglobalglobal :::: surviesurviesurviesurvie dudududu systèmesystèmesystèmesystème (coherence,(coherence,(coherence,(coherence, consensus,consensus,consensus,consensus, paspaspaspas dededede collision,collision,collision,collision, etcetcetcetc........))))....

Hanoi Traffic

Utile pour une approche ascendante

Principales phases d’un Principales phases d’un Principales phases d’un Principales phases d’un mécanisme de coordinationmécanisme de coordinationmécanisme de coordinationmécanisme de coordination

Détection automatique d’une situation d’interaction (Sujet de coordination)

Initiation de la coordination (Modèles de spécification de la coordination)

Echanges à propos du sujet de coordination (Mécanismes de coordination)

Négociation (éventuellement)

Accord sur les modifications et modifications effectives

PlanPlanPlanPlan

1.1.1.1. ProblématiqueProblématiqueProblématiqueProblématique dededede lalalala coordinationcoordinationcoordinationcoordination

2.2.2.2. ApprochesApprochesApprochesApproches dededede coordinationcoordinationcoordinationcoordination

3.3.3.3. ExempleExempleExempleExemple :::: CoordinationCoordinationCoordinationCoordination parparparpar formationformationformationformation dededede coalitionscoalitionscoalitionscoalitions

4.4.4.4. ConclusionConclusionConclusionConclusion

Principales approchesPrincipales approchesPrincipales approchesPrincipales approches

CoordinationCoordinationCoordinationCoordination orientéeorientéeorientéeorientée résolutionrésolutionrésolutionrésolution distribuéedistribuéedistribuéedistribuée dededede problèmesproblèmesproblèmesproblèmesDistributionsDistributionsDistributionsDistributions spatiales,spatiales,spatiales,spatiales, fonctionnelles,fonctionnelles,fonctionnelles,fonctionnelles, temporellestemporellestemporellestemporelles

ExExExEx.... DVMTDVMTDVMTDVMT (PGP(PGP(PGP(PGP etetetet GPGP)GPGP)GPGP)GPGP)

CoordinationCoordinationCoordinationCoordination baséebaséebaséebasée sursursursur lesleslesles structuresstructuresstructuresstructures organisationnellesorganisationnellesorganisationnellesorganisationnellesOrganisationsOrganisationsOrganisationsOrganisations statiquesstatiquesstatiquesstatiques versusversusversusversus dynamiquesdynamiquesdynamiquesdynamiques

ExempleExempleExempleExemple :::: systèmessystèmessystèmessystèmes normatifs,normatifs,normatifs,normatifs, systèmessystèmessystèmessystèmes dededede règles,règles,règles,règles, etcetcetcetc....

CoordinationCoordinationCoordinationCoordination baséebaséebaséebasée sursursursur lesleslesles protocolesprotocolesprotocolesprotocoles dededede coopérationcoopérationcoopérationcoopérationCoopérationCoopérationCoopérationCoopération parparparpar interactioninteractioninteractioninteraction

ExempleExempleExempleExemple :::: enchères,enchères,enchères,enchères, CNP,CNP,CNP,CNP, etcetcetcetc....

NégociationNégociationNégociationNégociation etetetet priseprisepriseprise dededede décisiondécisiondécisiondécision distribuéedistribuéedistribuéedistribuéeThéorieThéorieThéorieThéorie desdesdesdes jeux,jeux,jeux,jeux, théoriethéoriethéoriethéorie d’aided’aided’aided’aide àààà lalalala décision,décision,décision,décision, etcetcetcetc....

CoordinationCoordinationCoordinationCoordination parparparpar planificationplanificationplanificationplanification multimultimultimulti----agentagentagentagent ouououou distribuéedistribuéedistribuéedistribuée

CoordinationCoordinationCoordinationCoordination fondéefondéefondéefondée sursursursur lalalala formationformationformationformation dededede coalitionscoalitionscoalitionscoalitions

Pour résumerPour résumerPour résumerPour résumer

LaLaLaLa plupartplupartplupartplupart desdesdesdes mécanismesmécanismesmécanismesmécanismes////modèlesmodèlesmodèlesmodèles/situations/situations/situations/situations dededede coordinationcoordinationcoordinationcoordination sontsontsontsont hybrideshybrideshybrideshybrides

e.g. allocation de tâches est centralisée mais la coordination est distribuée

CoopérationCoopérationCoopérationCoopération etetetet compétitioncompétitioncompétitioncompétition peuventpeuventpeuventpeuvent cocococo----existerexisterexisterexister auauauau seinseinseinsein dudududu systèmesystèmesystèmesystème àààà différentsdifférentsdifférentsdifférentsniveauxniveauxniveauxniveaux dededede l’organisationl’organisationl’organisationl’organisation

e.g. la coopération est temporaire au sein d’une coalition mais la compétition estpermanente au sein du système

Situations de coordination

Coopération Compétition

Negotiation

Coalitions

Résolution

distribuée de

problèmes

Planification

Centralisée

Planification distribuée

Distributed

decision making

PlanPlanPlanPlan

1.1.1.1. ProblématiqueProblématiqueProblématiqueProblématique dededede lalalala coordinationcoordinationcoordinationcoordination

2.2.2.2. ApprochesApprochesApprochesApproches dededede coordinationcoordinationcoordinationcoordination

3.3.3.3. ExempleExempleExempleExemple :::: CoordinationCoordinationCoordinationCoordination parparparpar formationformationformationformation dededede coalitionscoalitionscoalitionscoalitions

4.4.4.4. ConclusionConclusionConclusionConclusion

Coordination par formation de coalitionsCoordination par formation de coalitionsCoordination par formation de coalitionsCoordination par formation de coalitions

Exemple de répartition de tâches Exemple de répartition de tâches Exemple de répartition de tâches Exemple de répartition de tâches ---- Union de compagnies aériennes Union de compagnies aériennes Union de compagnies aériennes Union de compagnies aériennes ----

Le système reçoit un ensemble de tâches

ensemble de vols

Tâches divisées en sous-tâches

Un vol : suite d’étapes

Une sous-tâche : compétences + gain

T1

T2

T3

Application : compagnies aériennesApplication : compagnies aériennesApplication : compagnies aériennesApplication : compagnies aériennes

ObjectifsObjectifsObjectifsObjectifsSystèmeSystèmeSystèmeSystème unifiéunifiéunifiéunifié dededede réservationréservationréservationréservation

RépartitionRépartitionRépartitionRépartition satisfaisantesatisfaisantesatisfaisantesatisfaisante desdesdesdes étapesétapesétapesétapes

GestionGestionGestionGestion dededede lalalala concurrenceconcurrenceconcurrenceconcurrence etetetet dededede lalalala rationalitérationalitérationalitérationalité économiqueéconomiqueéconomiqueéconomique

ExempleExempleExempleExempleAgentsAgentsAgentsAgents

{EUAL, AMAL, WOAL, USAL, AFAL, FRAL, BUAL}

TâchesTâchesTâchesTâches

Sous-tâches = {New York - Madrid (via Paris et Lyon), Los Angeles -Moscou (via New York et Paris), Berlin - Johannesburg (via Paris)}

+ gains associés

CompétencesCompétencesCompétencesCompétences

{autorisation de survol d’un pays, capacité en passagers, rayon d’action}

ContexteContexteContexteContexte

AgentsAgentsAgentsAgents dudududu SMASMASMASMACognitifsCognitifsCognitifsCognitifs etetetet spécialisésspécialisésspécialisésspécialisés (compétences(compétences(compétences(compétences spécifiquesspécifiquesspécifiquesspécifiques etetetet limitées)limitées)limitées)limitées)

CompétitifsCompétitifsCompétitifsCompétitifs (contexte(contexte(contexte(contexte économique)économique)économique)économique)

HétérogènesHétérogènesHétérogènesHétérogènes (stratégies(stratégies(stratégies(stratégies variables)variables)variables)variables)

TâchesTâchesTâchesTâches dudududu SMASMASMASMATâchesTâchesTâchesTâches décomposablesdécomposablesdécomposablesdécomposables enenenen soussoussoussous----tâchestâchestâchestâches

RéalisationRéalisationRéalisationRéalisation d’uned’uned’uned’une tâchetâchetâchetâche requiertrequiertrequiertrequiert plusplusplusplus d’und’und’und’un agentagentagentagent

ButButButBut dudududu SMASMASMASMAAtteinteAtteinteAtteinteAtteinte dededede consensusconsensusconsensusconsensus pourpourpourpour lalalala répartitionrépartitionrépartitionrépartition desdesdesdes tâchestâchestâchestâches

Comportement des agents cognitifsComportement des agents cognitifsComportement des agents cognitifsComportement des agents cognitifs

ChaqueChaqueChaqueChaque agentagentagentagent possèdepossèdepossèdepossèdeUneUneUneUne rationalitérationalitérationalitérationalité économiqueéconomiqueéconomiqueéconomique

Implémentée sous forme de stratégies

Une stratégie se traduit par des préférences variables

– UnUnUnUn ensembleensembleensembleensemble dededede compétencescompétencescompétencescompétences

Liées aux sous-tâches

Ne couvrent pas entièrement une tâche

Le comportement d’un agent résulte de

sa rationalité et de ses compétences

Formation de coalitionsFormation de coalitionsFormation de coalitionsFormation de coalitions

CoalitionCoalitionCoalitionCoalitionOrganisationOrganisationOrganisationOrganisation dynamiquedynamiquedynamiquedynamique

Environnements ouverts et dynamiques

EngagementsEngagementsEngagementsEngagements ponctuelsponctuelsponctuelsponctuels etetetet contextuelcontextuelcontextuelcontextuel

Réactions opportunistes et dynamiques

FormationFormationFormationFormation //// DissolutionDissolutionDissolutionDissolution

Contexte-dépendante

CoalitionsCoalitionsCoalitionsCoalitions appliquéesappliquéesappliquéesappliquées àààà lalalala répartitionrépartitionrépartitionrépartition dededede tâchestâchestâchestâchesOrganisationOrganisationOrganisationOrganisation pourpourpourpour coordonnercoordonnercoordonnercoordonner lesleslesles comportementscomportementscomportementscomportements desdesdesdes agentsagentsagentsagents

CoalitionCoalitionCoalitionCoalition :::: ensembleensembleensembleensemble d’agentsd’agentsd’agentsd’agents coopérantcoopérantcoopérantcoopérant pourpourpourpour résoudrerésoudrerésoudrerésoudre uneuneuneune tâchetâchetâchetâche diviséediviséediviséediviséeenenenen soussoussoussous----tâchestâchestâchestâches

Synergie des compétences

Groupement par intérêt

Problème de formation de coalitionsProblème de formation de coalitionsProblème de formation de coalitionsProblème de formation de coalitions

UnUnUnUn PFCPFCPFCPFC estestestest définidéfinidéfinidéfini commecommecommecomme unununun 5555----upletupletupletuplet <A,<A,<A,<A, T,T,T,T, S,S,S,S, C,C,C,C, P>P>P>P> oùoùoùoù ::::AAAA :::: AgentsAgentsAgentsAgents candidatscandidatscandidatscandidats pourpourpourpour exécuterexécuterexécuterexécuter desdesdesdes soussoussoussous----tâchestâchestâchestâches

TTTT :::: tâchestâchestâchestâches àààà accompliraccompliraccompliraccomplir

SSSS :::: SousSousSousSous----tâchestâchestâchestâches àààà accompliraccompliraccompliraccomplir

CCCC :::: CompétencesCompétencesCompétencesCompétences

PPPP :::: ProfitProfitProfitProfit ((((gaingaingaingain associéassociéassociéassocié àààà uneuneuneune soussoussoussous----tâchetâchetâchetâche))))

SolutionSolutionSolutionSolution:::: affectationaffectationaffectationaffectation dededede toutestoutestoutestoutes lesleslesles soussoussoussous----tâchestâchestâchestâches

applicationapplicationapplicationapplication σσσσ :::: SSSS →→→→ A,A,A,A, prenantprenantprenantprenant enenenen comptecomptecomptecompte lesleslesles compétencescompétencescompétencescompétences

ButButButBut :::: atteinteatteinteatteinteatteinte dededede consensusconsensusconsensusconsensus concerantconcerantconcerantconcerant uneuneuneune solutionsolutionsolutionsolution

Quel protocole de coordination ?Quel protocole de coordination ?Quel protocole de coordination ?Quel protocole de coordination ?

HétérogénéitéHétérogénéitéHétérogénéitéHétérogénéité :::: ProblèmeProblèmeProblèmeProblème desdesdesdes interactionsinteractionsinteractionsinteractionsSoitSoitSoitSoit standardisationstandardisationstandardisationstandardisation (à(à(à(à lalalala FIPA)FIPA)FIPA)FIPA) :::: permetpermetpermetpermet argumentationargumentationargumentationargumentation

SoitSoitSoitSoit simplificationsimplificationsimplificationsimplification (échange(échange(échange(échange dededede préférences)préférences)préférences)préférences)

RationalitéRationalitéRationalitéRationalité économiqueéconomiqueéconomiqueéconomiqueIncitationIncitationIncitationIncitation àààà lalalala coopérationcoopérationcoopérationcoopération (bénéfique(bénéfique(bénéfique(bénéfique pourpourpourpour lesleslesles agents)agents)agents)agents)

PrévoirPrévoirPrévoirPrévoir dededede contraindrecontraindrecontraindrecontraindre sisisisi nécessairenécessairenécessairenécessaire

IndépendantIndépendantIndépendantIndépendant desdesdesdes stratégiesstratégiesstratégiesstratégies (universel)(universel)(universel)(universel)

NeNeNeNe paspaspaspas favoriserfavoriserfavoriserfavoriser d’agentd’agentd’agentd’agent (égalitaire)(égalitaire)(égalitaire)(égalitaire)

ForteForteForteForte autonomieautonomieautonomieautonomiePrévenirPrévenirPrévenirPrévenir lalalala fraudefraudefraudefraude (vérification(vérification(vérification(vérification ++++ sanction)sanction)sanction)sanction)

ComportementComportementComportementComportement éventuellementéventuellementéventuellementéventuellement complexecomplexecomplexecomplexe (rationalité(rationalité(rationalité(rationalité limitée,limitée,limitée,limitée, calculcalculcalculcalculsursursursur lelelele longlonglonglong //// courtcourtcourtcourt termetermetermeterme …………))))

AucuneAucuneAucuneAucune hypothèsehypothèsehypothèsehypothèse sursursursur lelelele comportementcomportementcomportementcomportement desdesdesdes agentsagentsagentsagents

Protocole de formation de coalitionsProtocole de formation de coalitionsProtocole de formation de coalitionsProtocole de formation de coalitions

ObjectifObjectifObjectifObjectif :::: ParvenirParvenirParvenirParvenir àààà uneuneuneune répartitionrépartitionrépartitionrépartition desdesdesdes soussoussoussous----tâchestâchestâchestâches entreentreentreentre leslesleslesagentsagentsagentsagents parparparpar atteinteatteinteatteinteatteinte d’und’und’und’un consensusconsensusconsensusconsensus

AlgorithmeAlgorithmeAlgorithmeAlgorithme distribuédistribuédistribuédistribué basébasébasébasé sursursursur lalalala négociationnégociationnégociationnégociationÉchangeÉchangeÉchangeÉchange dededede préférencespréférencespréférencespréférences

ContrôleContrôleContrôleContrôle dudududu respectrespectrespectrespect dudududu protocoleprotocoleprotocoleprotocole

GarantieGarantieGarantieGarantie dededede l’impartialitél’impartialitél’impartialitél’impartialité

FavorisationFavorisationFavorisationFavorisation dededede l’atteintel’atteintel’atteintel’atteinte d’und’und’und’un consensusconsensusconsensusconsensus parparparpar lalalala formationformationformationformation d’allianced’allianced’allianced’alliance

EtablissementEtablissementEtablissementEtablissement d’uned’uned’uned’une règlerèglerèglerègle quiquiquiqui garantitgarantitgarantitgarantit l’atteintel’atteintel’atteintel’atteinte d’und’und’und’un consensusconsensusconsensusconsensus

Principes du protocolePrincipes du protocolePrincipes du protocolePrincipes du protocole

• CalculCalculCalculCalcul desdesdesdes préférencespréférencespréférencespréférences

• EchangeEchangeEchangeEchange dededede préférencespréférencespréférencespréférences

• FormationFormationFormationFormation d’alliancesd’alliancesd’alliancesd’alliances enenenen cascascascas dededede blocageblocageblocageblocage

Représentation des préférencesReprésentation des préférencesReprésentation des préférencesReprésentation des préférences

PréférencesPréférencesPréférencesPréférences ::::«««« distancesdistancesdistancesdistances »»»» entreentreentreentre solutionssolutionssolutionssolutions

PasPasPasPas dededede messagesmessagesmessagesmessages complexescomplexescomplexescomplexes (hétérogénéité)(hétérogénéité)(hétérogénéité)(hétérogénéité)

ExempleExempleExempleExemple ::::

X préfère largement σ1 à σ2 ⇔ δ (σ1 , σ2)=.9

MatriceMatriceMatriceMatrice antisymetriqueantisymetriqueantisymetriqueantisymetrique :::: σσσσ1 σσσσ2 σσσσ3 σσσσ4

σσσσ1 0 .9 -.2 0

σσσσ2 -.9 0 -1 .1

σσσσ3 .2 1 0 -.5

σσσσ4 0 -.1 .5 0

Calcul des préférencesCalcul des préférencesCalcul des préférencesCalcul des préférences

PréférencesPréférencesPréférencesPréférences initialesinitialesinitialesinitiales

PréférencesPréférencesPréférencesPréférences dépendantesdépendantesdépendantesdépendantes

FléxibleFléxibleFléxibleFléxible:::: ωωωω →→→→ 0000 ;;;; RigideRigideRigideRigide:::: ωωωω →→→→ 1111

( ) ( ) ( )( )σ

σσσσδσincomeSup

incomeincomea

21210 , −=

( ) ( ) ( )( )

{ }1

1' \

2,1

2,102,1 −−+×=∑∈

AaAb

b

aa

σσδωσσδωσσδ

Diffusion parallèleDiffusion parallèleDiffusion parallèleDiffusion parallèle

Ack

Ack

Ack Ack

Ack

Ack

Ack Ack

Ack

AckAck

Ack

Ack

AckAck

Ack

Algorithme Algorithme Algorithme Algorithme ---- Diffusion parallèleDiffusion parallèleDiffusion parallèleDiffusion parallèle

For all α∈Αα∈Αα∈Αα∈Α do

θ∗θ∗θ∗θ∗ ←←←← EncEncEncEncrypt(rypt(rypt(rypt(θθθθ,,,, key)key)key)key)

broadcast(broadcast(broadcast(broadcast(θ∗θ∗θ∗θ∗))))

{ diffuser l’information cryptée }

receiptAll(receiptAll(receiptAll(receiptAll(θ∗θ∗θ∗θ∗,,,, ΑΑΑΑ\\\\αααα))))

{ attendre toutes les réceptions }

broadcast(«broadcast(«broadcast(«broadcast(« AckAckAckAck »)»)»)»)

receiptAll(«receiptAll(«receiptAll(«receiptAll(« AckAckAckAck »,»,»,», ΑΑΑΑ\\\\αααα))))

broadcast(key,broadcast(key,broadcast(key,broadcast(key, ΑΑΑΑ\\\\αααα ))))

{ diffuser la clé }

Tour n° 01234

Echange de préférencesEchange de préférencesEchange de préférencesEchange de préférences

Tour n° 01234

Formation d’alliancesFormation d’alliancesFormation d’alliancesFormation d’alliances

Algorithme Algorithme Algorithme Algorithme ---- Les préférencesLes préférencesLes préférencesLes préférences

IndPrefIndPrefIndPrefIndPref ←←←← IPCIPCIPCIPC {{{{CalculCalculCalculCalcul desdesdesdes préférencespréférencespréférencespréférences initiales}initiales}initiales}initiales}

hhhh ↵↵↵↵ DiffParallèle(IndPref)DiffParallèle(IndPref)DiffParallèle(IndPref)DiffParallèle(IndPref) {Diffusion{Diffusion{Diffusion{Diffusion etetetet misemisemisemise àààà jour}jour}jour}jour}

While ((((¬¬¬¬ consensus)consensus)consensus)consensus) do

If RSPC(h)RSPC(h)RSPC(h)RSPC(h) Then sendAll(«ModesendAll(«ModesendAll(«ModesendAll(«Mode déblocagedéblocagedéblocagedéblocage ?»)?»)?»)?»)

If receive(«Modereceive(«Modereceive(«Modereceive(«Mode déblocagedéblocagedéblocagedéblocage ?»)?»)?»)?») Then

IfIfIfIf RSAC ThenThenThenThen sendAll(«accepte déblocage»)

If receiveAll(«acceptereceiveAll(«acceptereceiveAll(«acceptereceiveAll(«accepte déblocage»)déblocage»)déblocage»)déblocage»)

ThenThenThenThen call mode_déblocage

DepPrefDepPrefDepPrefDepPref ←←←← IPCIPCIPCIPC {{{{CalculCalculCalculCalcul desdesdesdes préférencespréférencespréférencespréférences dépendantes}dépendantes}dépendantes}dépendantes}

hhhh ↵↵↵↵ DiffParallèle(DepPref)DiffParallèle(DepPref)DiffParallèle(DepPref)DiffParallèle(DepPref)

Algorithme Algorithme Algorithme Algorithme ---- Mode déblocageMode déblocageMode déblocageMode déblocage

Broadcast(«proposeBroadcast(«proposeBroadcast(«proposeBroadcast(«propose formationformationformationformation alliance»,alliance»,alliance»,alliance», AFPC(h))AFPC(h))AFPC(h))AFPC(h)){{{{ AFPCAFPCAFPCAFPC :::: ensembleensembleensembleensemble desdesdesdes agentsagentsagentsagents àààà quiquiquiqui proposerproposerproposerproposer uneuneuneune alliancealliancealliancealliance }}}}

For eacheacheacheach aaaa //// receive(«proposereceive(«proposereceive(«proposereceive(«propose alliance»,alliance»,alliance»,alliance»,αααα)))) do

If α∈α∈α∈α∈AFAC(h)AFAC(h)AFAC(h)AFAC(h) Then send(«j’accepte»,send(«j’accepte»,send(«j’accepte»,send(«j’accepte», αααα)))){{{{ AFACAFACAFACAFAC :::: décidedécidedécidedécide sisisisi lalalala propositionpropositionpropositionproposition dededede αααα estestestest acceptableacceptableacceptableacceptable }}}}

If (pas(pas(pas(pas d’allianced’allianced’allianced’alliance formée)formée)formée)formée) Then

Β←SMA.nearestAgents(){SMA.nearestAgents() : fonction commune connue au début du

processus }

LesLesLesLes membresmembresmembresmembres dededede ΒΒΒΒ doiventdoiventdoiventdoivent formerformerformerformer uneuneuneune alliancealliancealliancealliance

TerminaisonTerminaisonTerminaisonTerminaison

DéfinitionDéfinitionDéfinitionDéfinition :::: uneuneuneune histoirehistoirehistoirehistoire contientcontientcontientcontient uneuneuneune boucleboucleboucleboucle sisisisi uneuneuneune situationsituationsituationsituationsesesese présenteprésenteprésenteprésente deuxdeuxdeuxdeux foisfoisfoisfois....

ThéorèmeThéorèmeThéorèmeThéorème :::: sisisisi unununun CFPCFPCFPCFP détectedétectedétectedétecte lesleslesles boucles,boucles,boucles,boucles, alorsalorsalorsalors lelelele processusprocessusprocessusprocessusterminetermineterminetermine....

PreuvePreuvePreuvePreuve ::::

nombrenombrenombrenombre finifinifinifini dededede solutionssolutionssolutionssolutions

consensusconsensusconsensusconsensus sisisisi touttouttouttout lelelele mondemondemondemonde aaaa lalalala mêmemêmemêmemême préférencepréférencepréférencepréférence

Résultats de la simulationRésultats de la simulationRésultats de la simulationRésultats de la simulation

NombreNombreNombreNombre d’agentsd’agentsd’agentsd’agents

IncidenceIncidenceIncidenceIncidence sursursursur lalalala vitessevitessevitessevitesse dededede convergenceconvergenceconvergenceconvergence

StratégieStratégieStratégieStratégie

IncidenceIncidenceIncidenceIncidence sursursursur lesleslesles gainsgainsgainsgains desdesdesdes agentsagentsagentsagents

IncidenceIncidenceIncidenceIncidence sursursursur lalalala vitessevitessevitessevitesse dededede convergenceconvergenceconvergenceconvergence

CompétitionCompétitionCompétitionCompétition

IncidenceIncidenceIncidenceIncidence sursursursur lesleslesles gainsgainsgainsgains desdesdesdes agentsagentsagentsagents

IncidenceIncidenceIncidenceIncidence sursursursur lalalala vitessevitessevitessevitesse dededede convergenceconvergenceconvergenceconvergence

RésultatsRésultatsRésultatsRésultats

Nombre de tours / Nombre d’agents

Nombre de tours

Nombre d’agents

RésultatsRésultatsRésultatsRésultats

Gain d’un agent face à une population uniforme

α

Gains

RésultatsRésultatsRésultatsRésultats

Gain d’un agent face à une population uniforme

Gain

α0

0,05

0,1

0,15

0,2

0,25

0,3

0,35

0,4

0,45

0,5

0 0,1 0,2 0,3 0,4 0,5 0,6 0,7 0,8 0,9 1

1

0,8

0,6

0,4

0,2

0

RésultatsRésultatsRésultatsRésultats

Vitesse de convergence dans le cas d’une population uniforme

Nombre de tours

α

RésultatsRésultatsRésultatsRésultats

Gain d’un agent / Nombre de sous-tâches par agent

Gain

Nombre de sous-tâches par agents

RésultatsRésultatsRésultatsRésultats

Nombre de tours / Nombre de sous-tâches par agent

Nombre de tours

Nombre de sous-tâches par agent

ConclusionConclusionConclusionConclusion

QuelQuelQuelQuel ModèleModèleModèleModèle dededede coordinationcoordinationcoordinationcoordination pourpourpourpour quelquelquelquel SMASMASMASMA ????SystèmesSystèmesSystèmesSystèmes orientésorientésorientésorientés tâchestâchestâchestâches

SystèmesSystèmesSystèmesSystèmes orientésorientésorientésorientés agentsagentsagentsagents

Agents coopératifs

Agents compétitifs

CritèresCritèresCritèresCritères d’évaluationd’évaluationd’évaluationd’évaluationEfficacité,Efficacité,Efficacité,Efficacité,

QualitéQualitéQualitéQualité dededede lalalala solutionsolutionsolutionsolution

ToléranceToléranceToléranceTolérance auxauxauxaux pannespannespannespannes

AdaptabilitéAdaptabilitéAdaptabilitéAdaptabilité

RéactivitéRéactivitéRéactivitéRéactivité