FR3044438A1 - Systeme et procede d'aide a la decision - Google Patents

Systeme et procede d'aide a la decision Download PDF

Info

Publication number
FR3044438A1
FR3044438A1 FR1502483A FR1502483A FR3044438A1 FR 3044438 A1 FR3044438 A1 FR 3044438A1 FR 1502483 A FR1502483 A FR 1502483A FR 1502483 A FR1502483 A FR 1502483A FR 3044438 A1 FR3044438 A1 FR 3044438A1
Authority
FR
France
Prior art keywords
competitive
function
elementary
entity
learning
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
FR1502483A
Other languages
English (en)
Inventor
Helia Pouyllau
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Thales SA
Original Assignee
Thales SA
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Thales SA filed Critical Thales SA
Priority to FR1502483A priority Critical patent/FR3044438A1/fr
Priority to CN201680079996.7A priority patent/CN108701260B/zh
Priority to EP16801202.9A priority patent/EP3380994A1/fr
Priority to US15/778,600 priority patent/US11120354B2/en
Priority to PCT/EP2016/078634 priority patent/WO2017089443A1/fr
Priority to CA3006383A priority patent/CA3006383A1/fr
Publication of FR3044438A1 publication Critical patent/FR3044438A1/fr
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N7/00Computing arrangements based on specific mathematical models
    • G06N7/01Probabilistic graphical models, e.g. probabilistic networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions
    • G06F17/10Complex mathematical operations
    • G06F17/16Matrix or vector computation, e.g. matrix-matrix or matrix-vector multiplication, matrix factorization
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions
    • G06F17/10Complex mathematical operations
    • G06F17/18Complex mathematical operations for evaluating statistical data, e.g. average values, frequency distributions, probability functions, regression analysis
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N7/00Computing arrangements based on specific mathematical models
    • G06N7/02Computing arrangements based on specific mathematical models using fuzzy logic
    • G06N7/06Simulation on general purpose computers

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Mathematical Physics (AREA)
  • Data Mining & Analysis (AREA)
  • Mathematical Analysis (AREA)
  • Mathematical Optimization (AREA)
  • Pure & Applied Mathematics (AREA)
  • Computational Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Computing Systems (AREA)
  • Algebra (AREA)
  • Evolutionary Computation (AREA)
  • Artificial Intelligence (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Databases & Information Systems (AREA)
  • Probability & Statistics with Applications (AREA)
  • Health & Medical Sciences (AREA)
  • Biomedical Technology (AREA)
  • Fuzzy Systems (AREA)
  • General Health & Medical Sciences (AREA)
  • Molecular Biology (AREA)
  • Medical Informatics (AREA)
  • Automation & Control Theory (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Operations Research (AREA)
  • Evolutionary Biology (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • User Interface Of Digital Computer (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)
  • Feedback Control In General (AREA)

Abstract

L'invention propose un procédé d'aide à la décision pour déterminer une action à mettre en œuvre par une entité compétitive donnée dans un système compétitif comprenant l'entité compétitive et au moins une autre entité compétitive adverse, l'entité compétitive pouvant mettre en oeuvre une action parmi un ensemble d'actions prédéfinies, chaque action fournissant un gain attendu différent en fonction des actions mises en oeuvre par les entités compétitives adverses. Chaque entité est en outre apte à mettre en oeuvre une méthode d'apprentissage parmi un ensemble de méthodes d'apprentissage prédéfinies pour apprendre les actions des entités adverses, - associer (604) à chaque méthode d'apprentissage une fonction de probabilités élémentaire affectant un paramètre de probabilité à chaque action possible de l'entité compétitive donnée ; - déterminer une fonction de probabilités globale (608) affectant un paramètre de probabilité à chaque fonction de probabilités élémentaire ; -sélectionner (609) l'une des fonctions de probabilités élémentaires en utilisant la fonction de probabilités globale ; et - appliquer la fonction de probabilités élémentaire sélectionnée pour déterminer une action (610) parmi les actions pouvant être mises en oeuvre par ladite entité compétitive donnée.

Description

SYSTEME ET PROCEDE D’AIDE A LA DECISION Domaine technique
La présente invention concerne de manière générale les systèmes de gestion des données et en particulier un système et un procédé d’aide à la décision.
Les systèmes d'aide à la décision sont utilisés dans de nombreux domaines où des décisions stratégiques doivent être prises comme par exemple dans le domaine militaire. En particulier, de tels systèmes peuvent être utiles pour optimiser la stratégie de défense en réponse à une attaque déclenchée par un dispositif attaquant. Le dispositif attaquant peut être contrôlé par un ou plusieurs opérateurs via une interface de contrôle.
La modélisation du comportement du dispositif attaquant est un enjeu clé pour pouvoir prédire ses futures actions et adapter en conséquence la stratégie de défense. L’on connaît des modèles de décision stratégique simples qui peuvent être appliqués pour fournir des informations sur le gain (positif ou négatif) qu'un dispositif défenseur peut prévoir au regard des actions du dispositif attaquant. La notion du gain quantifie les avantages que l’on peut obtenir en choisissant une action plutôt qu’une autre, cet avantage dépendant du choix de l’opposant.
Une approche connue de modélisation basée sur la théorie des jeux a été employée pour modéliser la décision stratégique dans le cadre de problèmes de sécurité. Un « jeu » est constitué d'un ensemble d’entités compétitives (encore appelées « joueurs »), d'un ensemble de mouvements/actions (encore appelées « stratégies ») disponibles pour ces entités compétitives, et de spécifications des gains escomptés pour chaque combinaison d’actions.
Dans un contexte de jeu, des états d'équilibre peuvent être définis. Ceci signifie qu’en définissant le jeu de sécurité, il est nécessaire de connaître toutes les actions et les valeurs de gains possibles. Les équilibres constituent des situations selon lesquelles les joueurs (comprenant les dispositifs attaquants et dispositifs défenseurs dans le cas d'un jeu de sécurité) n'ont aucun intérêt à changer leurs choix d’actions (i.e. leurs stratégies). La théorie de John Nash (1957) a démontré qu'il existe toujours des équilibres « mixtes » dans un jeu. Cette théorie signifie que pour n'importe quel type de jeux, il existe toujours une distribution de probabilité, au-delà des stratégies des joueurs, qui mènent à un équilibre.
La détermination des équilibres n'est pas toujours un problème simple et n’est pas toujours souhaitable. En effet, dans certains cas, il peut être souhaitable de déterminer la solution la plus proche de l'optimum « social » plutôt que de l'équilibre.
La plupart des approches existantes utilisent une méthode d’apprentissage simple pour trouver l'équilibre ou une valeur proche de l’équilibre. Par exemple, l'algorithme de joueur fictif de Brown nécessite la connaissance de chacun des mouvements du dispositif adversaire et des gains correspondants pour le système. Par conséquent, cette solution est non applicable en pratique à de nombreux problèmes que ce soit parce que les stratégies adverses sont inconnues ou que leur combinaison n’est pas calculable. Par ailleurs, dans certains scénarios, les stratégies des joueurs peuvent changer au cours du temps, où le contexte peut modifier les gains perçus. Pour résoudre ces problèmes, d’autres approches connues se basent sur l’utilisation de méthodes d’apprentissage configurées pour fournir des valeurs proches de l'équilibre ou de l'optimum social. Toutefois ces approches sont spécifiques à une méthode d’apprentissage choisie statiquement. Définition générale de l’invention L’invention vient améliorer la situation en proposant un procédé d’aide à la décision pour déterminer une action à mettre en œuvre par une entité compétitive donnée dans un système compétitif comprenant l’entité compétitive et au moins une autre entité compétitive adverse, l’entité compétitive pouvant mettre en œuvre une action parmi un ensemble d’actions prédéfinies, chaque action fournissant un gain attendu différent en fonction des actions mises en œuvre par lesdites entités compétitives adverses, chaque entité étant en outre apte à mettre en œuvre une méthode d’apprentissage parmi un ensemble de méthodes d’apprentissage prédéfinies pour apprendre les actions des entités adverses, le procédé comprenant : - associer à chaque méthode d’apprentissage une fonction de probabilités élémentaire associant un paramètre de probabilité à chaque action possible de l’entité compétitive donnée ; - déterminer une fonction de probabilités globale associant un paramètre de probabilité à chaque fonction de probabilités élémentaire ; -sélectionner l'une des fonctions de probabilités élémentaires en utilisant la fonction de probabilités globale ; - appliquer la fonction de probabilités élémentaire sélectionnée pour déterminer une action parmi les actions pouvant être mises en œuvre par ladite entité compétitive donnée.
Le procédé peut par exemple comprendre la génération d’une recommandation d’action comprenant un identifiant de l’action déterminée.
Dans un mode de réalisation, le procédé peut comprendre une étape préalable consistant à modéliser la situation stratégique de l’entité compétitive donnée sous la forme d’un modèle de jeu comprenant l’ensemble des actions possibles des entités compétitives et la fonction de gain s’appliquant aux dites actions, la fonction de gain associant à chaque action ou combinaison d’actions des entités compétitives un gain attendu.
En particulier, le paramètre de probabilité peut être une valeur de poids.
Dans certains modes de réalisation, les fonctions de probabilités élémentaires peuvent correspondre à une composante d’un vecteur de probabilités défini en fonction d’une distribution de probabilité.
Chaque composante du vecteur de probabilités peut alors dépendre de poids élémentaires prédéfinis.
Le procédé peut notamment comprendre une étape de calcul de la fonction de gain à partir de données d’apprentissage.
La fonction de gain peut dans ce cas dépendre de l’un au moins des modèles multicritères suivants parmi une somme pondérée, Intégrale de Choquet, un modèle d’utilité additive généralisé, un réseau de neurones.
En variante, la fonction de gain peut dépendre d’un modèle probabiliste.
Selon une caractéristique de l’invention, le procédé peut comprendre une étape de mise à jour d’au moins une fonction de probabilités élémentaire en utilisant une fonction de mise à jour, en réponse à la réception de données d’apprentissage obtenues en exécutant ou en simulant la fonction de probabilités élémentaire sélectionnée et l’action réellement choisie dans le système compétitif au moins une fois. L’étape de mise à jour peut comprendre la mise à jour de la fonction de probabilités élémentaire sélectionnée. L’étape de mise à jour peut comprendre en outre la mise à jour d’au moins une desdites autres fonctions de probabilités élémentaires. L’étape de mise à jour peut comprendre également l'application d’une fonction de mise à jour différente pour chaque fonction de probabilités élémentaire.
Dans un mode de réalisation, les fonctions de mise à jour peuvent comprendre au moins une fonction de mise à jour dépendant du gain obtenu.
Les fonctions de mise à jour peuvent comprendre au moins une fonction de mise à jour dépendant de poids élémentaires, chaque poids élémentaire étant associé à une action donnée et les poids élémentaires étant fonction des gains obtenus.
En particulier, la fonction de mise à jour d’une fonction de probabilités élémentaire donnée peut comprendre une composante par action, chaque composante par action dépendant du rapport entre le poids élémentaire associé à l’action, à l’étape de décision considérée, et la somme totale des poids élémentaires correspondant aux différentes composantes de la fonction de probabilité élémentaire à l’étape de décision.
Selon une autre caractéristique, l’étape de mise à jour peut comprendre en outre la mise à jour des poids élémentaires en fonction de la perte encourue en utilisant la méthode d’apprentissage associée à la fonction de probabilités élémentaire à mettre à jour, à une étape de décision donnée. L’étape de mise à jour peut comprendre la mise à jour des poids élémentaires en appliquant une fonction de distribution de Boltzmann aux gains obtenus. L’étape de mise à jour peut comprendre la mise à jour des poids élémentaires en fonction d’un paramètre représentant l'état de l'environnement, d’un taux d'exploration, et d’un facteur de remise.
Les fonctions de mise à jour peuvent comprendre au moins une fonction de mise à jour dépendant de paramètres de gains reçus mesurant le regret d’avoir choisi la méthode d’apprentissage associée à la fonction de probabilités élémentaire plutôt qu’une autre méthode d’apprentissage, à une étape de décision donnée. L’invention propose en outre un produit programme d’ordinateur, le programme d’ordinateur comprenant des instructions de code permettant d’effectuer les étapes du procédé selon l'une quelconque des caractéristiques précédentes, lorsque le programme est exécuté sur un ordinateur. L’invention propose également un système d’aide à la décision pour déterminer une action à mettre en oeuvre par une entité compétitive donnée dans un système compétitif comprenant ladite entité compétitive et au moins une autre entité compétitive adverse, l’entité compétitive pouvant mettre en œuvre une action parmi un ensemble d’actions prédéfinies, chaque action fournissant un gain attendu différent en fonction des actions mises en œuvre par lesdites entités compétitives adverses, chaque entité étant en outre apte à mettre en œuvre une méthode d’apprentissage parmi un ensemble de méthodes d’apprentissage prédéfinies pour apprendre les actions des entités adverses, chaque méthode d’apprentissage étant associée à une fonction de probabilités élémentaire associant un paramètre de probabilité à chaque action possible de l'entité compétitive donnée. Selon un aspect de l’invention, le système d’aide à la décision comprend un module d’apprentissage global configuré pour déterminer une fonction de probabilités globale propre à associer un paramètre de probabilité à chaque fonction de probabilités élémentaire, le module d'apprentissage global comprenant en outre une unité de sélection configurée pour sélectionner l'une desdites fonctions de probabilités élémentaires en utilisant la fonction de probabilités globale, le module d’apprentissage globale étant propre à appliquer la fonction de probabilités élémentaire sélectionnée pour déterminer une action parmi lesdites actions pouvant être mises en œuvre par ladite entité compétitive donnée, par exemple pour générer une recommandation incluant un identifiant de l’action. L'invention fournit ainsi une méthode de méta-apprentissage qui permet de sélectionner la méthode d’apprentissage la plus adaptée dans un système d'aide à la décision dans un contexte de décision stratégique. Lorsqu'une unité de commande et de contrôle doit prendre une décision dont les avantages ou les inconvénients dépendent des actions des dispositifs adverses, le système d’aide à la décision selon l'invention est apte à fournir des recommandations optimales.
Les modes de réalisation selon l’invention permettent ainsi de déterminer le schéma d’apprentissage optimal parmi un ensemble de schémas d’apprentissages prédéfinis pour déterminer de telles recommandations optimales.
Les modes de réalisation proposés permettent notamment d’apprendre parmi un ensemble de méthodes d’apprentissages celle qui fournit des gains maximum pour le système. C’est un avantage de l’invention de ne pas nécessiter une connaissance approfondie de toutes les actions possibles des entités compétitives dans le système de compétition considéré. En particulier, la méthode et le système selon l’invention sont aptes à traiter l'incertitude sur les gains des entités adverses. Ils s’adaptent en outre dynamiquement à l’ajout de nouvelles actions dans le système compétitif ou de d’autres schémas d’apprentissage tels que l'algorithme lié au Processus de Décision de Markov (par exemple Q-Étude, SARSA) qui sont particulièrement avantageux pour le traitement de jeux dynamiques, c’est-à-dire de jeux pour lesquels le contexte lui aussi peut impacter les gains attendus. C’est un autre avantage encore de l’invention de fournir un système d’aide à la décision capable de s’adapter dynamiquement aux changements des règles des dispositifs opposants.
Brève description des dessins D’autres caractéristiques et avantages de l’invention apparaîtront à l’aide de la description qui suit et des figures des dessins annexés dans lesquels : - La figure 1 est un schéma d’un exemple d’architecture implémentant un système d’aide à la décision, selon certains modes de réalisation ; - La figure 2 est un organigramme représentant les étapes mises en œuvre par une méthode d’apprentissage, selon l’art antérieur pendant un cycle de décision ; - La figure 3 représente un exemple de système compétitif de type système de télécommunication incluant un ensemble d’émetteurs et un ensemble de récepteurs auquel peut s’appliquer les modes de réalisation de l’invention ; - La figure 4 représente un exemple de matrice de gains correspondant à un exemple de système compétitif où une entité compétitive est menacée par des attaques électroniques mises en œuvre par une ou plusieurs entités attaquantes ; - La figure 5 est une vue schématique du système d’aide à la décision comprenant un dispositif de méta-apprentissage selon certains modes de réalisation ; - La figure 6 est un organigramme général représentant les principales étapes de la méthode d’aide à la décision, selon certains modes de réalisation ; - La figure 7 montre un exemple d’environnement dans lequel le système d’aide à la décision peut être mis en œuvre selon un mode de réalisation ; - La figure 8 est un exemple de matrice de gains correspondant au même exemple de réalisation que celui de la figure 4 ; - La figure 9 est un diagramme représentant l’évolution des gains de deux entités compétitives dans le temps (moyenne sur 50 exécutions), selon un exemple de réalisation, lorsque les deux entités compétitives utilisent l'algorithme de Brown ; - La figure 10 est un diagramme représentant l’évolution de la valeur de probabilité associée au choix de chaque action pour chaque entité, dans l’exemple de la figure 9 ; - La figure 11 est un exemple de table de gains illustrant le gain moyen que chaque entité compétitive a obtenu après 100 parties, selon un exemple de réalisation ; - La figure 12 illustre les résultats obtenus avec un type de méthode d’apprentissage particulière ; et - La figure 13 est une vue schématique d'un système informatique pouvant être utilisé pour implémenter le système d’aide à la décision selon certains modes de réalisation.
Description détaillée
La figure 1 représente de manière schématique un exemple d’architecture implémentant un système d’aide à la décision 10 selon certains modes de réalisation. Le système d’aide à la décision 10 interagit avec un dispositif de requérant 11 (encore appelé dispositif de contrôle).
Le dispositif de contrôle 11 est agencé pour contrôler une ou plusieurs entités compétitives 20 A dans un système compétitif 101. Le système d’aide à la décision 10 peut recevoir une requête émise par le dispositif de contrôle pour fournir des recommandations d’actions à mettre en oeuvre par une entité compétitive donnée 20A du système compétitif (mode statique). Le système d’aide à la décision 10 peut également générer des recommandations d’actions à mettre en œuvre par une entité compétitive donnée dynamiquement, par exemple en réponse à un changement du contexte compétitif détecté dans le système compétitif, ou périodiquement.
Telles qu’utilisées ici, les expressions « entités compétitives » ou « agents compétitifs » désignent des agents ou entités en compétition, c'est-à-dire ayant des buts opposés, la réussite d’une entité (ou agent) pouvant être réalisée par la défaite d’une ou plusieurs autres entités (ou agents). Des entités compétitives peuvent ainsi comprendre des entités attaquantes et des entités opposantes. Une entité peut être elle-même un dispositif ou un système.
Les entités compétitives sont associées à un environnement ou un système compétitif (environnement ou système « multi-agent ») pouvant comprendre une ou plusieurs entités compétitives. L’environnement compétitif peut également inclure des entités indépendantes (dont les buts ne sont pas liés avec les entités compétitives) et/ou des entités collaboratives.
Le dispositif de contrôle 11 de chaque entité compétitive peut être apte à déclencher des actions dans l’environnement de l’entité compétitive contrôlée 20A et collecter des données de l’environnement par exemple au moyen de capteurs. Les capteurs peuvent être agencés au niveau de l’entité compétitive 20A ou dans son environnement. Chaque entité peut être par exemple : - un dispositif muni de capteurs (capteurs optiques, sonores, etc.). Le dispositif de contrôle 11 peut contrôler les actions du dispositif au moyen de différentes commandes. - Un dispositif logiciel pouvant mettre en oeuvre des actions dans son environnement par exemple en envoyant des messages via un réseau, les données de son environnement étant collectées à partir des mouvements de la souris, des messages du réseau, etc.
Le comportement d’une entité compétitive est décrit par une stratégie qui définit une ou plusieurs actions à mettre en œuvre par l’entité. Il est à noter que le terme « action » tel qu’utilisé ici fait référence à une action « logique », c’est-à-dire une action modélisée par le système. Cette action peut correspondre à une ou plusieurs sous actions « physiques ». Par exemple, pour une action « envoyer un message », plusieurs sous actions physiques pourront être mises en œuvre telles que « choisir la fréquence », « établir une connexion », « envoyer le message ». Cette stratégie d’actions peut être définie par le système d’aide à la décision 10 et mise en œuvre par un dispositif de l’entité 20A. En variante, le système d’aide à la décision 10 peut mettre en œuvre l’action choisie au lieu d’émettre une recommandation, ce qui correspond à une décision automatisée.
Selon un aspect de l’invention, le système d'aide à la décision 10 comprend un module de méta apprentissage 50 (encore appelé « module d’apprentissage » globale ou « dispositif d’apprentissage global ») configuré pour sélectionner un algorithme d’apprentissage parmi un ensemble d’algorithmes d’apprentissages prédéfinis et appliquer l’algorithme sélectionné pour déterminer un choix d’action à mettre en œuvre pour une entité compétitive donnée.
Un algorithme d’apprentissage (ou méthode d’apprentissage) dans un système multi-agent est configuré pour déterminer pour une entité donnée (celle qui apprend) une stratégie qui peut offrir un gain maximal par rapport aux entités adverses, en utilisant l’expérience acquise sur l’environnement de l’entité (données de situation stratégiques encore appelées ci-après « données d’apprentissage »).
Un algorithme d’apprentissage multi-agent tente ainsi d’apprendre un modèle représenté par une matrice de gains si les stratégies adverses sont connues, ou un vecteur de gains si elles ne le sont pas. Une matrice de gains associée à un système compétitif est représentée comme un tuple (ΑΛ w, R1JVi ,...M) où N désigne le nombre d’entités compétitives, Cn est l'ensemble des actions que l’entité n peut choisir et Rn la matrice Mx/V-dimensions qui donne les gains possibles pour chacune des combinaisons possibles des M actions possibles des N entités.
Telle qu’utilisée ici, l’expression « gain » d’une entité compétitive désigne le bénéfice ou la perte obtenus par cette entité suite à l’application des actions par l’ensemble des entités. Elle désigne ainsi une donnée quantitative mais qui peut être dérivée à partir d’une analyse qualitative de la situation. Par ailleurs, les gains peuvent être mesurés (ils sont alors dits « observables ») ou calculés en utilisant plusieurs paramètres caractéristiques de la situation et en les combinant en une fonction multicritères (par exemple, somme pondérée, intégrale de Choquet, modèle d’utilité additive généralisée, etc.) ou avec d’autres méthodes (par ex : réseau bayésien, réseau de neurones, etc.). Quelque soit le mode de définition des gains, celui-ci peut être déterminé préalablement à l’utilisation du procédé. Un gain peut ainsi être positif, négatif (gain correspondant à une perte) ou nul. L’expression « stratégie » pour une entité compétitive désigne des choix faits par l’entité entre un ensemble d’actions; la stratégie peut être pure si elle est basée sur un seul choix déterministe ou « mixte » si elle est basée sur un choix probabiliste entre les actions.
Les méthodes d'apprentissage multi-agents connus peuvent s’appuyer sur différents modèles connus : - les processus de décisions markoviens - les méthodes dites de « bandits manchots » - les méthodes d’apprentissage par renforcement - les méthodes de joueur fictif - les jeux matriciels.
Plus précisément, une méthode d’apprentissage apprend des paramètres les probabilités de choisir une action à un certain état de l’entité et fournit une distribution de probabilités sur les actions (choix).
Une méthode d’apprentissage est associée à une fonction de probabilités élémentaire correspondant à une distribution de probabilités élémentaires sur les actions pouvant être mise en oeuvre par une entité compétitive. Cette fonction de probabilités élémentaires peut se présenter sous la forme d’un vecteur de probabilités, chaque composante du vecteur de probabilités correspondant à la probabilité de choix d’une action de l’entité donnée. Les algorithmes d’apprentissage connus peuvent mettre en œuvre différents types d’équations ou de modèles. Les vecteurs de probabilités associés à chaque algorithme d’apprentissage sont donc différents d’un type d’algorithme à l’autre.
Le point stable à atteindre pour un algorithme d'apprentissage est appelé équilibre de Nash, ce point correspondant au point constituant la meilleure réponse. L'équilibre de Nash représente une collection de stratégies comprenant un ensemble de vecteurs de probabilités pour chaque entité N telle que le vecteur pn se trouve être une meilleure réponse aux vecteurs p_n des entités compétitives adverses ” - n". L’environnement d’une entité compétitive donnée peut être variable. Des algorithmes d’apprentissages (encore appelés méthodes d’apprentissages) peuvent être utilisés pour permettre aux entités de s'adapter à de tels changements. Ces algorithmes peuvent également permettre à une entité compétitive de s’adapter aux effets des autres entités sur les données d'apprentissage. Les données d’apprentissage peuvent comprendre un ensemble de données observées et/ou calculées suite à l’exécution ou la simulation d’actions dans le contexte des entités. L’observation des données d’apprentissage peut être réalisée en appliquant des actions et en observant le résultat obtenu suite à l’application de ces actions.
En particulier, les données d’apprentissage peuvent comprendre des données relatives aux gains obtenus par les entités compétitives (apprentissage sur l’échec/la réussite des actions).
Les méthodes d'apprentissage multi-agent peuvent être caractérisées par plusieurs propriétés telles qu’une propriété de rationalité (les entités cherchent à maximiser leurs gains selon une certaine échelle de temps), de convergence (un algorithme d'apprentissage se stabilise en un vecteur de probabilités stationnaires), de sécurité, ou de « non-regret ». Certains algorithmes d’apprentissage peuvent être basés sur l’hypothèse que les matrices de gains de toutes les entités compétitives sont connues et/ou que la stratégie ou les actions des entités adverses sont connues.
Une méthode d’apprentissage peut être mise en oeuvre classiquement selon les étapes de l'organigramme de la figure 2, en utilisant un unique procédé d’apprentissage pendant tout le cycle de décision comprenant des étapes (ou époques) de décision.
Pour une méthode d’apprentissage donnée (bloc 200), tant que le jeu n'est pas terminé (condition 201), à l’étape 202, une action est choisie selon la méthode d’apprentissage. A l’étape 203, le gain réalisé en appliquant l’action est calculé. A l’étape 204, la fonction de probabilités de la méthode d’apprentissage est mise à jour en utilisant le gain.
Pour identifier l’action à choisir, une méthode d’apprentissage utilise de manière équilibrée les informations d’exploitation (utilisant les informations passées) et les données d’exploration (en testant de nouvelles stratégies ou des stratégies déjà utilisées).
Le module de méta-apprentissage 50 selon les modes de réalisation de l’invention ne se limite pas à l’utilisation d’un unique algorithme d’apprentissage pendant tout le cycle de décision mais exploite un ensemble d’algorithmes d’apprentissage pour déterminer l’action à mettre en oeuvre par une entité donnée à un instant donné.
Le module de méta-apprentissage 50 est ainsi configuré pour sélectionner un algorithme d’apprentissage parmi l’ensemble d’algorithmes d’apprentissages prédéfinis en utilisant les données d’apprentissage, et ainsi améliorer le procédé de décision et les performances de l’entité.
Le module de méta apprentissage 50 permet de modifier dynamiquement les paramètres du module de décision en fonction des données d’apprentissage acquises. Le procédé d’apprentissage comprend un ensemble de cycles d’interactions entre l’agent, son environnement, et les entités adverses. Durant chaque cycle, le système d’aide à la décision 10 peut recevoir des données d’apprentissage (phase d’observation), analyser ces données afin de déterminer le contexte et le gain de l’action précédemment choisie et détermine dynamiquement un nouveau choix d’action en utilisant son module de méta-apprentissage. Après la mise en oeuvre de l’action par l’entité compétitive ou à la fin de l’exécution de plusieurs actions, de nouvelles données d’apprentissage peuvent être collectées. De nouveaux cycles de décision peuvent alors être mis en œuvre par itération du procédé.
Le système d’aide à la décision 10 peut retourner le résultat au dispositif de contrôle 11 sous la forme d’une recommandation comprenant un identifiant de l’action sélectionnée.
Le dispositif de contrôle 11 peut alors appliquer ou non la recommandation en fonction de critères spécifiques au dispositif de contrôle, à l’environnement compétitif et/ou à des informations complémentaires collectées.
Dans un mode de réalisation, le dispositif de contrôle 11 peut faire partie intégrante de l’entité compétitive dans un système compétitif, par exemple dans un but simulatoire.
Dans un exemple de réalisation relatif au domaine de la stratégie militaire, le dispositif de contrôle 11 peut être un système de gestion de combat apte à contrôler les actions de dispositifs de combat opposants (entité compétitive opposante) vis-à-vis de dispositifs de combat adverses (entité compétitive attaquante) dont les actions peuvent nuire au succès des actions des dispositifs de combat opposants.
Le système et la méthode d’aide à la décision permettent ainsi à un dispositif de contrôle 11 contrôlant une entité compétitive « n » opposée à d’autres entités adverses « -n » de sélectionner l’action Ci à choisir (encore appelé « choix ») parmi un ensemble d’actions Cm, i = en utilisant l’algorithme d’apprentissage k = l,...,K tel que l’action sélectionnée par cet algorithme d’apprentissage k fournisse le gain maximal à un instant ou étape donnée t du cycle de décision. La méthode d’aide à la décision peut être répétée jusqu’à ce que t atteigne un seuil Ts prédéfini ou indéfiniment. Dans un mode de réalisation, le système d’aide à la décision 10 peut déterminer lui-même l’arrêt des étapes de mise à jour des méthodes d’apprentissage par observation d’une stabilisation (ou convergence) des probabilités des fonctions de probabilités élémentaires et de la méthode de méta-apprentissage. Par exemple, si ces probabilités n’évoluent pas entre deux étapes t et t + 1 au-delà d’une valeur seuil e.
Le gain d’une entité n utilisant une action Ci à une étape de décision t sera noté ci-après un_n(i, t) ou dans une notation simplifiée où i = 1, ...,m est l’index d’une action de l’entité compétitive. Le gain peut être défini par une fonction ou observé directement en tant que valeur (par exemple : le nombre d’unités combattantes encore actives). Il doit être noté que la fonction de gain modélise l'avantage de prendre une décision (i.e de faire un choix) par rapport aux décisions (ou choix) des entités adverses. Dans certains modes de réalisation, la fonction de gain peut être impactée par une certaine incertitude relative aux caractéristiques de l’environnement ou aux capteurs qui sont utilisés pour collecter des données sur l’environnement. Elle prend alors en compte une distribution de probabilités (théorie des jeux stochastiques). Dans d’autres modes de réalisations, la fonction de gain peut également couvrir plusieurs caractéristiques de la situation donnée et/ou des ressources de l’entité considérée (par exemple : le nombre d’unités combattantes encore actives + le terrain gagné/perdu + le coût de la manœuvre + etc.), on parle alors de fonction multi-critères. De telles fonctions peuvent prendre la forme d’intégrale de Choquet ou de modèle d’Utilité Additive Généralisé.
Les modes de réalisation de l’invention peuvent par exemple être mis en œuvre dans un système compétitif de type système de télécommunication incluant un ensemble d’émetteurs 20A et un ensemble de récepteurs 20B/20C comme représenté sur la figure 3.
En référence à la figure 3, un tel système comprend un ou plusieurs émetteurs 20A et un ou plusieurs récepteurs 20B/20C interconnectés dans un réseau de communication que peuvent former des entités compétitives, un émetteur 20A pouvant constituer une entité opposante et un ou plusieurs récepteurs 20B pouvant constituer les entités attaquantes.
Dans l’exemple de la figure 3, le système compétitif 10 comprend un récepteur attaquant 20B et un émetteur opposant 20A. L’émetteur 20A désire envoyer un message sur un canal de transmission public à destination d’un récepteur cible 20C. Le message échangé 30 peut être un message clair (i.e. non chiffré) ou un message crypté. Le but du récepteur attaquant 20 B est de tenter de bloquer le message.
Les émetteurs 20A et les récepteurs 20B et 20C peuvent être par exemple des équipements utilisateurs mobiles tels que des téléphones mobiles ou des téléphones intelligents, dans un réseau de communication mobile.
Dans une variante de réalisation, le système compétitif peut inclure des émetteurs 20A et des récepteurs 20B/20C de type clients/serveurs échangeant des messages http dans un réseau Internet selon le protocole Internet, l’entité 20B tentant de bloquer les messages émis par l’entité 20A à destination d’un dispositif destinataire 20C (ordinateur, téléphone intelligent, tablette informatique, etc.).
Les entités adverses 20B peuvent tenter de nuire à l’acheminement du message émis par un émetteur 20A au moyen de nombreuses techniques telles que des techniques d’attaque : - par intrusion (exploitation des vulnérabilités du système pour exécuter des commandes non autorisées telle que l’exploitation des erreurs de configuration ou des bugs) ; - par action physique (destruction, altération ou changement physique d’un composant du réseau) ; - par usurpation d’identité (utilisation d’une fausse identité pour abuser un système ou un utilisateur) ; - par injection de code (Installation et exécution d’un module clandestin sur un système) ; - par écoute (Ecoute passive et clandestine sur le réseau pour récupérer des informations).
Bien entendu, l’invention n’est pas limitée à ce type de système compétitif et englobe tout type de système compétitif comprenant au moins deux entités compétitives adverses. Par ailleurs, l’environnement lui-même peut être considéré comme une entité compétitive adverse s’il est le seul à impacter les gains du système. En particulier, dans un contexte où il n’y a pas d’adversaire mais qui comporte des conditions d’environnement faisant varier les gains de l’entité, l’environnement peut être l’entité compétitive elle-même. Par exemple, dans un réseau, si l’entité considérée est configurée pour mettre en place des politiques de routage, le trafic des utilisateurs peut être considéré comme l’entité compétitive, les utilisateurs constituant un environnement dont l’objectif est de maximiser son débit dans le réseau. L’invention n’est pas non plus limitée aux exemples d’application cités dans la description ci-avant. Par exemple, le système d’aide à la décision de l’invention peut être utilisé dans un système de combat dans lequel les entités compétitives sont constituées de dispositifs militaires pour choisir une stratégie de tir, des manoeuvres de commandement, des fréquences radios, etc. Dans un autre exemple, le système d’aide à la décision de l’invention peut être utilisée dans un système de gestion de l’énergie comprenant des entités de production d’énergie et des entités de consommation d’énergie, le système d’aide à la décision 10 étant utilisable par une entité de production pour décider entre une action de stockage d’énergie ou de revente d’énergie à des entités consommatrices. Dans un autre exemple encore, le système d’aide à la décision de l’invention peut être utilisée dans un système de gestion des transports dans lequel l’entité considérée est configurée pour affecter des ressources (nombre de wagons ou bus, délais d’attente de feux, etc.) ou dans un système de gestion de la sécurité pour déterminer des stratégies de sécurité en simulant des intrusions d’assaillants.
La méthode et le système d’aide à la décision dans les modes de réalisation de l’invention permettent de contrôler les actions d’une entité compétitive en déterminant un choix d’action optimal pour une entité donnée en sélectionnant un algorithme d’apprentissage parmi un ensemble d’algorithmes d'apprentissage prédéfinis à chaque étape de décision.
La figure 4 représente une matrice de gains (encore appelée table de gains) correspondant à un exemple de système compétitif où une entité compétitive 20A est menacée par des attaques électroniques mises en œuvre par une ou plusieurs entités attaquantes 20B.
Dans un tel système compétitif, une entité opposante 20A peut « gagner » en envoyant des données sur un moyen de communication non bloqué ou « perdre » en envoyant le message dans un moyen de communication bloqué.
La table de la figure 4 correspond à un exemple où un seul moyen de communication (par exemple de type antenne) est utilisé avec l'application d’un coût c lorsque une entité attaquante bloque le moyen de communication. L’exemple de table de la figure 4 correspond à une seule entité opposante. L’entité opposante 20A peut choisir d’envoyer ou ne pas envoyer les données par divers moyens de communication (antennes, satellites). L’entité ou les entités opposantes 21B peuvent choisir de bloquer ou non un ou plusieurs de ces moyens de communication.
Les actions possibles de l’entité opposante 20A (« envoyer » ou « ne pas envoyer » le message) dans l’environnement compétitif sont indiquées dans la première colonne 40 tandis que les actions possibles de l’entité attaquante 20B (« bloquer », « ne pas bloquer » les moyens de communication) dans l’environnement compétitif sont indiquées dans la première ligne 40. Dans chaque entrée de la matrice 410 à 413, il est indiqué dans la partie de gauche (marqué par la référence A), le gain estimé pour l’entité opposante 20A tandis que dans la partie de droite (marqué par la référence B), il est indiqué le gain estimé pour l’entité attaquante 20B.
Dans exemple de la figure 4, l'Équilibre de Nash est représenté par un vecteur de probabilités {^,^} pour chaque entité compétitive.
Bien que non limitée à de telles applications, l’invention présente un intérêt particulier pour l’aide à la décision dans des contextes de décisions non-coopératives. En effet, dans de tels contextes, la fonction de gains prend en compte les gains perçus par les entités compétitives dites « amies ». Le dispositif de contrôle 11 peut alors avoir la capacité d’observer des données d’apprentissages des entités compétitives « amies » soit par des capteurs, soit par un module de communication à travers lequel les entités compétitives « amies » peuvent envoyer ces données.
La figure 5 est une vue schématique du système d’aide à la décision 10 comprenant un module de méta-apprentissage selon certain mode de réalisation.
Le système d’aide à la décision 10 est configuré pour déterminer un choix d’action à mettre en œuvre par une entité compétitive, par exemple une entité opposante 20A, dans un environnement compétitif, en utilisant un ensemble de méthodes d’apprentissage prédéfinies. Pour cela, le module de méta-apprentissage 50 détermine et utilise une méta-fonction d’apprentissage pour sélectionner une méthode d’apprentissage parmi les méthodes d’apprentissage prédéfinies 52 et utilise la méthode d’apprentissage sélectionnée pour déterminer une action à mettre en œuvre par l’entité compétitive (i.e. stratégie). Le système d’aide à la décision 10 comprend le module de méta-apprentissage 50 (encore appelé module d’apprentissage global) pour sélectionner une méthode d’apprentissage par apprentissage, parmi l’ensemble de K méthodes d’apprentissage 52.
Le module de méta-apprentissage 50 peut comprendre en outre: - Un générateur de modèle de jeu 51 configuré pour générer un modèle de jeu (encore appelé « situation stratégique ») en fonction du contexte d’utilisation considéré. En particulier, le modèle comprend un ensemble d’actions possibles de l’entité qui utilise le système 10 et la fonction de gain s’appliquant aux actions. Les gains peuvent être observés ou observés et calculés. La fonction de gain permet de calculer les gains qui sont a priori inconnus (par rapport à la situation donnée, c’est-à-dire les actions de l’entité compétitive considérée, celles des entités adversaires, ou d’autres informations sur l’état). La fonction de gain peut ou non être modélisée et est une entrée du système d’aide à la décision 10. Le modèle ainsi généré peut être utilisé sans la phase de mise à jour, pour recevoir ou déterminer les données d’apprentissage. - Une unité d’initialisation 53 pour initialiser les méthodes d’apprentissage de l’ensemble prédéfini 52 ; et -Une unité de sélection de méthode d’apprentissage 54 pour déterminer une méta-fonction d’apprentissage (encore appelée fonction d’apprentissage « globale ») et sélectionner une méthode d’apprentissage parmi les K méthodes d’apprentissage 52 en utilisant la méta-fonction d’apprentissage ; - Une unité de détermination d’action 55 pour déterminer un choix d’action à mettre en œuvre par une entité compétitive donnée à partir de la méthode d’apprentissage sélectionnée.
Tel qu’utilisé ici, les termes « contexte » ou « situation » désignent l’environnement applicatif dans lequel le système d'aide à la décision 10 est utilisé et dont dépend le dispositif de contrôle 11. Le contexte peut être par exemple un contexte militaire utilisant un dispositif de contrôle 11 mettant en œuvre une tenue de situation. Le contexte applicatif peut être un contexte télécom utilisant un dispositif de contrôle 11 de type dispositif de surveillance. Un dispositif associé au contexte qui peut être le dispositif de contrôle 11 lui-même ou un dispositif distinct est configuré pour collecter les données d’apprentissage (ou qu’on les lui demande d’ailleurs) une fois que l’action est choisie est exécutée et les fournir au système d’aide à la décision 10.
La méthode et le système d’aide à la décision selon certains modes de réalisation de l’invention peuvent être mis en œuvre soit : - dans une phase de décision pour déterminer une action (encore appelée ci-après « stratégie » ou « choix » ou « action stratégique ») à mettre en œuvre par une entité compétitive 20A pour obtenir un gain optimal par rapport aux entités adverses 20B; -dans une phase de mise à jour pour mettre à jour au moins une des méthodes d’apprentissage et la méta-fonction d’apprentissage à partir des données d’apprentissage déterminées à partir des paramètres de gain 56 obtenus ou estimés par simulation ou exécution d’action dans le contexte des entités compétitives.
La figure 6 est un organigramme général représentant les principales étapes de la méthode d’aide à la décision, selon certains modes de réalisation, pouvant être mis en œuvre dans un système compétitif comprenant un ensemble d’entités compétitives.
Chaque méthode d’apprentissage Mk de l’ensemble des méthodes d’apprentissage 52 correspond à une méthode d’apprentissage apte à « apprendre » quelles actions sont susceptibles d’apporter le meilleur gain au regard des choix d’actions des adversaires. Cette stratégie de détermination de meilleure réponse est connue pour converger vers un équilibre de Nash pur s’il existe. S’il n’en existe pas, les méthodes d’apprentissages peuvent être plus ou moins bien adaptées pour trouver un équilibre de Nash mixte ou le vecteur de probabilités maximisant les gains, l’invention convergeant in fine vers la mieux adaptée. A chaque méthode d’apprentissage est associée une fonction de probabilités élémentaire PEk qui associe une probabilité pik à chaque action Ci parmi m actions pouvant être mise en œuvre par une entité compétitive 20A donnée du système compétitif.
Les fonctions de probabilités élémentaires PEk peuvent être définies par une distribution de probabilité. La distribution de probabilités peut se présenter sous la forme d’un vecteur de probabilités dont chaque composante correspond à l’une des fonctions de probabilités élémentaires PEk. Dans un mode de réalisation, la distribution de probabilités de méta-apprentissage peut être déterminée à partir de données d’apprentissage, et être représentée par un vecteur de probabilités p(ü) = (Pi(t),...,pK(t)) tel que : - chaque composante pfc(t) du vecteur p(ü) correspond à l’une des fonctions de probabilités élémentaires calculée par une méthode d’apprentissage k = 1, -1 désigne l’étape de décision, et - K désigne le nombre de méthodes d’apprentissage.
Dans ce mode de réalisation, chaque fonction de probabilités élémentaire PEk correspondant à une méthode d’apprentissage donnée Mk, est définie par la k-ième composante pfe(t)du vecteur de probabilités p(t) et dépend donc de t: PEk(t) =pk(t).
Les fonctions de probabilités élémentaires et la méta-fonction de probabilités peuvent notamment obéir à des équations (encore appelées ci-après équations de mise à jour) appliquées à chaque étape t de mise en œuvre du procédé.
Chaque composante pk(t) associe ainsi un paramètre de probabilité à chaque action Ci pouvant être mise en oeuvre par une entité compétitive (les indices i = l, ...,m correspondent à des actions du système ou seulement les actions que peut mettre en oeuvre de l’entité opposante 20A):
Pki0 = (PifcCO. -.PifeCO, ···<Pmfe(O)
Les paramètres de probabilité peuvent être par exemple calculés en utilisant des poids. La suite de la description sera faite en référence à des paramètres de probabilité de type poids, à titre d’exemple non limitatif.
Une étape préalable 600 peut être mise en oeuvre pour charger un ensemble d’algorithmes d’apprentissage (1, ...,K} à utiliser par le procédé d’aide à la décision. Dans un mode de réalisation, un ou plusieurs algorithmes d’apprentissage peuvent être ajoutés ou supprimés à chaud, à tout moment du procédé de décision. A l’étape 601, une condition de déclenchement relative à une entité compétitive donnée 20A dans un système compétitif est détectée. Par exemple, la condition de déclenchement peut être détectée en réponse à la réception d’une requête émise par un dispositif de contrôle 11 contrôlant l’entité compétitive, la requête comprenant l’identification de l’entité compétitive et des données sur le contexte de l’entité et sur les entités adverses 20B. La requête peut être émise par le dispositif de contrôle 11 pour obtenir une recommandation d’action Ci (appelée ci-après « choix stratégique ») à mettre en oeuvre par l’entité compétitive 20A vis-à-vis des entités adverses 20B du système compétitif 101 telle que l’action Ci optimiser le gain de l’entité opposante 20A vis-à-vis de ces entités adverses (encore appelée entités attaquantes). L’action Ci recommandée est associée à un gain attendu qui peut dépendre de un ou plusieurs choix adverses si le système comprend plusieurs entités opposantes 20B.
Si la condition de déclenchement est détectée à l’étape 601, des fonctions de probabilités élémentaires {PE1,...PEK} sont initialisées (604) ou mises à jour (605 et 606) en correspondance avec chaque algorithme d’apprentissage k (ME1.....MEK). Chaque fonction de probabilités élémentaire PEk associe un paramètre de probabilité à chaque action possible de l’entité compétitive considérée 20A, ces paramètres de probabilité correspondant à une distribution de probabilités sur l’ensemble des actions possibles de l’entité compétitive 20A. Dans un mode de réalisation chaque paramètre de probabilité peut être un poids ou score. En particulier, chaque fonction de probabilités peut être définie par un vecteur de probabilités comprenant un ensemble de composantes, chaque composante du vecteur de probabilités représentant le paramètre de probabilité associé à une des actions Ci.
La suite de la description sera faite en référence à un paramètre de probabilité de type poids à titre d'exemple non limitatif.
Par exemple, à chaque étape de décision t : la fonction de probabilités élémentaire PE1, associe les poids
Pi (t) = (wuCt), -,wlm(t)) aux actions Cx, possibles (choix stratégiques) de l’entité 20A ; - la fonction de probabilités élémentaire PE2 associe les poids p2 (t) = (w21(t), -,w2m(t)) aux actions Cx,..., Cm possibles de l’entité 20A ; la fonction de probabilités élémentaire PEK associe les poids pK (t) = (wK1(t), ...,wKm(t)) aux actions possibles de l’entité 20A ; A la première étape de décision du procédé d’aide à la décision, chaque fonction de probabilités élémentaires PEk est initialisée (604). Dans un mode de réalisation, les fonctions de probabilités élémentaires peuvent être initialisées à la même valeur (i.e. les poids wkl(t), ...,wkm(t) sont les mêmes pour toutes les fonctions PEk), selon une distribution de probabilités uniforme. Par ailleurs, l’étape 604 peut comprendre l’initialisation de la méta-fonction de probabilités (encore appelée « fonction globale de probabilités ») qui associe un poids (ou plus généralement un paramètre de probabilités) à chacune des fonctions de probabilités élémentaires.
Sinon les fonctions de probabilités élémentaires PEk peuvent être mises à jour en fonction de données d’apprentissage ou de changement sur l’ensemble des algorithmes d’apprentissage (ajout ou suppression), à l’étape 605 et 606. A l’étape 607, la fonction de probabilités globale (« méta-fonction de probabilités ») MF, notée p(t), est mise à jour en utilisant le gain obtenu suite à la mise en oeuvre d’une action choisie. La méta-fonction de probabilités associe un poids wk(t) à chacune des K fonctions de probabilités élémentaires PEk, notée pk (t) p(t) = (Wj.it), ...,wk(t),...,wK(t)).
Les poids wik(t) et wk(t) sont calculés à chaque étape de décision t et peuvent par exemple être calculés à partir d’équations utilisant les gains obtenus en appliquant la fonction de gain sur les données d’apprentissage qui peuvent être fournies par le système compétitif 101 via le système de contrôle 11. A l’étape 609, une des fonctions de probabilités élémentaires PEk est sélectionnée en utilisant la méta-fonction de probabilités MF. Pour ce faire, le système procède à un tirage aléatoire d’une valeur comprise entre 0 et 1 et compare cette valeur aux probabilités de la fonction de probabilités ME. Pour chaque fonction élémentaire PEj, les probabilités de la fonction ME sont additionnées. Si à la fonction PEj la somme dépasse la valeur tirée aléatoirement, alors la fonction de probabilités élémentaires choisie est la fonction PEj- A l’étape 610, la fonction de probabilités élémentaire sélectionnée PEk est utilisée pour déterminer le choix stratégique Ci (action) de l’entité compétitive 20A par rapport aux entités opposantes 20B. La fonction de probabilités élémentaires sélectionnée PEk peut choisir l’action Ci en utilisant une distribution de probabilités (par exemple, si les poids sont des probabilités, un tirage aléatoire peut être effectué et le résultat du tirage aléatoire peut être comparé à la distribution de probabilité). Il convient de noter que les poids peuvent se ramener à des probabilités en divisant chaque poids par la somme des poids du vecteur de probabilités pfe(t). A l’étape 611, une recommandation peut être émise vers le dispositif de contrôle 11 (ou directement vers l’entité compétitive 20A si le dispositif de contrôle fait partie intégrante de l’entité), la recommandation pouvant comprendre un identifiant du choix de l’action Ci déterminé à l’étape 610. Le dispositif de contrôle 11 peut déclencher l’application de l’action Ci à la situation (ou contexte) de l’entité compétitive opposante 20A qu’il contrôle, ou prendre une autre décision de contrôle en fonction d’un ensemble d’informations sur l’environnement et/ou le contexte de l’entité 20A.
Le dispositif de contrôle 11 peut déclencher l’exécution du choix stratégique sélectionné Ci à la situation réelle (exécution réelle) ou simulée (exécution simulée). Le dispositif de contrôle 11 peut également être configuré pour estimer ou mesurer le gain obtenu et d’autres données auxiliaires (les données de gain et les données auxiliaires formant des données d’apprentissage) en résultat de l’exécution de l’action. En particulier, le « gain » obtenu peut représenter le rapport du résultat observé sur le résultat attendu, une mesure par capteur, etc. Il peut être calculé à partir d’une fonction multicritère impliquant des données relatives à plusieurs métriques observées ainsi que des valeurs attendues sur ces métriques. Il peut également faire intervenir des méthodes permettant de prendre en compte une incertitude sur l’observation (par exemple le taux d’erreur).
Le dispositif de contrôle 11 peut alors transmettre les données d’apprentissage incluant des données sur le gain obtenu au système d’aide à la décision 10 (en mode rétroaction). Il doit être noté que dans certains modes de réalisation, le dispositif de contrôle 11 peut faire partie intégrante du système d’aide à la décision 10.
Plus précisément, dans certains modes de réalisation, le procédé d’aide à la décision peut comprendre en outre une étape de mise à jour d’au moins une fonction de probabilités élémentaire, à l’étape 607, en réponse à la réception de données d’apprentissage collectées en résultat de l'exécution du choix stratégique Ci dans la situation de l’entité compétitive donnée 20A (605) et après avoir extrait de ces données les métriques participant au calcul de la fonction de gain (606). L’étape de mise à jour 607 comprend la mise à jour de la fonction de probabilités élémentaire sélectionnée, et peut comprendre également la mise à jour d’une ou plusieurs autres fonctions de probabilités élémentaires. La mise à jour des fonctions de probabilités élémentaires peut être également déclenchée en réponse à un ajout ou une suppression de méthodes d’apprentissage. Les données d’apprentissage collectées par le dispositif de contrôle 11 (605) peuvent être ainsi utilisées dans la fonction de gain qui donne le gain et/ou dans l’étape de mise à jour des fonctions de probabilités élémentaires.
En particulier, l’étape de mise à jour 607 peut comprendre la mise à jour des fonctions de probabilités élémentaire PEk à partir des données d’apprentissage (gain obtenu notamment) et en utilisant une fonction de mise à jour qui peut dépendre de la méthode d’apprentissage associée à chaque fonction de probabilités élémentaire à mettre à jour. La fonction de mise à jour peut être configurée pour mettre à jour les composantes du vecteur de probabilités ou les valeurs des paramètres de probabilité associés aux actions (poids par exemple).
Dans un mode de réalisation, une même fonction de mise à jour peut être définie pour toutes les fonctions de probabilités élémentaires de l’ensemble 52. En variante, une fonction de mise à jour peut être définie pour une seule fonction de probabilité élémentaire ou pour un sous-groupe de fonctions de probabilités élémentaires de l’ensemble 52. Le module de méta-apprentissage 50 représentée sur la figure 5 peut notamment comprendre un proxy logique 59 (représenté schématiquement) apte à mettre en œuvre la fonction de mise à jour définie pour chaque fonction de probabilités élémentaire.
Dans un mode de réalisation dit « de simulation » de la situation, les étapes 601 à 611 peuvent être itérées plusieurs fois en utilisant une matrice de gain associée à la situation complète (ou complétée par interpolation de certaines valeurs) afin d’entraîner la méta-fonction d’apprentissage et accélérer la convergence vers des probabilités optimales (le module de méta-apprentissage 50 apprend sur les méthodes d’apprentissage).
Dans un autre mode de réalisation dit « en ligne », une seule itération du procédé d’aide à la décision de la figure 6 peut être mise en œuvre pour chaque étape de décision t, en utilisant les données d’apprentissage (notamment mesures du gain obtenu fournies par un ou plusieurs capteurs). De tels capteurs peuvent aussi être utilisés pour fournir des informations sur l’action réellement exécutée. La nature et le positionnement des capteurs peuvent dépendre du contexte applicatif et/ou de l’environnement compétitif 101. Dans un contexte militaire, les capteurs peuvent par exemple comprendre des satellites. Dans un contexte de télécommunication, ils peuvent par exemple comprendre une sonde configurée pour dupliquer les paquets à examiner. En variante, les données d’apprentissage (notamment sur les mesures de gains et les actions effectuées par les entités en compétition) peuvent être absentes ou incertaines. Dans ce cas, l’efficacité de certaines méthodes d’apprentissages peut être limitée (par exemple : la méthode dite du joueur « fictif » n’est pas utilisable si les actions des entités compétitives ne sont pas observables). C’est un avantage de l’invention que de pouvoir s’adapter à ce type de contexte, précisément en utilisant le procédé de méta-apprentissage.
Le procédé et le module de méta-apprentissage permettent ainsi de déterminer la méthode d’apprentissage optimale pour une entité compétitive donnée parmi l’ensemble des K méthodes d’apprentissage (52) à partir des fonctions de gains des entités compétitives, les fonctions de gains des entités opposantes pouvant être inconnus ou non (par exemple, lorsque le système d’aide à la décision 10 ne dispose pas de la matrice de gains).
En variante, au lieu d’effectuer les étapes de mises à jour (605, 606, 607 et 608), l’exécution de l’étape d’initialisation 604 du procédé de la figure 6 (condition 603) peut être déclenchée en réponse à la vérification d’une condition relative à l'étape de décision t (t<T). Ainsi, s’il est déterminé que t est inférieur au nombre d’actions possibles T (ou à T ajouté au nombre KxM de méthodes d’apprentissage et d’actions), l’étape 604 est exécutée. En variante, une condition pour ignorer ces mêmes étapes du procédé peut porter sur l’évolution des poids des fonctions de probabilités élémentaires PEk ou de la fonction de méta-apprentissage MF. Si ces poids sont stationnaires au regard d’un seuil e (V/c = 1, |wfc(t) - wfe(t - 1)| < e, paramètre d’utilisation du procédé.
Si la condition sur t est vérifiée, les étapes 609 à 611 du procédé d’aide à la décision de la figure 6 sont exécutées pour sélectionner une méthode d’apprentissage à appliquer, en fonction des données d’initialisation de l’étape 604, telles que par exemple des données de distribution uniforme (les fonctions de probabilités élémentaires sont alors uniformes). A l’étape 607, des valeurs de critères ou métriques pertinentes pour la fonction de gain sont extraites des données d’apprentissage. La fonction de gain peut être par exemple une fonction mathématique multicritères de type Intégrale de Choquet, de type modèle d’Utilité Additive Généralisé ou de type réseau de neurones. En variante, la fonction de gain peut être calculée en utilisant un modèle probabiliste de type réseau bayésien si certains critères sont incertains. Par exemple, lorsque les données d’apprentissage sont collectées à partir de divers capteurs, les capteurs peuvent être choisis pour avoir un niveau de précision non déterministe (taux d'erreur, etc.) et/ou ne pas avoir pu obtenir l’information.
Dans une forme de réalisation, le vecteur de probabilités p(t) ainsi que chaque vecteur de probabilités élémentaire pk(t) (correspondant à une fonction de probabilités élémentaire PEk correspondant à une méthode d’apprentissage donnée Mk) peuvent être mis à jour respectivement aux étapes 607 et 608 en utilisant une fonction de mise à jour pk(t) dépendant de poids élémentaires wk(t), ou une fonction de mise à jour pour les composantes pik(t) dépendant de poids élémentaires wik(t), les poids élémentaires étant fonction des gains obtenus (56). En particulier, à l’étape 606, la fonction de mise à jour des composantes pik(t) de chaque fonction de probabilités élémentaire k associée à une action i peut dépendre du rapport entre le poids élémentaire wik(t) à l’étape t et la somme wk(t) des poids élémentaires de la fonction de probabilité élémentaire k à l’étape t, par exemple selon l’équation (1) :
[1]
Il est rappelé que les indices i = 1, ...,m correspondent à des actions du système ou aux actions que peut mettre en oeuvre l’entité opposante.
Pour faciliter la compréhension de certains modes de réalisation du procédé de la figure 6, les définitions suivantes sont fournies: - la variable pk représentant la probabilité que la méta-fonction propose la fonction élémentaire k à l’étape 609.
-la variable pilc représentant la probabilité que la fonction élémentaire k propose l’action i à l’étape 610 ; -la variable wilc représentant le poids de la fonction élémentaire k correspondant à l’action i ; - la variable wk représentant le poids total associé à chaque fonction de probabilité élémentaire k (somme des wik) ; et -la variable w représentant la somme des variables wk.
Il doit être noté que les étapes 601 à 611 peuvent être ré-itérées T fois. A chaque exécution ou étape de décision t = 1,...,7 du procédé de l’invention, les variables ci-dessus sont alors notées en associant l’expression « (t) ».
Dans un mode de réalisation, la fonction de mise à jour des composantes de la fonction de probabilités globale, à l’étape 608, peut dépendre du rapport les poids élémentaires wk(t) et les poids élémentaires w(t), par exemple selon l’équation (2) :
[2]
En variante, chaque vecteur de probabilités pik(t) peut être mis à jour à l’étape 607 de manière à garantir une certaine exploration (essai de nouvelles actions ou rejeu de certaines actions) comme suit :
[3],
De même, chaque vecteur de probabilités p(t) ou pk(t) peut être mis à jour à l’étape 608 de manière à garantir une certaine exploration (essai de nouvelles actions ou rejeu de certaines actions) comme suit :
[4], le paramètre 0 < yt < 1 pouvant être décroissant dans le temps pour stabiliser l’exploration ou constant.
Dans un autre mode de réalisation, la distribution de probabilités peut être mise à jour aux étapes 607 et/ou 608, directement à partir de paramètres de gains mesurant le regret d’avoir choisi une méthode d’apprentissage à une étape de décision donnée.
En notant
avec τ < t, le paramètre de regret représentant le regret de choisir la méthode d’apprentissage j au lieu de k, avec uT désignant le gain reçu, chaque composante wjk du vecteur de probabilités pk(t) peut être alors être mise à jour à l’étape 607 selon la fonction de mise à jour suivante, où Ct désigne l’action choisie par le système à l’étape de décision t :
[5]
Similairement, chaque composante wfcdu vecteur global p(t) peut être mise à jour à l’étape 608 selon la fonction de mise à jour suivante, où Ct désigne l’action choisie par le système à l'étape de décision t :
[6]
Dans un autre mode de réalisation encore, chaque composante wik du vecteur élémentaire pk(t) peut être mise à jour, à l’étape 607, directement à partir du gain obtenu selon l’équation [3] avec b < 0.5 et b pouvant décroître dans le temps selon la fonction de mise à jour suivante:
[7]
Similairement, chaque composante wkdu vecteur global p(t) peut être mise à jour, à l’étape 608, directement à partir du gain obtenu selon l’équation [3] avec b < 0.5 et b pouvant décroître dans le temps selon la fonction de mise à jour suivante:
[8]
Dans l’équation [8], u(fc,t) désigne le gain obtenu en ayant choisi la fonction de probabilités élémentaires PEk. Il est donc égal à celui obtenu en ayant choisi l’action i de sorte que : u(k, t) = u(i, t) si PEk était choisi à l’étape t.
En complément, l’étape 607 de mise à jour des fonctions probabilités élémentaires (respectivement de la méta-fonction à l’étape 608) selon les équations [1] (respectivement [2]) et [3] (respectivement [4]) peut comprendre la mise à jour des poids élémentaires
wik(t +1) (respectivement wk(t +1 ) en utilisant les gains obtenus ou la formule de l’équation [9] (respectivement [10] pour la mise à jour du vecteur de probabilité global à l’étape 608) : V/c = 1, ...,K,i = 1, ...,m,wik(t + 1) = wifc(t)(l [9] V k = 1,K, wk(t + 1) = wk(t)(l - η(t))'fc(t) [10]
Dans l’équation [9], les paramètres η e [0, ^] et Z;(t) désignent la perte encourue en choisissant l’action Ci à l'étape de décision t. Dans l’équation [10], le paramètre lk(t) désigne la perte encourue en utilisant la méthode d’apprentissage k à l'étape de décision t
Dans une autre variante, les poids des vecteurs de probabilités élémentaires à l’étape 607 de mise à jour des fonctions de probabilités élémentaires (respectivement à l’étape 608 de mise à jour de la méta-fonction) en utilisant les équations [1] (respectivement [2]) et [3] (respectivement [4]) peuvent être également mis à jour en appliquant une fonction de distribution de Boltzmann (ou de Gibbs) aux gains obtenus selon les équations :
[11] pour la mise à jour de l’étape 607 ;
[12] pour la mise à jour de l’étape 608.
Il est à noter que les équations [7] et [8] sont particulièrement adaptées lorsque la distribution de gain dans le temps n’est pas connue. En particulier, si une variation importante du gain est observée pour les mêmes actions données choisies par une ou plusieurs méthodes d’apprentissage.
Dans un autre mode de réalisation, les poids peuvent prendre en compte l'état de l'environnement s eS défini par le système d’aide à la décision 10. Dans ce mode de réalisation, les poids des fonctions de probabilités élémentaires (607) (respectivement de la méta-fonction (608)) tels que définis par les équations [1] (respectivement [2]) et [3] (respectivement [4]) peuvent être également mis à jour en fonction de : -L’équation [13] suivante pour la mise à jour de l’étape 607 :
-L’équation [14] suivante pour la mise à jour de l’étape 608 :
Dans les équations [13] et [14], le paramètre a désigne le taux d'exploration qui peut également diminuer dans le temps, et y un taux d’actualisation (il permet de pondérer l'importance des gains futurs).
Dans une forme de réalisation, les données d’apprentissage collectées par le système d’aide à la décision 10 peuvent être des données de gains moyens. Les fonctions de probabilités élémentaires PEk peuvent être alors définies en utilisant comme paramètre de probabilité associé à chaque action Ci un score.
Par exemple, pour chaque fonction de probabilités élémentaires PEk correspondant à une méthode d’apprentissage donnée, le score associé à une action Ci peut être déterminé en fonction de la moyenne des gains obtenus pour cette action en réponse à l’exécution de la méthode d’apprentissage PEk au moins une fois.
Pour augmenter l’exploration, un aléa peut être utilisé afin de choisir une distribution de probabilités uniforme sur les actions.
En variante, le score associé à chaque action Ci peut être déterminé à partir de la moyenne des gains reçus en utilisant la méthode d’apprentissage k correspondant à la fonction de probabilités élémentaires PEk et en prenant en compte un facteur d'exploration. Par exemple, le score peut être calculé selon l’équation suivante :
où Nt désigne le nombre de fois que l’action Ci a été choisie et ü, est la moyenne des gains obtenus en choisissant l’action Ci.
La méta-fonction d’apprentissage peut être utilisée pour effectuer un tirage, ce qui permet de sélectionner une fonction de probabilités élémentaire.
Dans une autre forme de réalisation, le système d’aide à la décision 10 est configuré pour collecter des informations sur les actions des entités adverses 20B et recevoir une information relative au nombre de fois où chaque action Ci a été choisie pour chaque action Ci. Les données d’apprentissage peuvent alors comprendre des données sur les actions des entités adverses 20B. Dans une telle forme de réalisation, le système d’aide à la décision 10 peut déterminer des distributions de probabilités relatives aux actions choisies par les entités adverses et permettant de déterminer les actions probables des entités adverses. Chaque fonction de probabilités élémentaires PEk peut alors associer un paramètre de probabilité non seulement aux actions possibles de l’entité opposante 10A mais aussi aux actions possibles des entités adverses 20B. L’action choisie à l'étape
610 correspond par conséquent à l'action qui maximise le gain de l’entité compétitive 20A en faisant face à la stratégie des entités adverses.
La figure 7 montre un exemple d’environnement dans lequel le système d’aide à la décision 10 peut être mis en œuvre selon un mode de réalisation. Le système compétitif 101 comprend des entités compétitives de type ordinateur connectées via un réseau 102. L’entité 20A (entité opposante) cherche à émettre un message (par exemple message http) vers un ordinateur destinataire 20C via un réseau Internet 102. L’entité compétitive 20B essaie de bloquer l’envoi du message. Le système d’aide à la décision 10 est similaire à celui de la figure 1. Toutefois, dans le mode de réalisation de la figure 7, le système d'aide à la décision 10 comprend en outre une unité de surveillance de contexte 57 configurée pour surveiller les changements de contexte. L’unité de surveillance 57 peut comprendre un détecteur d’actions 570 pour détecter les nouvelles actions d’une entité compétitive et un détecteur de divergence de gain 571 pour détecter une divergence de gain d’une entité compétitive par rapport à un gain cible (par exemple moyenne de gain). Le système d’aide à la décision 10 peut également comprendre une unité de mise à jour des méthodes d’apprentissage 58 configurée pour mettre à jour une ou plusieurs méthodes d’apprentissage parmi les K méthodes d’apprentissage en fonction d’un changement détecté par l’unité de surveillance de contexte 57, telle que par exemple l’apparition de nouvelles actions détectées par le détecteur d’action 570 ou la détection d’une divergence forte de gains détectée par le détecteur de gain 571. Le détecteur de gain 571 peut appliquer un ensemble de tests statistiques relatifs aux gains tels que par exemple un test de limite sur la variance de gain ou un test tel que l'ARIMA (acronyme pour « Autoregressive Integrated Moving Average » signifiant « Moyenne de Déplacement Intégré Autoregréssif ») ou le test de Page-Kinkley. En réponse à de tels tests, l’unité de mise à jour des méthodes d’apprentissage peut déclencher une réinitialisation des données d’apprentissage. Cette réinitialisation peut être mise en œuvre sous la forme d’un redémarrage, par exemple en mettant à 1 les poids élémentaires associés aux fonctions élémentaires PEk ou en modifiant les poids selon une distribution de probabilités uniforme. En variante, la réinitialisation peut être mise en œuvre en modifiant les fonctions de probabilités élémentaires PEk correspondant aux fonctions d’apprentissage Mk de telle sorte qu’elles associent un paramètre de probabilité (e.g. poids) à chaque nouvelle action détectée, en initialisant le paramètre de probabilité à une valeur initiale. Les valeurs initiales peuvent être déterminées par tirage en fonction de la méta-fonction de probabilité. L’invention permet ainsi de sélectionner un algorithme d’apprentissage au moyen du dispositif de méta apprentissage 10, quel que soit le nombre et la nature des algorithmes d’apprentissage 52. L’inventeur a comparé les performances du système et procédé d’aide à la décision de l’invention avec l’algorithme classique de jeu de Brown, comme illustré par la matrice de gains de la figure 8. La matrice de gains correspond au même exemple de réalisation que la figure 3 avec c=0.3.
Un premier ensemble d'expériences ont été menées 50 fois pour 100 étapes de décision dans un système compétitif comprenant deux entités 1 et 2 utilisant l'algorithme du Brown. Les deux entités compétitives ont été d’abord observées en supposant que chaque entité peut avoir des informations sur les choix de l’autre entité compétitive et que la matrice de gains de l'autre entité compétitive est connue.
La figure 9 représente un exemple d’évolution des gains des entités 1 et 2 obtenus dans le temps (moyenne sur 50 exécutions) lorsque les deux entités compétitives 1 et 2 utilisent l'algorithme de Brown : sur le long terme, l’entité 2 obtient des gains supérieurs à ceux de l’entité 1.
La figure 10 représente un exemple d’évolution de la valeur de probabilité associée au choix de chaque action A ou B pour chaque entité 1 ou 2 pendant l’expérience : -une première courbe C1 représente l’évolution de la valeur de probabilité associée au choix de chaque action A par l’entité 1 pendant l’expérience ; -une deuxième courbe C2 représente l’évolution de la valeur de probabilité associée au choix de chaque action B par l’entité 1 pendant l’expérience ; -une troisième courbe C3 représente l’évolution de la valeur de probabilité associée au choix de chaque action A par l’entité 2 pendant l’expérience ; et -une quatrième courbe C4 représente l’évolution de la valeur de probabilité associée au choix de chaque action B par l’entité 2 pendant l’expérience.
La figure 10 montre que chaque entité suit une stratégie mixte associant les valeurs de probabilité
aux actions {A, B}.
Les figures 9 et 10 illustrent ainsi que l'algorithme de Brown converge vers l'Équilibre de Nash mixte.
Le procédé d’aide à ia décision a été mis en oeuvre pour l’exemple de contexte compétitif illustré par les tables de la figure 2 en faisant varier la méthode d’apprentissage pour chaque entité compétitive. Il a été observé que la méthode d’apprentissage la plus performante pour cet exemple est la méthode d’apprentissage correspondant à l’équation [5]. Pour évaluer l’efficacité du procédé de décision de l’invention basé sur l’étape de détermination de la méta-fonction d’apprentissage, l’invention a été comparée avec l’algorithme de Brown et un algorithme d’apprentissage classique selon l’équation [5]. Il doit être noté également que d’autres expériences ont montré que l’algorithme d’apprentissage selon l’équation [5] est plus performant contre l’algorithme de Brown. Il est rappelé que comme l'algorithme de Brown, la formule [5] suppose que l'environnement ait un impact sur le contexte compétitif. L'environnement peut être modélisé de différentes manières par exemple en utilisant la stratégie de l’entité adverse.
La figure 1 représente de manière schématique un exemple d’architecture implémentant un système d’aide à la décision 10 selon certains modes de réalisation.
Une méthode d’apprentissage peut être mise en oeuvre classiquement selon les étapes de l’organigramme de la figure 2, en utilisant un unique procédé d’apprentissage pendant tout le cycle de décision.
Les modes de réalisation de l’invention peuvent par exemple être mis en oeuvre dans un système compétitif de type système de télécommunication incluant un ensemble d’émetteurs 20A et un ensemble de récepteurs 20B/20C comme représenté sur la figure 3.
La figure 4 représente une matrice de gains (encore appelée table de gains) correspondant à un exemple de système compétitif où une entité compétitive 20A est menacée par des attaques électroniques mises en oeuvre par une ou plusieurs entités attaquantes 20B.
La figure 5 est une vue schématique du système d’aide à la décision 10 comprenant un module de méta-apprentissage selon certain mode de réalisation.
La figure 6 est un organigramme général représentant les principales étapes de la méthode d’aide à la décision, selon certains modes de réalisation, pouvant être mis en œuvre dans un système compétitif comprenant un ensemble d’entités compétitives.
La figure 7 montre un exemple d’environnement dans lequel le système d’aide à la décision 10 peut être mis en oeuvre selon un mode de réalisation. Le système compétitif 101 comprend des entités compétitives de type ordinateur connectées via un réseau 102. L’inventeur a comparé les performances du système et procédé d’aide à la décision de l’invention avec l’algorithme classique de jeu de Brown, comme illustré par la matrice de gains de la figure 8. La matrice de gains correspond au même exemple de réalisation que la figure 3.
La figure 9 représente un exemple d’évolution des gains des entités 1 et 2 obtenus dans le temps (moyenne sur 50 exécutions) lorsque les deux entités compétitives 1 et 2 utilisent l'algorithme de Brown : sur le long terme, l’entité 2 obtient des gains supérieurs à ceux de l’entité 1.
La figure 10 représente un exemple d’évolution de la valeur de probabilité associée au choix de chaque action A ou B pour chaque entité 1 ou 2 pendant l’expérience.
La table de la figure 11 montre le gain moyen que chaque entité compétitive a obtenu après 100 parties (les résultats pour l’entité 1 sont indiqués dans les colonnes de gauche 900 et ceux obtenus pour l'entité 2 sont indiquées dans les colonnes de droite 902). Dans cet exemple, il peut être observé que la meilleure stratégie pour entité compétitive 1 est de choisir une méthode d’apprentissage basée sur la formule EQ.5 tandis que celle de l’entité compétitive 2 est d’utiliser le procédé d’aide à la décision selon l’invention qui utilise une méta-fonction d’apprentissage.
La table 12 montre les résultats obtenus avec une méthode d’apprentissage plus « aveugle», basée sur l’équation 4. Dans ce cas, l’équilibre est atteint lorsque les deux entités utilisent le procédé d’aide à la décision selon l’invention (dans cet exemple l’équilibre est l’optimum social). L’homme du métier comprendra que le procédé d’aide à la décision selon les modes de réalisation peut être mis en œuvre de diverses manières par matériel (« hardware »), logiciel, ou une combinaison de matériel et de logiciels, notamment sous la forme de code de programme pouvant être distribué sous la forme d'un produit de programme, sous diverses formes. En particulier, le code de programme peut être distribué à l'aide de supports lisibles par ordinateur, qui peuvent inclure des supports de stockage lisibles par ordinateur et des supports de communication. Les procédés décrits dans la présente description peuvent être notamment implémentés sous la forme d’instructions de programme d’ordinateur exécutables par un ou plusieurs processeurs dans un dispositif informatique d’ordinateur. Ces instructions de programme d’ordinateur peuvent également être stockées dans un support lisible par ordinateur.
En particulier, comme illustré sur la figure 13, le système d’aide à la décision 10 et/ou le dispositif de contrôle 11 et/ou chaque entité compétitive 20A ou 20B peuvent être implémentés sous la forme d’un ou plusieurs dispositifs ou systèmes informatiques 70 (appelé ci-après ordinateur). L'ordinateur 70 peut comporter un processeur 71, une mémoire 72, un dispositif de mémoire de stockage de masse 75, une interface d'entrée/sortie (I/O) 77 (par exemple, écran vidéo, écran tactile, dispositifs de saisie et des commandes tels qu'un clavier alphanumérique, un dispositif de pointage, des pavés numériques, des boutons poussoirs, des boutons de commande, des microphones, etc.). L'ordinateur 70 peut également être couplé de manière fonctionnelle à une ou plusieurs ressources externes via un réseau 76 et/ou une interface I/O 77. Des ressources externes 79 peuvent inclure, mais sans y être limitées, des serveurs, des bases de données, des dispositifs de stockage de masse, des dispositifs périphériques, des services de réseau à base de nuage, ou toute autre ressource informatique appropriée qui peut être utilisée par l'ordinateur 70.
Le processeur 71 peut inclure un ou plusieurs dispositifs processeurs tels que des microprocesseurs, des microcontrôleurs, des unités centrales de traitement, ou tout autre dispositif qui manipule des signaux (analogiques ou numériques) en fonction d'instructions d'opérations qui sont stockées dans la mémoire 72. Le processeur 71 peut fonctionner sous la commande d'un système d’exploitation 73 qui réside dans la mémoire 72. Le système d'exploitation 73 peut gérer des ressources informatiques telles qu'un code de programme informatique intégré sous la forme d'une ou plusieurs applications logicielles 74 résidant dans la mémoire 72. L'invention n'est pas limitée aux modes de réalisation décrits ci-avant à titre d’exemple non limitatif. Elle englobe toutes les variantes de réalisation qui pourront être envisagées par l'homme du métier. En particulier, l’invention n’est pas limitée à un système compétitif particulier et inclut tout système compétitif incluant au moins deux entités compétitives adverses. Par ailleurs, l’ensemble 52 de méthodes (ou algorithmes) d’apprentissage peut inclure tout type de méthode d’apprentissage sans limitation. Cet ensemble n’est pas non plus limité par un nombre particulier de méthodes d’apprentissage. L’invention n’est pas non plus limitée à des fonctions particulières de mise à jour des méthodes d’apprentissage. Ces fonctions de mises à jour peuvent différer pour chaque méthode d’apprentissage. Elles peuvent également changer pour une méthode d’apprentissage donnée entre chaque itération du procédé d’aide à la décision.

Claims (21)

  1. Revendications
    1. Procédé d’aide à la décision pour déterminer une action à mettre en oeuvre par une entité compétitive donnée dans un système compétitif comprenant ladite entité compétitive et au moins une autre entité compétitive adverse, l’entité compétitive pouvant mettre en oeuvre une action parmi un ensemble d’actions prédéfinies, chaque action fournissant un gain attendu différent en fonction des actions mises en œuvre par lesdites entités compétitives adverses, chaque entité étant en outre apte à mettre en œuvre une méthode d’apprentissage parmi un ensemble de méthodes d’apprentissage prédéfinies pour apprendre les actions des entités adverses, - associer (604) à chaque méthode d’apprentissage une fonction de probabilités élémentaire affectant un paramètre de probabilité à chaque action possible de l’entité compétitive donnée ; - déterminer une fonction de probabilités globale (608) affectant un paramètre de probabilité à chaque fonction de probabilités élémentaire ; -sélectionner (609) l’une des fonctions de probabilités élémentaires en utilisant la fonction de probabilités globale ; et - appliquer la fonction de probabilités élémentaire sélectionnée pour déterminer une action (610) parmi lesdites actions pouvant être mises en œuvre par ladite entité compétitive donnée.
  2. 2. Procédé selon la revendication 1 caractérisé en ce qu’il comprend une étape préalable consistant à modéliser la situation stratégique de l’entité compétitive donnée sous la forme d’un modèle de jeu comprenant l’ensemble des actions possibles des entités compétitives et la fonction de gain s’appliquant aux dites actions, la fonction de gain associant à chaque action ou combinaison d’actions des entités compétitives un gain attendu.
  3. 3. Procédé selon l’une des revendications précédentes, caractérisé en ce que ledit paramètre de probabilité est une valeur de poids.
  4. 4. Procédé selon l’une des revendications précédentes, caractérisé en ce que les fonctions de probabilités élémentaires correspondent à une composante d’un vecteur de probabilités défini en fonction d’une distribution de probabilité.
  5. 5. Procédé selon la revendication 4, caractérisé en ce que chaque composante du vecteur de probabilités dépend de poids élémentaires prédéfinis.
  6. 6. Procédé selon l’une des revendications 1 et 2, caractérisé en ce qu’il comprend une étape de calcul de la fonction de gain à partir de données d’apprentissage (606).
  7. 7. Procédé selon la revendication 6, caractérisé en ce que la fonction de gain dépend de l’un au moins des modèles multicritères suivants parmi une somme pondérée, Intégrale de Choquet, un modèle d’utilité additive généralisé, un réseau de neurones.
  8. 8. Procédé selon la revendication 6, caractérisé en ce que la fonction de gain dépend d’un modèle probabiliste.
  9. 9. Procédé selon l’une des revendications précédentes, caractérisé en ce qu’il comprend une étape de mise à jour d’au moins une fonction de probabilités élémentaire en utilisant une fonction de mise à jour, en réponse à la réception de données d’apprentissage obtenues en exécutant ou en simulant la fonction de probabilités élémentaire sélectionnée et l’action réellement choisie dans le système compétitif au moins une fois.
  10. 10. Procédé selon la revendication 9, caractérisé en ce que l’étape de mise à jour (607) comprend la mise à jour de ladite fonction de probabilités élémentaire sélectionnée.
  11. 11. Procédé selon la revendication 10, caractérisé en ce que l’étape de mise à jour (607) comprend en outre la mise à jour d’au moins une desdites autres fonctions de probabilités élémentaires.
  12. 12. Procédé selon la revendication 11, caractérisé en ce que l’étape de mise à jour (607) comprend l’application d’une fonction de mise à jour différente pour chaque fonction de probabilités élémentaire.
  13. 13. Procédé selon l’une des revendications 9 à 12, caractérisé en ce que les fonctions de mise à jour comprennent au moins une fonction de mise à jour dépendant du gain obtenu.
  14. 14. Procédé selon l’une des revendications 9 à 13, caractérisé en ce que les fonctions de mise à jour comprennent au moins une fonction de mise à jour dépendant de poids élémentaires, chaque poids élémentaire étant associé à une action donnée et les poids élémentaires étant fonction des gains obtenus.
  15. 15. Procédé selon la revendication 14, caractérisé en ce que ladite fonction de mise à jour d’une fonction de probabilités élémentaire donnée comprend une composante par action, chaque composante par action dépendant du rapport entre le poids élémentaire associé à ladite action, à l’étape de décision considérée, et la somme totale des poids élémentaires correspondant aux différentes composantes de la fonction de probabilité élémentaire à ladite étape de décision.
  16. 16. Procédé selon l’une des revendications 14 et 15, caractérisé en ce que l’étape de mise à jour comprend en outre la mise à jour desdits poids élémentaires en fonction de la perte encourue en utilisant la méthode d’apprentissage associée à la fonction de probabilités élémentaire à mettre à jour, à une étape de décision donnée.
  17. 17. Procédé selon la revendication 14, caractérisé en ce que l’étape de mise à jour comprend la mise à jour desdits poids élémentaires en appliquant une fonction de distribution de Boltzmann aux gains obtenus.
  18. 18. Procédé selon la revendication 14, caractérisé en ce que l’étape de mise à jour comprend la mise à jour desdits poids élémentaires en fonction d’un paramètre représentant l'état de l'environnement, d’un taux d'exploration, et d’un facteur de remise.
  19. 19. Procédé selon l’une des revendications 9 à 18, caractérisé en ce que les fonctions de mise à jour comprennent au moins une fonction de mise à jour dépendant de paramètres de gains reçus mesurant le regret d’avoir choisi la méthode d’apprentissage associée à la fonction de probabilités élémentaire plutôt qu’une autre méthode d’apprentissage, à une étape de décision donnée.
  20. 20. Produit programme d’ordinateur, ledit programme d’ordinateur comprenant des instructions de code permettant d’effectuer les étapes du procédé selon l'une quelconque des revendications 1 à 19, lorsque ledit programme est exécuté sur un ordinateur.
  21. 21. Système d’aide à la décision (10) pour déterminer une action à mettre en oeuvre par une entité compétitive donnée (20) dans un système compétitif comprenant ladite entité compétitive et au moins une autre entité compétitive adverse, l’entité compétitive pouvant mettre en oeuvre une action parmi un ensemble d’actions prédéfinies, chaque action fournissant un gain attendu différent en fonction des actions mises en oeuvre par lesdites entités compétitives adverses, chaque entité étant en outre apte à mettre en œuvre une méthode d’apprentissage parmi un ensemble de méthodes d’apprentissage prédéfinies pour apprendre les actions des entités adverses, chaque méthode d’apprentissage étant associée à une fonction de probabilités élémentaire associant un paramètre de probabilité à chaque action possible de l’entité compétitive donnée, le système comprenant un module d’apprentissage global (50) configuré pour déterminer une fonction de probabilités globale propre à associer un paramètre de probabilité à chaque fonction de probabilités élémentaire, le module d’apprentissage global comprenant en outre une unité de sélection (54) propre à sélectionner l’une desdites fonctions de probabilités élémentaires en utilisant la fonction de probabilités globale, le module d’apprentissage global étant propre à appliquer la fonction de probabilités élémentaire sélectionnée pour déterminer une action parmi lesdites actions pouvant être mises en oeuvre par ladite entité compétitive donnée.
FR1502483A 2015-11-27 2015-11-27 Systeme et procede d'aide a la decision Pending FR3044438A1 (fr)

Priority Applications (6)

Application Number Priority Date Filing Date Title
FR1502483A FR3044438A1 (fr) 2015-11-27 2015-11-27 Systeme et procede d'aide a la decision
CN201680079996.7A CN108701260B (zh) 2015-11-27 2016-11-24 用于辅助决策的***和方法
EP16801202.9A EP3380994A1 (fr) 2015-11-27 2016-11-24 Systeme et procede d'aide a la decision
US15/778,600 US11120354B2 (en) 2015-11-27 2016-11-24 System and method for aiding decision
PCT/EP2016/078634 WO2017089443A1 (fr) 2015-11-27 2016-11-24 Systeme et procede d'aide a la decision
CA3006383A CA3006383A1 (fr) 2015-11-27 2016-11-24 Systeme et procede d'aide a la decision

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
FR1502483A FR3044438A1 (fr) 2015-11-27 2015-11-27 Systeme et procede d'aide a la decision

Publications (1)

Publication Number Publication Date
FR3044438A1 true FR3044438A1 (fr) 2017-06-02

Family

ID=56369003

Family Applications (1)

Application Number Title Priority Date Filing Date
FR1502483A Pending FR3044438A1 (fr) 2015-11-27 2015-11-27 Systeme et procede d'aide a la decision

Country Status (6)

Country Link
US (1) US11120354B2 (fr)
EP (1) EP3380994A1 (fr)
CN (1) CN108701260B (fr)
CA (1) CA3006383A1 (fr)
FR (1) FR3044438A1 (fr)
WO (1) WO2017089443A1 (fr)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CA3067903A1 (fr) 2017-06-05 2018-12-13 Balanced Media Technology, LLC Plateforme destinee au traitement collaboratif de taches informatiques
US11763190B2 (en) 2018-03-26 2023-09-19 Balanced Media Technology, LLC Abstracted interface for gamification of machine learning algorithms
CN112639841B (zh) * 2019-01-17 2024-02-06 创新先进技术有限公司 用于在多方策略互动中进行策略搜索的采样方案
WO2020098823A2 (fr) * 2019-12-12 2020-05-22 Alipay (Hangzhou) Information Technology Co., Ltd. Détermination de politiques de sélection d'actions d'un dispositif d'exécution
WO2020098821A2 (fr) 2019-12-12 2020-05-22 Alipay (Hangzhou) Information Technology Co., Ltd. Détermination de politiques de sélection d'action d'un dispositif d'exécution
WO2020098822A2 (fr) 2019-12-12 2020-05-22 Alipay (Hangzhou) Information Technology Co., Ltd. Détermination de politiques de sélection d'action d'un dispositif d'exécution
CN111311947B (zh) * 2020-03-02 2021-01-08 清华大学 一种网联环境下考虑驾驶人意图的行车风险评估方法和装置
CN111405646B (zh) * 2020-03-17 2022-06-03 重庆邮电大学 异构蜂窝网络中基于Sarsa学习的基站休眠方法

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030149675A1 (en) * 2001-06-26 2003-08-07 Intuitive Intelligence, Inc. Processing device with intuitive learning capability
EP2249292A1 (fr) * 2009-04-03 2010-11-10 Siemens Aktiengesellschaft Mécanisme de prise de décision, procédé, module, et robot configuré pour décider d'au moins une action respective du robot
WO2013059517A1 (fr) * 2011-10-18 2013-04-25 Causata Inc. Apprentissage de différences temporelles en ligne à partir d'historiques incomplets d'interactions avec des clients

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102724257A (zh) * 2011-11-07 2012-10-10 李宗诚 互联网全息协同***配置机制设计
US9679258B2 (en) * 2013-10-08 2017-06-13 Google Inc. Methods and apparatus for reinforcement learning
US10325202B2 (en) * 2015-04-28 2019-06-18 Qualcomm Incorporated Incorporating top-down information in deep neural networks via the bias term

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030149675A1 (en) * 2001-06-26 2003-08-07 Intuitive Intelligence, Inc. Processing device with intuitive learning capability
EP2249292A1 (fr) * 2009-04-03 2010-11-10 Siemens Aktiengesellschaft Mécanisme de prise de décision, procédé, module, et robot configuré pour décider d'au moins une action respective du robot
WO2013059517A1 (fr) * 2011-10-18 2013-04-25 Causata Inc. Apprentissage de différences temporelles en ligne à partir d'historiques incomplets d'interactions avec des clients

Also Published As

Publication number Publication date
US20180349783A1 (en) 2018-12-06
CN108701260A (zh) 2018-10-23
CN108701260B (zh) 2022-09-27
WO2017089443A1 (fr) 2017-06-01
CA3006383A1 (fr) 2017-06-01
EP3380994A1 (fr) 2018-10-03
US11120354B2 (en) 2021-09-14

Similar Documents

Publication Publication Date Title
FR3044438A1 (fr) Systeme et procede d&#39;aide a la decision
KR20180091841A (ko) 결투 심층 신경 네트워크
Pauna et al. Qrassh-a self-adaptive ssh honeypot driven by q-learning
CN110235149B (zh) 神经情节控制
US11558403B2 (en) Quantum computing machine learning for security threats
JP2019049783A (ja) 機械学習プログラム、機械学習方法、および機械学習装置
Moodi et al. A hybrid intelligent approach to detect android botnet using smart self-adaptive learning-based PSO-SVM
Bidgoly et al. Modelling and quantitative verification of reputation systems against malicious attackers
Kachavimath et al. A deep learning-based framework for distributed denial-of-service attacks detection in cloud environment
CN115841366B (zh) 物品推荐模型训练方法、装置、电子设备及存储介质
CN113379536A (zh) 一种基于引力搜索算法优化递归神经网络的违约概率预测方法
CN115481441A (zh) 面向联邦学习的差分隐私保护方法及装置
Zhang et al. Detecting Insider Threat from Behavioral Logs Based on Ensemble and Self‐Supervised Learning
Musman et al. Steps toward a principled approach to automating cyber responses
Nalayini et al. A new IDS for detecting DDoS attacks in wireless networks using spotted hyena optimization and fuzzy temporal CNN
Liu et al. A trust prediction approach capturing agents' dynamic behavior
Luo et al. A fictitious play‐based response strategy for multistage intrusion defense systems
Booker et al. A model-based, decision-theoretic perspective on automated cyber response
CN114666107B (zh) 移动雾计算中一种高级持续性威胁防御方法
Lisas et al. Sequential Learning for Modelling Video Quality of Delivery Metrics
Nakıp et al. Online Self-Supervised Deep Learning for Intrusion Detection Systems
Wang et al. DQfD‐AIPT: An Intelligent Penetration Testing Framework Incorporating Expert Demonstration Data
CN113923007A (zh) 一种安全渗透测试方法、装置、电子设备及存储介质
CN117999554A (zh) 一种蜜罐实体及其操作方法
FR3105489A3 (fr) Dispositif et procede de detection de fraude

Legal Events

Date Code Title Description
PLFP Fee payment

Year of fee payment: 2

PLSC Publication of the preliminary search report

Effective date: 20170602

PLFP Fee payment

Year of fee payment: 3

PLFP Fee payment

Year of fee payment: 4

PLFP Fee payment

Year of fee payment: 5

PLFP Fee payment

Year of fee payment: 6

PLFP Fee payment

Year of fee payment: 7

PLFP Fee payment

Year of fee payment: 8

PLFP Fee payment

Year of fee payment: 9