<!DOCTYPE article PUBLIC "-//NLM//DTD JATS (Z39.96) Journal Archiving and Interchange DTD v1.0 20120330//EN" "JATS-archivearticle1.dtd">
<article xmlns:xlink="http://www.w3.org/1999/xlink">
  <front>
    <journal-meta />
    <article-meta>
      <title-group>
        <article-title>Apprentissage par Analogies grâce à des outils de la Théorie des Catégories</article-title>
      </title-group>
      <contrib-group>
        <contrib contrib-type="author">
          <string-name>L. Cordesses</string-name>
          <email>lionel.cordesses@renault.com</email>
          <xref ref-type="aff" rid="aff0">0</xref>
          <xref ref-type="aff" rid="aff2">2</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>O. Bentahar</string-name>
          <email>omar.bentahar@nissan-usa.com</email>
          <xref ref-type="aff" rid="aff0">0</xref>
          <xref ref-type="aff" rid="aff2">2</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>K. Poulet</string-name>
          <email>kevin.poulet@renault.com</email>
          <xref ref-type="aff" rid="aff0">0</xref>
          <xref ref-type="aff" rid="aff2">2</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>A. Laurent</string-name>
          <email>aude.laurent@nissan-usa.com</email>
          <xref ref-type="aff" rid="aff0">0</xref>
          <xref ref-type="aff" rid="aff2">2</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>S. Amar</string-name>
          <email>sarah.amar@nissan-usa.com</email>
          <xref ref-type="aff" rid="aff0">0</xref>
          <xref ref-type="aff" rid="aff2">2</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>T. Ehrmann</string-name>
          <email>thomas.ehrmann@renault.com</email>
          <xref ref-type="aff" rid="aff0">0</xref>
          <xref ref-type="aff" rid="aff2">2</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>J. Page</string-name>
          <email>ju.page@hotmail.fr</email>
          <xref ref-type="aff" rid="aff0">0</xref>
          <xref ref-type="aff" rid="aff1">1</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Résumé</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Mots Clef</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <aff id="aff0">
          <label>0</label>
          <institution>Apprentissage Automatique, Théorie des Catégories</institution>
          ,
          <addr-line>Atari 2600, Circuit de voitures miniatures</addr-line>
        </aff>
        <aff id="aff1">
          <label>1</label>
          <institution>CNRS-Université Paris Diderot, Laboratoire SPHERE</institution>
          ,
          <addr-line>5 rue Thomas Mann, 75205 Paris cedex 13</addr-line>
        </aff>
        <aff id="aff2">
          <label>2</label>
          <institution>Renault Innovation Silicon Valley</institution>
          ,
          <addr-line>1215 Bordeaux Drive, Sunnyvale, 94089 CA</addr-line>
          ,
          <country country="US">USA</country>
        </aff>
      </contrib-group>
    </article-meta>
  </front>
  <body>
    <sec id="sec-1">
      <title>-</title>
      <p>Machine learning algorithms for controlling devices need
to learn quickly, with few trials, when limited by the
duration and cost of experiments. Such a goal can be attained
with concepts borrowed from Cognitive Science and Social
Science, and formalized mathematically using tools from
Category Theory and Control Theory.</p>
      <p>This leads to a machine learning system that accumulates
knowledge, then transposes it to new configurations.
Illustrations of this approach are presented on a cyber-physical
system – the slot car game – and also on Atari 2600 games.
Les algorithmes qui contrôlent des systèmes
cyberphysiques doivent apprendre comment opérer rapidement
dans un environnement partiellement connu, le tout avec de
moins en moins de données. Les solutions à base
d’apprentissage par renforcement, avec des réseaux de neurones par
exemple, ont fait leurs preuves. Cependant, ces méthodes à
la pointe de la recherche ont besoin de beaucoup de
données d’entraînement, données que l’on risque de ne pas
pouvoir obtenir si l’on respecte des contraintes budgétaires
et temporelles.</p>
      <p>
        Nous proposons ici une approche complémentaire à
l’apprentissage par renforcement et aux réseaux de neurones
pour permettre aux machines d’apprendre rapidement avec
des puissances de calcul réduites. L’objectif est d’être aussi
performant que les solutions existantes avec environ un
pour cent des données et du temps d’entraînement usuels.
L’aspect novateur de notre travail repose sur l’utilisation
d’outils élémentaires de la théorie des catégories — une
branche des mathématiques datant des années 1940, assez
peu utilisée en apprentissage automatique (en anglais :
Machine Learning) — pour formaliser notamment la notion
d’analogie. La théorie des catégories a été conçue en lien
avec la topologie algébrique, pour permettre de transférer
des théorèmes et des concepts d’une branche des
mathématiques à une autre [
        <xref ref-type="bibr" rid="ref28">28</xref>
        ]. Nous utilisons ces outils pour
avoir un cadre générique pour notre approche
d’apprentissage automatique, ce qui permet, par exemple, de
formaliser rigoureusement le transfert de connaissances.
Par ailleurs, nous pensons qu’il est fondamental de
rechercher des structures dynamiques pour construire une
intelligence artificielle (IA) adaptative. Les sciences sociales et
les sciences cognitives montrent que les structures
dynamiques cadrent la cognition (cf. [
        <xref ref-type="bibr" rid="ref22">22</xref>
        ]), les langues (cf. [
        <xref ref-type="bibr" rid="ref8">8</xref>
        ])
et les interactions sociales (cf. [
        <xref ref-type="bibr" rid="ref26">26</xref>
        ]). En effet, ces structures
permettent aux humains d’agir et de s’adapter en fonction
des expériences passées.
      </p>
      <p>
        Dans cet article, nous commençons par étudier les
méthodes d’apprentissage automatique pour les processus
décisionnels markoviens (MDP) appliqués à des jeux.
Ensuite, nous expliquons les motivations qui supportent notre
approche inspirée des sciences sociales. Grâce au concept
d’équivalence de catégories, nous décrivons des classes de
problèmes non bijectifs, sur lesquels nous centrons notre
approche. Il en résulte un comportement innovant de
l’algorithme de contrôle. Enfin, nous illustrons cette approche
avec des résultats sur un circuit de voitures miniatures, et
sur des jeux vidéo Atari 2600. Notre méthode utilise
également le savoir accumulé tout au long des expériences
passées, et peut donc servir à valider des concepts modernes
tels que le « lifelong machine learning » [
        <xref ref-type="bibr" rid="ref5">5</xref>
        ].
2
      </p>
    </sec>
    <sec id="sec-2">
      <title>Travaux antérieurs</title>
      <p>Nous avons décidé de tester notre approche sur un
circuit de voitures miniatures et sur des jeux vidéo Atari, car
ces deux expériences impliquent de prendre des décisions,
tâche plus complexe que la classification pure. Dans ce
contexte, les approches d’apprentissage automatique
appliquées à la prise de décision reposent souvent sur de
nombreux essais, ce qui implique de grandes quantités de
données d’entraînement et requiert une grande puissance de
calcul.</p>
      <p>
        D’autre part, les jeux sont devenus un banc d’essai
classique pour les algorithmes d’IA. Les circuits de voitures
miniatures, par exemple, sont utilisés pour évaluer la
performance des systèmes de prise de décision. Le traitement
d’images basé sur de l’apprentissage par renforcement
présenté dans [
        <xref ref-type="bibr" rid="ref12">12</xref>
        ] estime la position de la voiture sur le
circuit grâce à un perceptron multicouche à convolution.
L’entraînement prend 12 h et l’apprentissage de la stratégie de
contrôle requiert 30 min supplémentaires. La solution plus
rapide proposée par [
        <xref ref-type="bibr" rid="ref24">24</xref>
        ] pour le même système de circuit
de voitures autonome dépend d’accéléromètres et d’un
microcontrôleur rajoutés sur la voiture pour d’abord créer une
cartographie du circuit, puis ensuite contrôler la vitesse de
la voiture.
      </p>
      <p>
        Les jeux vidéo sont aussi devenus de plus en plus utiles
pour fournir une représentation cyber-physique de notre
environnement. Même des systèmes anciens, tels que la
console Atari 2600, fournissent une grande diversité de
situations, allant des labyrinthes (jeux de style Pac-Man) et
jeux d’action (tel que Space Invaders) aux jeux de balle et
raquette (Breakout, Pong). Malgré le fait que ces différents
problèmes réclament des stratégies variées pour être
résolus par un joueur humain standard, ils impliquent tous des
prises de décision et ont donc été modélisés par des MDPs
[
        <xref ref-type="bibr" rid="ref18">18</xref>
        ]. Ce cadre permet l’implémentation de nombreuses
méthodes différentes. Certains travaux, tel que celui
présenté dans [
        <xref ref-type="bibr" rid="ref18">18</xref>
        ], utilisent une image de l’aire de jeu remise
à l’échelle en entrée d’un « deep Q-network » (DQN), avec
pour but de sélectionner la meilleure action à jouer. Une
autre possibilité est l’utilisation de méthodes classiques de
recherche et de planification, telles que le « Iterated Width
algorithm » [
        <xref ref-type="bibr" rid="ref16">16</xref>
        ] ou les algorithmes de parcours d’arbre
tels que l’algorithme de recherche arborescente
MonteCarlo [
        <xref ref-type="bibr" rid="ref21">21</xref>
        ] pour calculer la meilleure action possible.
L’apprentissage par renforcement peu profond [
        <xref ref-type="bibr" rid="ref15">15</xref>
        ] repose sur
une représentation linéaire simplifiée, mais obtient
cependant des résultats similaires aux méthodes non-linéaires.
Enfin, l’apprentissage maître-élève [
        <xref ref-type="bibr" rid="ref3">3</xref>
        ], l’apprentissage par
renforcement inverse [
        <xref ref-type="bibr" rid="ref13">13</xref>
        ], et l’apprentissage par imitation
[
        <xref ref-type="bibr" rid="ref20">20</xref>
        ] peuvent également être utilisés pour entraîner un agent
au comportement plus humain, qui a une efficacité et une
réussite proches de celles des méthodes susmentionnées.
Les « Schema Networks » [
        <xref ref-type="bibr" rid="ref11">11</xref>
        ] font un pas
supplémentaire en direction du transfert de connaissances et de la
réduction des besoins en données et en puissance de calcul
pour l’entraînement, en utilisant un simulateur physique et
en travaillant à un niveau plus élevé avec des entités
plutôt que des pixels. Cette méthode obtient le même score
qu’un joueur humain sur Breakout (30 points) avec 100 000
images d’entraînement.
3
      </p>
    </sec>
    <sec id="sec-3">
      <title>Sciences Sociales, Sciences Cognitives et Théorie du contrôle pour l’apprentissage automatique</title>
      <p>Pour atteindre notre objectif de réduction des besoins en
données d’entraînement et en puissance de calcul, nous
avons basé notre IA sur des concepts de haut niveau déjà
étudiés par différentes sciences.</p>
      <p>
        Tout ce qui est produit par l’humain contient, en partie,
une certaine structure humaine. Par exemple, lorsque des
humains conçoivent un jeu, ils utilisent des règles
implicites qui leur permettent de jouer et de s’amuser. Cela
signifie que ces jeux, comme les autres créations humaines,
contiennent un minimum de structure pour que le joueur
humain puisse les comprendre, et ils contiennent
également de la dissonance cognitive pour les rendre attractifs
[
        <xref ref-type="bibr" rid="ref6">6</xref>
        ][
        <xref ref-type="bibr" rid="ref25">25</xref>
        ][
        <xref ref-type="bibr" rid="ref27">27</xref>
        ]. La plupart des problèmes réels possèdent cette
ambivalence.
      </p>
      <p>
        Parmi les structures clés, on retrouve les schémas cognitifs
universels auxquels les humains s’attendent quant aux
objets et à l’environnement : état intérieur (intention et affect),
propriétés matérielles (gravité, conservation de la forme,
continuité de la trajectoire) ou propriétés naturelles
nonhumaines (mouvement et croissance). Ces schémas
cognitifs sont acquis durant l’enfance quand l’enfant découvre
le monde au fil de ses mouvements et en utilisant ses sens
[
        <xref ref-type="bibr" rid="ref22">22</xref>
        ].
      </p>
      <p>Nous supposons qu’une IA ayant la connaissance de ces
schémas cognitifs serait capable de prendre les bonnes
décisions pour jouer, et de transférer les connaissances
acquises à une grande variété de problèmes similaires.
3.1</p>
      <sec id="sec-3-1">
        <title>Entités dans le temps et dans l’espace</title>
        <p>
          Nous avons conçu notre IA pour qu’elle raisonne au niveau
syntaxique et non au niveau de l’échantillon ou du pixel.
D’une certaine manière, cela correspond à raisonner au
niveau du morphème en linguistique, défini dans [
          <xref ref-type="bibr" rid="ref8">8</xref>
          ] comme
le plus petit élément significatif d’un langage. Nous
appelons entités les éléments de base de ce niveau syntaxique.
Ces entités sont détectées par des outils classiques de
traitement du signal et d’apprentissage automatique. Elles sont
comme les objets de notre vie de tous les jours : des
tronçons de circuit (lignes droites et virages), des voitures, des
balles, des raquettes, des murs. Elles sont organisées
géométriquement dans un espace et peuvent être décrites, par
exemple, par les coordonnées cartésiennes de leur boîte
englobante.
        </p>
        <p>Les données caractérisant ces entités sont collectées à
chaque échantillon de temps pour construire des modèles
dynamiques décrits par les équations d’état (1) à temps
discret pour un système d’ordre Nd, où x est le vecteur d’état,
y la mesure, u la commande, A la matrice d’état, B la
matrice de commande, C la matrice d’observation, D la
matrice d’action directe, et k l’indice de l’échantillon.
x(k + 1) = Ax(k) + Bu(k)
y(k) = Cx(k) + Du(k)
(1)
3.2</p>
      </sec>
      <sec id="sec-3-2">
        <title>Le Moi au sein du monde</title>
        <p>
          Une étape clé pour se forger une identité propre lors du
développement de l’enfant est appelée le stade du miroir.
Nous avons conçu notre IA pour qu’elle commence à ce
stade en identifiant le « Moi » parmis toutes les entités.
Cette identification du « Moi » est réalisée en utilisant des
résultats de la théorie du contrôle, à savoir le critère de
contrôlabilité d’un système dynamique, comme présenté,
par exemple, dans [
          <xref ref-type="bibr" rid="ref10">10</xref>
          ]. Le système est complètement
contrôlable si et seulement si (ssi) la matrice de
contrôlabilité CNd , [BjABj : : : jANd 1B] est de rang Nd. Nous
définissons le « Moi » comme étant l’entité qui vérifie le
critère de contrôlabilité.
        </p>
        <p>
          Comme le « Moi » et son environnement peuvent tous les
deux changer, les modèles établis peuvent ne plus être
valides. En s’inspirant d’une idée provenant de l’approche
scientifique décrite dans [
          <xref ref-type="bibr" rid="ref23">23</xref>
          ], selon laquelle il doit être
possible d’invalider un système scientifique empirique par
l’expérience, nous avons conçu notre algorithme de telle
sorte à ce qu’il puisse réfuter ses propres modèles pour les
remplacer par de meilleurs. Le critère pour cette décision
est basé sur l’erreur entre les prédictions (basées sur le
modèle) et les mesures. Cette remise en cause ne s’effectue
pas seulement pendant la phase d’apprentissage mais
également pendant la phase de test.
        </p>
        <p>Une fois que le « Moi » est identifié, notre IA classifie les
entités restantes entre amis et ennemis, d’une manière
similaire à l’apprentissage par renforcement. Elle suit
ensuite une simple stratégie de survie : essayer d’aller vers
ses amis, à part si un ennemi est proche du « Moi », auquel
cas la première chose à faire est de s’enfuir.</p>
        <p>En résumé, notre IA prend en compte les récompenses de
son environnement pour classifier les entités, comme en
apprentissage par renforcement. Comme dans des approches
scientifiques empiriques, elle met à jour les classifications
et les modèles quand les mesures ne sont pas compatibles
avec les prédictions. Enfin, elle décrit au moins une entité
comme étant le « Moi », avec toutes les conséquences que
cela implique pour sa survie.</p>
      </sec>
    </sec>
    <sec id="sec-4">
      <title>La Théorie des Catégories comme cadre pour des analogies non bijectives</title>
      <p>
        L’un des outils les plus efficaces dont dispose l’humain
pour évoluer dans une situation inconnue est sa capacité
à faire des analogies entre cette nouvelle situation et ses
expériences passées. Nous pressentons qu’une IA capable
d’établir des analogies, et sachant, par exemple, comment
jouer au jeu Breakout sera capable de transposer ses
capacités au jeu Pong, même si les aires de jeu et les règles ne
sont pas identiques, à l’instar d’un joueur de tennis qui
saurait au moins partiellement comment manier une raquette
de badminton même s’il n’a jamais pratiqué ce sport.
Les situations où deux problèmes ont exactement le même
nombre d’états et des structures isomorphes sont rares. La
notion d’analogie semble alors adaptée au rapprochement
de structures conceptuellement proches mais
mathématiquement différentes. Or, la plupart des tentatives de
formalisation de cette notion sont fondées sur une
perspective structuraliste qui s’articule autour de la théorie des
ensembles via le concept d’isomorphisme qui préserve les
structures des ensembles. Il existe des outils
mathématiques pour identifier des structures non isomorphes tels
que l’équivalence de catégories en théorie des catégories
[
        <xref ref-type="bibr" rid="ref17">17</xref>
        ]. En effet, celle-ci apparaît comme un cadre de travail
plus naturel pour aborder la notion structuraliste
d’analogie qui considère que les relations entre éléments sont plus
essentielles que les éléments eux-même pour définir des
analogies [
        <xref ref-type="bibr" rid="ref9">9</xref>
        ]. 1.
      </p>
      <p>Dans les problèmes qui reposent sur la théorie des
ensembles, l’identification se réduit aux relations d’identité
et aux cas bijectifs, tandis que la théorie des catégories
apporte des descriptions plus riches des objets, ce qui permet
de nouvelles sortes d’identifications. Dans le cadre de cet
article, nous nous limitons à des concepts très élémentaires
de la théorie des catégories, qui pourraient être décrits en
termes ensemblistes, tout comme les situations que l’on
expose 2. L’apport de ces travaux est le changement de
perspective conceptuelle que nous croyons prometteur pour le
domaine de l’apprentissage automatique 3.</p>
      <p>
        Théorie des catégories. Une catégorie C est une
collection d’objets et de morphismes (ou flèches) entre certains
de ces objets, munie d’une composition de morphismes, et
peut ainsi être assimilée à un graphe orienté. Si A et B sont
1. Une autre approche pourrait être l’utilisation de la théorie des
modèles, plus spécifiquement du concept d’équivalence élémentaire [
        <xref ref-type="bibr" rid="ref4">4</xref>
        ] dans
la perspective de doter l’IA de raisonnements logiques. Pour un
panorama philosophique des concepts d’analogie et de raisonnement
analogique, voir [
        <xref ref-type="bibr" rid="ref1">1</xref>
        ]
      </p>
      <p>2. Ce qui n’est pas étonnant puisque la théorie des ensembles et la
théorie des catégories, en tant que propositions mathématiques
fondationnelles de toutes les mathématiques, se fondent mutuellement l’une l’autre.
Chaque concept catégorique doit pouvoir être décrit en termes
ensemblistes et réciproquement.</p>
      <p>
        3. Dans une perspective bayésienne, [
        <xref ref-type="bibr" rid="ref7">7</xref>
        ] utilise des catégories de
probabilités conditionnelles : les objets sont des espaces mesurables et les
flèches des noyaux de Markov.
des objets de C, la flèche a : A ! B est un isomorphisme
si elle est inversible, i.e s’il existe une flèche b : B ! A,
telle que ba = IdA et ab = IdB. Dans ce cas, les objets A
et B sont isomorphes. Les isomorphismes définissent une
relation d’équivalence sur la classe des objets de C, pour
laquelle on note C= ' son quotient. Aussi, si F : C ! C0
est ce qu’on appelle une équivalence de catégories,
celleci induit une bijection F 0 : (C= ') ! (C0= ') entre les
classes d’objets isomorphes même si F n’est pas bijective.
Dès lors, on n’identifie plus les objets (ou états) un à un
entre deux situations, mais les types (ou classes
d’isomorphismes) de ces états.
      </p>
      <p>Ce procédé peut être utilisé dans le cas de problèmes
observables. En effet, considérons deux ensembles d’états non
vides C et C0 sans autre hypothèse sur leur cardinalité.
Supposons aussi l’existence de deux fonctions d’observations
f : C ! O et f 0 : C0 ! O0. Quitte à restreindre O
et O0, supposons que ces deux fonctions sont surjectives.
Pour tout o 2 O, on dit que les états x 2 C dont
l’observation associée est o (i.e f (x) = o) sont de type To.
Cela définit une relation d’équivalence Rf sur l’ensemble
C : 8x; y 2 C; x Rf y ssi f (x) = f (y). Transposé dans
le champ lexical des catégories, cela revient à placer une
flèche inversible entre deux objets x et y de C ssi x Rf y. C
devient alors une catégorie, où toutes les flèches sont
inversibles et telle que C= ' est exactement le quotient C=Rf ,
quotient qui définit aussi l’ensemble des types d’états de
C. Puisque ces types ont été définis via les observations, la
surjection f : C ! O induit une bijection f~ : (C= ') ! O
entre l’ensemble de types et l’ensemble d’observations. f~
est donc l’inverse de la fonction T : O ! (C= '), o 7! To
qui définit les types To. Le même raisonnement peut être
reproduit à partir de C0 et de f 0.</p>
      <p>Enfin, supposons qu’il existe une bijection G : O ! O0
entre les ensembles d’observation et que O et O0 sont donc
de même cardinalité. Ainsi, on peut définir une autre
bijection F 0 = f~0 1 G f~ : (C= ') ! (C0= ')
entre les ensemble de types d’objets, bijection en réalité
induite par l’équivalence de catégories F : C ! C0
définie comme suit : pour tout x 2 C, soit o = f (x) et soit
x0 2 f 0 1(G(o)), définissons F telle que F (x) = x0. Si C
et C0 ont des cardinaux différents, F ne peut pas être
bijective, mais F 0 l’est. Par construction, F envoie chaque état
x vers un état x0 du même type (modulo G). Cela permet de
relier les catégories C et C0, de telle sorte que si l’on dispose
d’une stratégie applicable dans C0, elle peut être transposée
dans C par la fonction F .</p>
      <p>Si l’on remplace C et C0 par des ensembles d’entités (option
1) ou de paires d’entités (option 2) dans deux (situations
de) jeux différent(e)s, nous pouvons les comparer grâce à
des fonctions d’observation du type f et f 0 comme décrit
ci-dessus. Cela permet de transférer des connaissances
relatives à des entités ou des paires d’entités. Nous avons
ainsi expérimenté les cas particuliers où dans l’option 1,
f : C ! f0; 1g et f 0 : C0 ! f0; 1g valent 1 si l’entité est
un « Moi » et 0 sinon ; et dans l’option 2, f : C ! f0; 1g et
f 0 : C0 ! f0; 1g valent 1 si les trajectoires des deux entités
d’une paire s’intersectent, et 0 sinon. Ce qui est observé du
Moi d’une situation peut alors être supposé du moi d’une
autre situation par transfert de connaissances. Des
observations ultérieures permettront alors de confirmer ou infirmer
ces suppositions.</p>
      <p>
        Une explication plus détaillée et approfondie de la théorie
des catégories peut être trouvée dans [
        <xref ref-type="bibr" rid="ref17">17</xref>
        ]. Son utilisation
nous permet de formaliser une grande diversité de jeux et
de situations.
      </p>
      <p>Analogies entre circuits de voitures miniatures. Nous
introduisons les notations suivantes : soient N et N 0 les
nombres de segments par configuration du circuit, et C =
fs; s 2 [1; N ]g, C0 = fs0; s0 2 [1; N 0]g les ensembles de
positions possibles de la voiture sur le circuit, qui ne sont
utiles que pour le raisonnement théorique et ne sont pas
utilisés lors des expériences. Soient (u; i)s (resp. (u0; i0)s0 )
la tension et le courant mesurés lorsque la voiture passe sur
la section s (resp. s0). Soit 1 s0 N (resp. 1 s00
N 0) la position initiale de la voiture dans la configuration
C (resp. C0). Nous notons k une ligne droite de C et l un
virage. De même, soient k0 une ligne droite et l0 un virage
de C0.</p>
      <p>Le joueur peut agir sur (u0; i0)0s en utilisant la manette de
jeu, ce qui correspond à la stratégie 0 définie par (2).
0(s0) =
((u0; i0)k0 ; si s0 est une ligne droite
(u0; i0)l0 ;
sinon
(2)
Nous voulons identifier C et C0, pour pouvoir transposer la
stratégie 0 de C0 à C. Les états de C sont les positions s de
la voiture sur le circuit. De même, les états de C0 sont les
positions s0. Si N = N 0 et s0 = s00, nous pouvons définir
une bijection entre C et C0 et transposer 0 de manière
triviale. En revanche, si N 6= N 0 ou s0 6= s00, il est impossible
de définir une telle bijection.</p>
      <p>Cependant, si nous transformons C et C0 en catégories, en
définissant des morphismes, nous serons capables de
définir une équivalence de catégories F : C ! C0. Dès
lors, nous définirons la stratégie appliquée sur C par
= 0 F . Pour définir ces morphismes, nous utilisons
la fonction observable f définie sur les états s de C comme
suit : f : C ! f1; 2g avec f = h g où g et h sont telles
que g(s) = (u; i)s et h ((u; i)s) = 1 si s est un virage, et
2 sinon. f 0 est définie de la même manière sur les s0 de C0,
c’est-à-dire f 0 : C0 ! f1; 2g avec f 0 = h0 g0 et g0 et h0
sont définies de la même manière que g et h, mais sur les
états de C0.</p>
      <p>Nous définissons un isomorphisme entre deux états de C
ssi ils ont la même image par f , et un isomorphisme entre
deux états de C0 ssi ils ont la même image par f 0. Nous
définissons ensuite F : C ! C0 par (3).</p>
      <p>F (s) =
(l0;</p>
      <p>si f (s) = 1
k0; si f (s) = 2
(3)
Il est facile de voir, si les définitions exactes sont connues,
que (3) est une équivalence de catégories qui permet de
transférer de C0 à C. F induit une bijection F 0 entre les
ensembles de classes (ou types de position – ici C ,C 0
sont les types de virage et S ,S 0 sont les types de lignes
droites) : F 0 : (C= ') ! (C0= ') où (C= ') est égal à
fC ; S g et (C0= ') est égal à fC 0; S 0g. On obtient
finalement F 0(C ) = C 0 et F 0(S ) = S 0.</p>
      <p>Cet exemple de catégorisation systématique et de
généralisation prouve que nous ne travaillons pas à l’échelle des
états, mais que nous considérons les types d’états.
Analogies entre jeux vidéo. Considérons un jeu C (par
exemple le jeu Breakout pour Atari 2600) où une raquette
horizontale est située en x0 sur un segment [0; N ] d’états
initiaux possibles (0 x0 N ) et peut se déplacer vers la
gauche ou la droite afin d’atteindre une balle devant arriver
à la position x1 2 [0; N ]. La stratégie est la suivante : si
x1 &lt; x0, se déplacer vers la gauche, si x1 = x0, ne pas
bouger, mais si x1 &gt; x0, alors se déplacer vers la droite.
Désormais, considérons un autre jeu C0 (tel que Pong sur
Atari 2600 par exemple) où cette fois-ci une raquette
verticale se trouve en position y0 sur le segment [0; N 0] des
positions atteignables (0 y0 N 0) et peut se déplacer
de haut en bas pour toucher une balle qui atteindra la
position y1 2 [0; N 0].</p>
      <p>Nous souhaitons identifier C et C0 afin de transposer la
stratégie de C à C0. Les états (objets) de C sont les N + 1
positions x1 de [0; N ]. De la même façon, les états (objets)
de C0 sont les N 0 + 1 positions y1 de [0; N 0]. Si N = N 0
et x0 = y0, alors il est facile de définir une bijection de C
à C0 puis de transposer , mais si N 6= N 0 ou x0 6= y0
alors il est impossible de définir une telle bijection. Pour
résoudre ce problème, nous transformons C et C0 en
catégories à travers la définition suivante de nos flèches, et ce
faisant, nous pourrons définir une équivalence de
catégories F : C ! C0. Pour définir ces flèches, nous utilisons
les fonctions d’observation suivantes définies sur les états
de C et C0 : f : C ! f0; 1; 2g et f 0 : C0 ! f0; 1; 2g telles
que f (x1) = 0 ssi x1 &lt; x0, f (x1) = 1 ssi x1 = x0 et
f (x1) = 2 ssi x1 &gt; x0. De la même façon, f 0(y1) = 0
ssi y1 &lt; y0, f 0(y1) = 1 ssi y1 = y0 et f 0(y1) = 2
ssi y1 &gt; y0. Ensuite, nous définissons une flèche
inversible entre deux états de C ssi ils ont la même image par
f , ainsi qu’une flèche inversible entre deux états de C0 ssi
ils ont la même image par f 0. Soit F : C ! C0, telle
que si x1 &lt; x0, alors F (x1) = 0 ; si x0 = x1, alors
F (x1) = y0 ; et si x1 &gt; x0, alors F (x1) = N 0. Cette
fonction F définit une équivalence de catégories et induit une
bijection F 0 entre les ensembles de classes : F 0 : (C= '
) ! (C0= '). (C= ') correspond (grâce à la stratégie
) aux actions disponibles fGauche; Attendre; Droiteg
dans C alors que (C0= ') correspond aux actions
disponibles fHaut; Attendre; Basg dans C0 (en choisissant
d’orienter l’axe des y du haut vers le bas). Dans ce
casci F 0(Gauche) = Haut, F 0(Attendre) = Attendre et
F 0(Droite) = Bas.
5.1</p>
    </sec>
    <sec id="sec-5">
      <title>Résultats Expérimentaux</title>
      <sec id="sec-5-1">
        <title>Circuit de voitures miniatures</title>
        <sec id="sec-5-1-1">
          <title>Matériel et Implémentation. Le montage expérimental</title>
          <p>est constitué d’un circuit MINI Challenge Set C1320 de la
marque Scalextric dont le compteur de tours mécanique a
été remplacé par un capteur à effet Hall omnipolaire digital.
Le courant est mesuré par une résistance shunt placée en
série avec les rails d’alimentation. Le courant et la tension
sont d’abord filtrés par un filtre RC passif du second ordre
puis échantillonnés à fs = 100 Hz. Ce montage ne contient
aucun capteur supplémentaire. Les algorithmes sont écrits
en C et exécutés en temps réel sur un Arduino Mega 2560
qui dispose de 8192 octets de mémoire vive (RAM). Nous
définissons la période d’échantillonnage par ts = 1=fs, et
l’instant associé à l’échantillon k est kts où k 2 N.
Ce cas basé sur l’utilisation d’analogies, directement
inspiré de notre utilisation de la théorie des catégories, repose
sur deux modules : un module de récompense, ainsi qu’un
module de prise de décision, tous deux décrits ci-dessous.
Puisque qu’il n’y a ici qu’un seul système dynamique, c’est
nécessairement le « Moi » et aucune identification n’est
utile.</p>
          <p>Comme en apprentissage par renforcement, notre approche
s’appuie sur une récompense tirée de l’environnement.
Celle-ci est le résultat de la combinaison de trois variables.
La première variable est le temps du tour mesuré
directement grâce au compteur de tours. La seconde variable
binaire indique la présence de la voiture sur la piste, et la
dernière variable binaire indique si la voiture est en
mouvement. Ce module de récompense surveille constamment
la voiture pour vérifier qu’elle n’est pas sortie de la piste
à cause d’une vitesse trop élevée, mais aussi qu’elle ne
s’est pas arrêtée à cause de frottements trop importants. Ces
deux détecteurs reposent sur une classification par k plus
proches voisins (k-NN) en utilisant les courants et tensions
comme entrées.</p>
          <p>Avec ce module de récompense, l’IA peut piloter la voiture
sur des circuits qu’elle découvre sans rejouer ou
manipuler des échantillons enregistrés lors d’une partie du joueur
humain. La seule information conservée par l’algorithme
est une vitesse de sécurité dont l’IA sait qu’elle ne
provoque ni sortie de piste, ni arrêt de la voiture. Comme la
configuration du circuit change, il n’y a pas bijection entre
les deux configurations et le cas bijectif ne peut pas
s’appliquer. Il faut donc s’appuyer sur des analogies et
transposer les connaissances acquises dans une première
configuration en utilisant l’équation (2), conformément au
formalisme des cas non bijectifs décrit dans la partie 4. La
fonction h((u; i)s) est évaluée par un k-NN dont le
coefficient à été choisi comme le meilleur compromis entre
la performance possible sur la cible embarquée et
l’obtention de résultats satisfaisants. Les deux classificateurs sont
entraînés avec environ 1000 échantillons de (u; i) (ce qui
correspond à seulement 10 s de jeu) et sont implantés en
version condensée afin d’être exécutables sur l’Arduino.
En pratique, l’approche par analogies fonctionne comme
suit : la voiture démarre sur le circuit inconnu avec cette
vitesse de sécurité importée de la première configuration.
La fonction h((u; i)s), évaluée par le k-NN à partir des
mesures de courant et de tension, détermine si la voiture
est dans une configuration que nous appelons courbe ou
ligne droite. L’IA choisit ensuite la meilleure commande
utilisée au cours des expériences précédentes, en vérifiant
l’objectif de minimiser le temps au tour en maintenant la
voiture sur la piste. L’algorithme permet donc de
généraliser les connaissances acquises au cours d’expériences
passées et de les appliquer dans une configuration
radicalement différente. En effet, les deux circuits schématisés en
figure 1 sont de forme et de taille différentes et une simple
reproduction d’une commande préalablement enregistrée
échouerait à fournir des résultats probants.</p>
          <p>Résultats. Les expériences décrites dans cet article ont
été menées sur deux configurations de complexité
différente présentées figure 1, et leur résultats sont présentés
tableau 1. L’IA démarre à vitesse constante (avec une
Modulation de Largeur d’Impulsion de 39% de la vitesse
maximale). Cette IA, qui repose sur l’établissement
d’analogies entre configurations et ne rejoue pas d’enregistrement
d’une quelconque partie précédente, est capable
d’améliorer les temps au tour en moins de 10 tours sur une piste
inconnue. L’algorithme atteint des temps similaires aux
temps humains sur le circuit 2 : 3:08 s pour les derniers
tours des joueurs humains contre 3:13 s pour l’algorithme.
Les améliorations futures de l’algorithme sur un circuit
inconnu incluront l’optimisation des vitesses transposées par
l’algorithme. En effet, seule une vitesse de sécurité a été
utilisée ici afin d’éviter les sorties de pistes des voitures
pilotées par l’algorithme, alors que certains tours humains
ont occasionné des sorties de pistes et n’ont donc pas été
comptabilisés.</p>
          <p>Le cadre théorique détaillé en section 4 permet au système
d’être au niveau des meilleurs joueurs sur ce jeu en moins
d’une minute, sans ajout de capteurs embarqués. Ce cadre
permet d’atteindre de tels résultats sur des circuits
inconnus où la simple reproduction d’un tour humain conduirait
immédiatement à une sortie de piste.
5.2</p>
        </sec>
      </sec>
      <sec id="sec-5-2">
        <title>Jeux vidéo Atari 2600</title>
        <sec id="sec-5-2-1">
          <title>Configuration et implémentation de la théorie. Tan</title>
          <p>
            dis que le circuit de voitures miniatures nous a permis de
valider l’approche sur des signaux analogiques réels,
Arcade Learning Environment (ALE, cf [
            <xref ref-type="bibr" rid="ref2">2</xref>
            ]) nous a permis
de la valider sur des configurations plus complexes, avec
des signaux déjà échantillonnés provenant de l’émulateur.
Les concepts d’entités avec le « Moi » introduits en 3.2
sont également utilisés pour jouer aux jeux Atari 2600.
On détecte les entités grâce à des algorithmes de
traitement d’images : le filtre de Sobel (image du centre en
figure 2) et la détection des boîtes englobantes (image de
droite en figure 2). Elle repose sur la librairie OpenCV [
            <xref ref-type="bibr" rid="ref19">19</xref>
            ].
Le « Moi » est trouvé en utilisant un algorithme
d’identification de système. Des séquences d’actions
pseudoaléatoires [
            <xref ref-type="bibr" rid="ref14">14</xref>
            ] sont envoyées comme commande dans ALE
pour d’abord identifier quelles entités sont affectées par
ces signaux, puis pour construire les modèles dynamiques
décrits par les équations (1) avec Nd = 2. Peu
d’entités sont contrôlables : ce sont les « Moi ». Leurs formes
peuvent changer en cours de jeu, comme la raquette dans
Breakout, d’où la possibilité d’identifier plusieurs entités
comme étant le « Moi ». Ces mesures mettent également à
jour les fonctions p(E; F ) qui expriment la probabilité que
le contact entre les entités E et F change le score, d’une
manière similaire à une fonction de récompense en
apprentissage par renforcement. À partir de ces fonctions p, nous
déduisons les entités amies et ennemies, conduisant à la
stratégie de survie basique décrite en partie 3.2.
Nous choisissons d’utiliser le DQN comme référence, car
cette publication obtient de bons résultats par rapport à un
joueur humain pour un grand nombre de jeux. Les tests
ont donc été effectués avec les paramètres décrits dans
[
            <xref ref-type="bibr" rid="ref18">18</xref>
            ] : l’IA joue pendant une durée maximale de 5 minutes.
Même si notre objectif est de contrôler des systèmes
cyberphysiques, nous souhaitions valider la versatilité de notre
approche en la testant d’abord sur cet environnement de
référence. Nous avons entièrement reproduit la
configuration de cet article en utilisant le code mis à disposition par
les auteurs, et avons obtenu des résultats similaires à ceux
annoncés. Cela nous a permis de calculer un score moyen
pour le DQN avec un faible nombre d’images
d’entraînement, pour le comparer au score moyen obtenu avec notre
approche.
          </p>
          <p>Résultats. Les résultats pour Breakout 4 sont présentés
dans la table 2 pour un temps d’entraînement de 10 000
images (moins de 3 minutes). La figure 3 compare cette
approche avec le DQN et montre que des scores similaires
sont atteignables en utilisant 20 000 fois moins d’images.
Les étapes d’apprentissage sur Breakout sont les suivantes :
durant les premières centaines d’images, l’IA utilise une
séquence pseudo-aléatoire pour identifier le « Moi ». Une
fois que cette identification a convergé vers le seul système
que l’IA contrôle – la raquette – l’algorithme recherche des
entités amies et ennemies. En quelques milliers d’images, il
détecte que la balle est un ami car le score augmente quand
elle casse une brique.</p>
          <p>
            Les scores autour de 400 points correspondent à des parties
où quasiment toutes les briques du premier niveau ont été
cassées. L’écart-type élevé est dû à certaines parties
atteignant des scores de plus de 600 points, obtenus grâce à la
4. Les résultats pour le joueur humain et le mode aléatoire sont tirés
de [
            <xref ref-type="bibr" rid="ref18">18</xref>
            ]. Le temps d’entraînement pour le joueur humain est de 2 heures
soit 432 000 images.
400
300
e
r
coS200
100
0
102
          </p>
          <p>DQN
Notre IA</p>
          <p>Breakout</p>
          <p>Score Moyen par partie
103 104 105 106 107</p>
          <p>Nombre de frames d'entraînement
108
capacité de l’IA à réfuter ses modèles.</p>
          <p>Les résultats dans Pong ont été obtenus en utilisant trois
approches : la première (a) identifie le « Moi » (mais pas
la balle comme ami) en 500 images. La seconde (b)
correspond à la procédure suivie pour Breakout : elle
identifie le « Moi » puis les amis sur chacun des deux jeux
en 10 000 images. La troisième (c) illustre le transfert de
connaissances formalisé en utlisant les similarités décrites
dans la partie 3.1 : l’IA commence par apprendre à jouer
à Breakout en 10 000 images, puis elle identifie le « Moi »
sur Pong en 500 images, et enfin elle transfère (sans images
d’entraînement supplémentaires) la connaissance de l’ami
vers Pong. L’expérience (c) permet d’obtenir un système
capable de jouer à Breakout et Pong avec seulement 10 500
images d’entraînement comme mis en évidence en table 3.
6</p>
          <p>Conclusion
À partir de concepts empruntés aux Sciences Sociales
et Cognitives et d’enseignements tirés de caractéristiques
propres aux méthodes scientifiques, ces travaux utilisent
des outils élémentaires de la théorie des catégories pour
faciliter l’établissement d’analogies et le transfert de
connaissances entre situations non bijectives. Ces outils
permettent aussi de formaliser une approche aboutissant à
une IA capable de contrôler un agent dans un monde en
perpétuelle évolution.</p>
          <p>Les résultats des expériences conduites sur un système
cyber-physique mais aussi sur des jeux vidéo Atari 2600
confirment nos attentes. En effet, ce système a été capable
d’identifier, puis de contrôler le « Moi » dans différentes
situations, que ce soient des circuits de configurations
différentes, ou des jeux Atari 2600 différents, en s’appuyant
sur un transfert de connaissances et une faible quantité de
données.</p>
        </sec>
      </sec>
    </sec>
    <sec id="sec-6">
      <title>References</title>
      <p>L’algorithme utilisé est décrit en pseudo-code sur la figure
4. Il repose sur une base de connaissance bdc, une stratégie
par défaut strategie_par_def aut, un seuil seuil de rejet
du modèle et un nombre d’itérations Nmax correspondant
à la durée de l’initialisation.</p>
      <p>La base bdc, initialement vide, se remplit progressivement
des stratégies obtenues au cours des parties jouées. La
stratégie par défaut strategie_par_def aut est, dams le cas
du circuit de voitures, une MLI constante (39% dans nos
expériences). Dans le cas des jeux Atari 2600, c’est une
séquence pseudo-aléatoire d’actions envoyées en entrée du
système.</p>
      <p>L’algorithme commence par acquérir les échantillons puis
les assimile à des types d’entités en ligne 2. À partir de ces
entités, l’algorithme détermine la situation qui présente les
objets les plus similaires en ligne 6 avant d’extraire en ligne
7 les modèles et stratégies obtenus lors de cette situation.
La base bdc est ensuite complétée.</p>
      <p>Lors de la partie, le système continue à acquérir des
échantillons et à les transformer en entités. Si le modèle est
valide (lignes 23 à 27), le système calcule à partir des entités
présentes et stratégies disponibles la meilleure action à
effectuer. Avec les entités et les modèles, une prédiction de
l’état de l’environnement est aussi calculée. Si ces
predictions sont trop éloignées de l’état mesuré, alors la variable
f _ref ute_savoir devient vraie. Dans ce cas, dès
l’itération suivante, la procédure d’identification (lignes 15 à 20)
se lance. De nouveaux modèles et stratégies sont calculés.
Cette procédure est mise en oeuvre tant que de nouveaux
modèles et stratégies n’ont pas été trouvés puis validés.
Une fois validés, la base de connaissances bdc est enrichie
de ces résultats.</p>
      <p>Notons que l’algorithme est identique en phase
d’apprentissage et en phase d’exploitation (test). Il continue de
réfuter son savoir, si besoin est, même en phase d’exploitation.</p>
    </sec>
  </body>
  <back>
    <ref-list>
      <ref id="ref1">
        <mixed-citation>
          [1]
          <string-name>
            <given-names>P.</given-names>
            <surname>Bartha</surname>
          </string-name>
          , “
          <article-title>Analogy and analogical reasoning,” in The Stanford Encyclopedia of Philosophy</article-title>
          , winter 2016 ed.,
          <string-name>
            <given-names>E. N.</given-names>
            <surname>Zalta</surname>
          </string-name>
          , Ed. Metaphysics Research Lab, Stanford University,
          <year>2016</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref2">
        <mixed-citation>
          [2]
          <string-name>
            <given-names>M. G.</given-names>
            <surname>Bellemare</surname>
          </string-name>
          ,
          <string-name>
            <given-names>Y.</given-names>
            <surname>Naddaf</surname>
          </string-name>
          ,
          <string-name>
            <given-names>J.</given-names>
            <surname>Veness</surname>
          </string-name>
          , and
          <string-name>
            <given-names>M.</given-names>
            <surname>Bowling</surname>
          </string-name>
          , “
          <article-title>The arcade learning environment: An evaluation platform for general agents</article-title>
          ,
          <source>” Journal of Artificial Intelligence Research</source>
          , vol.
          <volume>47</volume>
          , pp.
          <fpage>253</fpage>
          -
          <lpage>279</lpage>
          ,
          <year>2013</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref3">
        <mixed-citation>
          [3]
          <string-name>
            <given-names>M.</given-names>
            <surname>Bogdanovic</surname>
          </string-name>
          ,
          <string-name>
            <given-names>D.</given-names>
            <surname>Markovikj</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            <surname>Denil</surname>
          </string-name>
          , and N. de Freitas, “
          <article-title>Deep apprenticeship learning for playing video games,”</article-title>
          <source>in AAAI Workshop on Learning for General Competency in Video Games</source>
          ,
          <year>2015</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref4">
        <mixed-citation>
          [4]
          <string-name>
            <given-names>C.</given-names>
            <surname>Chang</surname>
          </string-name>
          and
          <string-name>
            <given-names>H. J.</given-names>
            <surname>Keisler</surname>
          </string-name>
          , Model Theory, 3rd ed. North Holland,
          <year>1990</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref5">
        <mixed-citation>
          [5]
          <string-name>
            <given-names>Z.</given-names>
            <surname>Chen</surname>
          </string-name>
          and
          <string-name>
            <surname>B. Liu,</surname>
          </string-name>
          <article-title>Lifelong Machine Learning</article-title>
          . Morgan &amp; Claypool Publishers,
          <year>2016</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref6">
        <mixed-citation>
          [6]
          <string-name>
            <given-names>M.</given-names>
            <surname>Csikszentmihalyi</surname>
          </string-name>
          ,
          <article-title>Flow: The Psychology of Optimal Experience, ser</article-title>
          .
          <source>Harper Perennial Modern Classics. Harper Collins</source>
          ,
          <year>2009</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref7">
        <mixed-citation>
          [7]
          <string-name>
            <given-names>J.</given-names>
            <surname>Culbertson</surname>
          </string-name>
          and
          <string-name>
            <given-names>K.</given-names>
            <surname>Sturtz</surname>
          </string-name>
          , “
          <article-title>Bayesian machine learning via category theory</article-title>
          ,
          <source>” arXiv:1312.1445v1 [math.CT] 5 Dec</source>
          <year>2013</year>
          ,
          <year>2013</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref8">
        <mixed-citation>
          [8]
          <string-name>
            <surname>F. de Saussure</surname>
          </string-name>
          , Cours de linguistique générale.
          <source>Payot</source>
          ,
          <year>1916</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref9">
        <mixed-citation>
          [9]
          <string-name>
            <given-names>B.</given-names>
            <surname>Falkenhainer</surname>
          </string-name>
          ,
          <string-name>
            <given-names>K.</given-names>
            <surname>Forbus</surname>
          </string-name>
          , and
          <string-name>
            <given-names>D.</given-names>
            <surname>Gentner</surname>
          </string-name>
          , “
          <article-title>The structure-mapping engine: Algorithm and examples</article-title>
          ,
          <source>” Artificial Intelligence</source>
          , vol.
          <volume>41</volume>
          , pp.
          <fpage>2</fpage>
          -
          <lpage>63</lpage>
          ,
          <year>1989</year>
          /90.
        </mixed-citation>
      </ref>
      <ref id="ref10">
        <mixed-citation>
          [10]
          <string-name>
            <given-names>R. E.</given-names>
            <surname>Kalman</surname>
          </string-name>
          , “
          <article-title>On the general theory of control systems,”</article-title>
          <source>in Proceedings of the First International Congress on Automatic Control. Butterworth</source>
          , London,
          <year>1960</year>
          , pp.
          <fpage>481</fpage>
          -
          <lpage>492</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref11">
        <mixed-citation>
          [11]
          <string-name>
            <given-names>K.</given-names>
            <surname>Kansky</surname>
          </string-name>
          ,
          <string-name>
            <given-names>T.</given-names>
            <surname>Silver</surname>
          </string-name>
          ,
          <string-name>
            <given-names>D. A.</given-names>
            <surname>Mély</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            <surname>Eldawy</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            <surname>Lázaro-Gredilla</surname>
          </string-name>
          ,
          <string-name>
            <given-names>X.</given-names>
            <surname>Lou</surname>
          </string-name>
          ,
          <string-name>
            <given-names>N.</given-names>
            <surname>Dorfman</surname>
          </string-name>
          ,
          <string-name>
            <given-names>S.</given-names>
            <surname>Sidor</surname>
          </string-name>
          , D. S. Phoenix, and D. George, “
          <article-title>Schema networks: Zero-shot transfer with a generative causal model of intuitive physics,”</article-title>
          <source>in ICML</source>
          <year>2017</year>
          ,
          <article-title>8 2017</article-title>
          , pp.
          <fpage>1809</fpage>
          -
          <lpage>1818</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref12">
        <mixed-citation>
          [12]
          <string-name>
            <given-names>S.</given-names>
            <surname>Lange</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            <surname>Riedmiller</surname>
          </string-name>
          ,
          <article-title>and</article-title>
          <string-name>
            <given-names>A.</given-names>
            <surname>Voigtlander</surname>
          </string-name>
          , “
          <article-title>Autonomous reinforcement learning on raw visual input data in a real world application,” in The 2012 International Joint Conference on Neural Networks (IJCNN)</article-title>
          . IEEE,
          <year>2012</year>
          , pp.
          <fpage>1</fpage>
          -
          <lpage>8</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref13">
        <mixed-citation>
          [13]
          <string-name>
            <given-names>G.</given-names>
            <surname>Lee</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            <surname>Luo</surname>
          </string-name>
          ,
          <string-name>
            <given-names>F.</given-names>
            <surname>Zambetta</surname>
          </string-name>
          , and
          <string-name>
            <given-names>X.</given-names>
            <surname>Li</surname>
          </string-name>
          , “
          <article-title>Learning a Super Mario controller from examples of human play,” in 2014 IEEE Congress on Evolutionary Computation (CEC)</article-title>
          ,
          <year>July 2014</year>
          , pp.
          <fpage>1</fpage>
          -
          <lpage>8</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref14">
        <mixed-citation>
          [14]
          <string-name>
            <given-names>W. S.</given-names>
            <surname>Levine</surname>
          </string-name>
          ,
          <source>The Control Systems Handbook: Control System Advanced Methods</source>
          ,
          <year>2011</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref15">
        <mixed-citation>
          [15]
          <string-name>
            <given-names>Y.</given-names>
            <surname>Liang</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M. C.</given-names>
            <surname>Machado</surname>
          </string-name>
          , E. Talvitie, and
          <string-name>
            <given-names>M.</given-names>
            <surname>Bowling</surname>
          </string-name>
          , “
          <article-title>State of the art control of Atari games using shallow reinforcement learning,” in Proceedings of the 2016 ICAAMAS, ser</article-title>
          .
          <source>AAMAS '16</source>
          ,
          <year>2016</year>
          , pp.
          <fpage>485</fpage>
          -
          <lpage>493</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref16">
        <mixed-citation>
          [16]
          <string-name>
            <given-names>N.</given-names>
            <surname>Lipovetzky</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            <surname>Ramirez</surname>
          </string-name>
          , and
          <string-name>
            <given-names>H.</given-names>
            <surname>Geffner</surname>
          </string-name>
          , “
          <article-title>Classical planning with simulators: Results on the Atari video games,”</article-title>
          <source>in IJCAI'15</source>
          ,
          <year>2015</year>
          , pp.
          <fpage>1610</fpage>
          -
          <lpage>1616</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref17">
        <mixed-citation>
          [17]
          <string-name>
            <given-names>S.</given-names>
            <surname>Mac</surname>
          </string-name>
          <string-name>
            <surname>Lane</surname>
          </string-name>
          ,
          <article-title>Categories for the working mathematician</article-title>
          , 2nd ed. Springer-Verlag,
          <year>1998</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref18">
        <mixed-citation>
          [18]
          <string-name>
            <given-names>V.</given-names>
            <surname>Mnih</surname>
          </string-name>
          ,
          <string-name>
            <given-names>K.</given-names>
            <surname>Kavukcuoglu</surname>
          </string-name>
          ,
          <string-name>
            <given-names>D.</given-names>
            <surname>Silver</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A. A.</given-names>
            <surname>Rusu</surname>
          </string-name>
          ,
          <string-name>
            <given-names>J.</given-names>
            <surname>Veness</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M. G.</given-names>
            <surname>Bellemare</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A.</given-names>
            <surname>Graves</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            <surname>Riedmiller</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A. K.</given-names>
            <surname>Fidjeland</surname>
          </string-name>
          , G. Ostrovski,
          <string-name>
            <given-names>S.</given-names>
            <surname>Petersen</surname>
          </string-name>
          ,
          <string-name>
            <given-names>C.</given-names>
            <surname>Beattie</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A.</given-names>
            <surname>Sadik</surname>
          </string-name>
          , I. Antonoglou,
          <string-name>
            <given-names>H.</given-names>
            <surname>King</surname>
          </string-name>
          ,
          <string-name>
            <given-names>D.</given-names>
            <surname>Kumaran</surname>
          </string-name>
          ,
          <string-name>
            <given-names>D.</given-names>
            <surname>Wierstra</surname>
          </string-name>
          ,
          <string-name>
            <given-names>S.</given-names>
            <surname>Legg</surname>
          </string-name>
          , and
          <string-name>
            <given-names>D.</given-names>
            <surname>Hassabis</surname>
          </string-name>
          , “
          <article-title>Human-level control through deep reinforcement learning</article-title>
          ,
          <source>” Nature</source>
          , vol.
          <volume>518</volume>
          , no.
          <issue>7540</issue>
          , pp.
          <fpage>529</fpage>
          -
          <lpage>533</lpage>
          ,
          <year>February 2015</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref19">
        <mixed-citation>
          [19] OpenCV, “Open source computer vision library,” https://opencv.org/,
          <year>2017</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref20">
        <mixed-citation>
          [20]
          <string-name>
            <given-names>J.</given-names>
            <surname>Ortega</surname>
          </string-name>
          ,
          <string-name>
            <given-names>N.</given-names>
            <surname>Shaker</surname>
          </string-name>
          ,
          <string-name>
            <given-names>J.</given-names>
            <surname>Togelius</surname>
          </string-name>
          , and
          <string-name>
            <given-names>G. N.</given-names>
            <surname>Yannakakis</surname>
          </string-name>
          , “
          <article-title>Imitating human playing styles in Super Mario Bros,” Entertainment Computing</article-title>
          , vol.
          <volume>4</volume>
          , no.
          <issue>2</issue>
          , pp.
          <fpage>93</fpage>
          -
          <lpage>104</lpage>
          ,
          <year>2013</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref21">
        <mixed-citation>
          [21]
          <string-name>
            <given-names>T.</given-names>
            <surname>Pepels</surname>
          </string-name>
          ,
          <string-name>
            <surname>M. H. M. Winands</surname>
            , and
            <given-names>M.</given-names>
          </string-name>
          <string-name>
            <surname>Lanctot</surname>
          </string-name>
          , “RealTime
          <string-name>
            <surname>Monte-Carlo Tree</surname>
          </string-name>
          Search in Ms.
          <source>Pac-Man,” IEEE Trans. on Computational Intelligence and AI in Games</source>
          , vol.
          <volume>6</volume>
          , no.
          <issue>3</issue>
          , pp.
          <fpage>245</fpage>
          -
          <lpage>257</lpage>
          ,
          <year>Sept 2014</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref22">
        <mixed-citation>
          [22]
          <string-name>
            <given-names>J.</given-names>
            <surname>Piaget</surname>
          </string-name>
          ,
          <article-title>The construction of reality in the child</article-title>
          .
          <source>Basic Books</source>
          ,
          <year>1954</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref23">
        <mixed-citation>
          [23]
          <string-name>
            <given-names>K.</given-names>
            <surname>Popper</surname>
          </string-name>
          ,
          <source>The Logic of Scientific Discovery. Hutchinson &amp; Co</source>
          , London,
          <year>1959</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref24">
        <mixed-citation>
          [24]
          <string-name>
            <given-names>L.</given-names>
            <surname>Pusman</surname>
          </string-name>
          and
          <string-name>
            <given-names>K.</given-names>
            <surname>Kosturik</surname>
          </string-name>
          , “
          <article-title>Control algorithm based on phase locked loop,” in Telecommunications Forum (TELFOR</article-title>
          ),
          <year>2013</year>
          21st,
          <year>Nov 2013</year>
          , pp.
          <fpage>605</fpage>
          -
          <lpage>607</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref25">
        <mixed-citation>
          [25]
          <string-name>
            <surname>J. M. Schaeffer</surname>
          </string-name>
          , L'expérience esthétique.
          <source>Gallimard</source>
          ,
          <year>2015</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref26">
        <mixed-citation>
          [26]
          <string-name>
            <given-names>A.</given-names>
            <surname>Schutz</surname>
          </string-name>
          ,
          <article-title>The phenomenology of the social world, ser. Northwestern University studies in phenomenology &amp; existential philosophy</article-title>
          . Northwestern University Press,
          <year>1967</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref27">
        <mixed-citation>
          [27]
          <string-name>
            <given-names>D.</given-names>
            <surname>Sperber</surname>
          </string-name>
          ,
          <article-title>La Contagion des idées</article-title>
          .
          <source>Éditions Odile Jacob</source>
          ,
          <year>1996</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref28">
        <mixed-citation>
          [28]
          <string-name>
            <surname>D. I. Spivak</surname>
          </string-name>
          ,
          <article-title>Category Theory for the Sciences</article-title>
          . The MIT Press,
          <year>2014</year>
          .
        </mixed-citation>
      </ref>
    </ref-list>
  </back>
</article>