Post on 10-Sep-2018
Coordination dans les SMA
Problématique et Approches
AMAL EL FALLAH SEGHROUCHNI
Amal.Elfallah@lip6.fr
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
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
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é