Page 1 sur 2

IA peut-il remplacer un pilote ?

Publié : jeu. juin 08, 2023 10:27 am
par FrenchFlx92
Bonjour,

Je lance le sujet car les techniques avancent très vite. Durant mes loisirs, Je me suis lancé à faire des IA pour le dogfight.

Pour avancer dans la discussion, le point de départ est une video sur l'affrontement d'une IA face à un pilote (projet piloté par le DARPA)


comme je le disais, j'essaie de faire de même (sûrement très ambitieux) avec mes moyens : entrainer un réseau de neurones à piloter un avion. Etant mauvais pilote, je laisse mes IA s'affronter entre elles, ce qui donne des videos comme celle-ci :


Pour l'instant les modèles avions sont simplifiés (principalement pour réduire les temps de calculs), il faut pas moins de 30000 à 60000 combats pour avoir des comportements qui commencent à être satisfaisants, et il faut faire plusieurs passes pour affiner. Ce qui prend plusieurs jours voire plusieurs semaines de calculs. Mais au final une fois le réseau entrainé, celui est assez petit (quelques milliers de paramètres).

Maintenant j'aimerai connaitre vos réactions et discutez avec vous.

frenchFlx92

Re: IA peut-il remplacer un pilote ?

Publié : lun. juin 12, 2023 2:24 pm
par dimebug
C'est un projet très intéressant et la méthode semble bonne. C'est celle qui a été employé pour les pilotes auto chez certain constructeurs automobile et équipementiers. En realité, il a fallu des années d'apprentissage pour arriver a un début d'exploitabilité.

Apres, partir en direct sur du dog c'est peut etre qu'une partie du resultat. Vaudrait t'il pas mieux permettre a l'ia d'apprendre a maitriser des phases de vol, la voltige puis le dog ? un peu a la manière d'entrainement d'un humain ?

Re: IA peut-il remplacer un pilote ?

Publié : lun. juin 12, 2023 5:45 pm
par lefuneste
Ou leur apprendre les "basic combat manoeuvers" ainsi que les appareils pour lesquelles elles s'appliquent ou non ?

Re: IA peut-il remplacer un pilote ?

Publié : lun. juin 12, 2023 7:53 pm
par Jaguar
Salut! Je suis curieux de savoir quelles techno et applis tu utilise pour faire ça ? Merci :)

Re: IA peut-elle remplacer un pilote ?

Publié : mar. juin 13, 2023 1:33 pm
par FrenchFlx92
Pour l'application, c'est du code python avec la librairie de Tensorflow (pour l'IA). Tout est codé à la main.
Pour tester une IA contre une autre, je lance des simulations (toujours en Python), qui me génèrent des fichiers ACMI pour la restitution.

Le code est assez simple :
- un modèle avion pour le comportement
- une fonction qui donne la récompense lorsque l'objectif est atteint : cible à moins de 2° de l'axe avion et à une distance entre 100 et 1000m.
- le reste c'est des algo de deep learning - reinforcement learning pour permettre l'apprentissage et obtenir la meilleure récompense.

Avec cette méthode, pas besoin de leur apprendre les "basic combat manoeuvers", elles vont l'acquérir d'elles-mêmes (c'est comme la reconnaissance faciale, pas besoin de leur apprendre à reconnaître des lignes, des courbes, ... elles acquerront en apprenant à reconnaitre les visages (vive l'apprentissage profond ou deep learning))

J'ai commencé par des phases de vol plus simples au départ (suivre un cap / respecter une altitude / réguler une vitesse). les algos sont si puissants qu'en moins d'une heure elles savaient le faire.

Pour autant tout n'est pas bon et le travail pour avoir confiance est encore long, je m'explique:
Globalement le réseau de neurones va approximer le meilleur comportement, mais comme toute approximation, il y a des erreurs (d'approximation), notamment aux limites (quand la vitesse est excessive, ou que l'avion pique (tangage=-90°), ...), dans ces cas, l'IA ne choisit pas forcément la meilleure solution (elle continue d'accélérer alors que la vitesse est déjà en limite, elle redresse tardivement alors qu'elle pique, ...).

Ces situations peuvent être évitées en améliorant le modèle de l'avion, en modifiant la fonction de récompense ou en modifiant les propriétés du réseau.

Il y a aussi les questions de robustesse, comme par exemple : si jamais je perds de vu la cible qu'est-ce que je fais (je n'ai pas encore réfléchi à la question, mon IA reçoit toujours la position relative de la cible).

En sachant cela, l'homme a-t-il encore une chance dans un avion face à des drones avec des IA ?

Re: IA peut-elle remplacer un pilote ?

Publié : mar. juin 13, 2023 3:09 pm
par spiryth
FrenchFlx92 a écrit :
mar. juin 13, 2023 1:33 pm
Il y a aussi les questions de robustesse, comme par exemple : si jamais je perds de vu la cible qu'est-ce que je fais (je n'ai pas encore réfléchi à la question, mon IA reçoit toujours la position relative de la cible).

En sachant cela, l'homme a-t-il encore une chance dans un avion face à des drones avec des IA ?
en tout cas, l'homme sait quoi faire quand il perd le visuel pour le reprendre le plus vite possible, et tenter de ne pas mourir pendant ce temps :emlaugh:

Re: IA peut-elle remplacer un pilote ?

Publié : mar. juin 13, 2023 5:16 pm
par FrenchFlx92
spiryth a écrit :
mar. juin 13, 2023 3:09 pm
en tout cas, l'homme sait quoi faire quand il perd le visuel pour le reprendre le plus vite possible, et tenter de ne pas mourir pendant ce temps :emlaugh:
L'homme a appris à gérer ces situations (cela doit arriver souvent en combat), rien n'empêche de le faire également avec une IA en simulant des pertes de visuel.
La plus grosse difficulté est de prévoir tous les cas, alors que pour l'homme ceci s'est naturellement fait durant les années d'entraînement.

Re: IA peut-elle remplacer un pilote ?

Publié : mar. juin 13, 2023 6:00 pm
par jojo
FrenchFlx92 a écrit :
mar. juin 13, 2023 1:33 pm
En sachant cela, l'homme a-t-il encore une chance dans un avion face à des drones avec des IA ?
:jerry:


Re: IA peut-il remplacer un pilote ?

Publié : mar. juin 13, 2023 6:33 pm
par Jaguar
Merci pour les éléments techniques ! T'as gitté tout ça, c'est accessible ?

Pour la problématique de fond, sur laquelle tu semble intéressé d'entendre notre avis, sous réserve que l'IA soit au point (vaste sujet qui a alimenté d'autres longs sujets jusqu'à il y a peu, n'hésite pas à faire des recherches il y a beaucoup de points de vue intéressants), je donnerait un énorme avantage à l'IA pour des raisons physiologiques.

Pourquoi est-ce qu'un avion de chasse moderne vire grosso merdo jusqu'à 9G ? Parce qu'on touche à la limite de l'être humain. Tu enlève cette limitation, tu t'empresse de faire un avion/drone qui peut virer beaucoup, BEAUCOUP plus serré. Et qui du coup déboite n'importe quel être humain parce qu'en virant à 25G, il n'a aucune chance.
Même en virant à 9G "seulement", l'IA peut la tenir indéfiniment là où l'humain ne tiendra qu'un temps donné, donc là aussi l'IA aura un très gros avantage.

Pour la perte de visuel, pour un pilote on a encore une fois des limites physiologiques (rotation du cou, champ de vision, voiles noirs et rouges), là où une IA dépendra de capteurs qui n'auront pas les mêmes limitation. On peut imaginer deux caméras, rotatives à 360, une au dessus, l'autre en dessous, et l'IA ne perd jamais le visuel. De plus, elle pourrait probablement s'appuyer sur d'autres capteurs. (qui lui seront plus naturels que l'optique)
Et même si on revient aux limitations de l'humain et qu'on l'applique à l'IA, je pense que l'IA, comme l'humain, va mettre en place un process pour essayer de rétablir le visuel sur une base probabiliste (ok, il vient de disparaitre sur ma gauche en descente, j'incline mon avion à 90° gauche et je rétablis le visuel) exactement comme il le fait actuellement pour les manoeuvres.

Voilà my 2 cents ;)

Re: IA peut-il remplacer un pilote ?

Publié : mer. juin 14, 2023 9:03 am
par FrenchFlx92
Merci Jaquar, on est sur la même longueur d'onde.

"si c'est accessible ?"; j'utilise l'IA dans mon travail (électronique grand public rien à voir avec l'aéronautique) et puis avant d'arriver là, j'ai passé pas mal de temps à lire les articles du domaine, faire des essais et passer de désillusion en désillusion. Et quand le modèle converge enfin, avoir des comportements inattendus. Un exemple, au départ je mettais un volume délimitant le dogfight. Les IA, quand elles étaient en mauvaise posture, avaient appris qu'il était plus avantageux de sortir du volume que de se faire shooter (c'est ce qui se passait dans la plus part des cas, elles rompaient simplement le combat avant même d'avoir commencé). Pour répondre à ta question, je pense que c'est une activité qui demande pas mal d'investissement.

Pour revenir au débat, je sais que cela ne fait pas plaisir aux pilotes, mais je pense que leur métier va changer: les dogfighs, les bombardements c'est bientôt fini.

Ils deviendront des chefs d'une meute de drones, coordonnant l'ensemble (en attendant que cela soit pris en charge par l'IA). C'est à mon sens ce qui se prépare avec le Rafale et le nEUROn (est-ce bien dans le standard F5 ?)

Il n'y a qu'une mission qui restera encore effectuée par des humains c'est Police du ciel.

Je me pose alors la question, faut-il investir dans un Scaf qui vire à 9G ou dans des drones qui virent à 25G ?

Re: IA peut-il remplacer un pilote ?

Publié : mer. juin 14, 2023 10:28 am
par jojo
Pourquoi faire un drone qui vire à 25G quand un missile peut prendre 50G et même faire un demi-tour ? :hum:

Re: IA peut-il remplacer un pilote ?

Publié : mer. juin 14, 2023 10:30 am
par Jaguar
Quand j'ai dit 25G c'était un chiffre au pif pour illustrer la différence avec les 9G pendant 10 seconded du pilote :yes:
Mais oui, 50, ou plus, c'est mieux, tant que le matos tient !

@FrenchFlx92 je parlais d'accessibilité du code, de sa disponibilité quoi. En gros, est ce que t'as un git où on peut consulter tout ça ? :)

Re: IA peut-il remplacer un pilote ?

Publié : jeu. juin 15, 2023 8:58 am
par FrenchFlx92
@Jaguar, non le code n'est pas accessible.

Re: IA peut-elle remplacer un pilote ?

Publié : jeu. juin 15, 2023 11:02 am
par caramel
FrenchFlx92 a écrit :
mar. juin 13, 2023 5:16 pm
La plus grosse difficulté est de prévoir tous les cas, alors que pour l'homme ceci s'est naturellement fait durant les années d'entraînement.
Si un système réagit en fonction de cas prévus, je pense que ce n'est pas de l'intelligence, c'est de l'automatisme.
Avec l'IA, je trouve que le terme "intelligence" est galvaudé.

L'IA actuelle est rendue possible par la puissance de calcul des ordinateurs et surtout par l'exploitation des gigantesques bases de données constituées mais aucune réflexion là-dedans, juste le croisement quasiment instantané de myriades de cas déjà expérimentés pour un exploiter le plus pertinent.

Dernièrement, une IA a été très largement battue par un philosophe sur un sujet du dernier bac philo.

Après, pour tout ce qui est "mécanique" (et le combat aérien l'est), comme dit plus haut, les machines ont toujours été plus performantes que l'homme.

Pour le moment, la bêtise naturelle me fait plus peur que l'intelligence artificielle :yes: (mais il faut reconnaître que la combinaison des deux risque d'être dévastatrice).

Re: IA peut-elle remplacer un pilote ?

Publié : ven. juin 16, 2023 2:08 pm
par FrenchFlx92
caramel a écrit :
jeu. juin 15, 2023 11:02 am
Pour le moment, la bêtise naturelle me fait plus peur que l'intelligence artificielle :yes: (mais il faut reconnaître que la combinaison des deux risque d'être dévastatrice).
lol lol lol

Re: IA peut-elle remplacer un pilote ?

Publié : ven. juin 16, 2023 2:29 pm
par icemaker
caramel a écrit :
jeu. juin 15, 2023 11:02 am
Pour le moment, la bêtise naturelle me fait plus peur que l'intelligence artificielle :yes: (mais il faut reconnaître que la combinaison des deux risque d'être dévastatrice).
En voilà de sages paroles.
Toutefois ce serait utile d'avoir une IA dans nos simus qui soient plus "Intelligentes" qu'Artificielles.

Re: IA peut-elle remplacer un pilote ?

Publié : ven. juin 16, 2023 6:58 pm
par BeR1
caramel a écrit :
jeu. juin 15, 2023 11:02 am
...
Pour le moment, la bêtise naturelle me fait plus peur que l'intelligence artificielle :yes: (mais il faut reconnaître que la combinaison des deux risque d'être dévastatrice).
Bon résumé !
Dés que j'ai mis les doigts sur un clavier on parlait déjà d'IA (language LISP)
Ouahhh 50 ans après ...
Et comme tu le dis, même avec des quetta de données , elle accouche d'un quecto de raisonnement.
Oui c'est bluffant dans bien des domaines, mais pas d'intelligence, juste de puissance de traitement de l'information.

Re: IA peut-elle remplacer un pilote ?

Publié : ven. juin 16, 2023 7:18 pm
par Jaguar
BeR1 a écrit :
ven. juin 16, 2023 6:58 pm
Oui c'est bluffant dans bien des domaines, mais pas d'intelligence, juste de puissance de traitement de l'information.
J'aimerais bien que quelqu'un réussisse à me définir les deux de façon à pouvoir les différencier ;)

Re: IA peut-il remplacer un pilote ?

Publié : sam. juin 17, 2023 12:23 pm
par FrenchFlx92
Je pense qu'entre un puissance traitement de l'information et une intelligence "artificielle", c'est l'apprentissage qui fait la différence.
Aujourd'hui, le Deep Learning apprend tout seul pour réaliser un objectif défini uniquement par des récompenses. Cela demande encore beaucoup de traitements donc c'est fait au sol, mais avec les progrès, les optimisations et la puissance de calcul qui augmentent tout est imaginable.
D'autant plus que les processeurs intègrent maintenant des NPU (Neuronal Processing Unit).

Je me pose une question : est-il possible d'intégrer ce type d'IA dans nos simulateurs (DCS, FS) ?

Re: IA peut-il remplacer un pilote ?

Publié : lun. juin 19, 2023 12:29 pm
par icemaker
Il faudrait étudier la question, étant donné qu'il est possible d'extraire depuis DCS énormément d'informations (vitesse, attitude, altitude, etc...) et tu peux aussi en envoyer (actions sur les commandes, gaz).
Tu peux peut-être intégrer ton système d'apprentissage dans DCS.

Re: IA peut-il remplacer un pilote ?

Publié : mar. juin 20, 2023 9:57 am
par FrenchFlx92
icemaker a écrit :
lun. juin 19, 2023 12:29 pm
Il faudrait étudier la question, étant donné qu'il est possible d'extraire depuis DCS énormément d'informations (vitesse, attitude, altitude, etc...) et tu peux aussi en envoyer (actions sur les commandes, gaz).
Tu peux peut-être intégrer ton système d'apprentissage dans DCS.
Merci icemaker, c'est exactement ça.
Pour un combat 1x1, il me faut la position de l'avion et de la cible, l'attitude de l'avion et sa vitesse. Donc je pense que tout est dispo.
J'imagine mal embarquer la partie apprentissage (c'est au minimum 60 000 combats pour une convergence satisfaisante du modèle), mais une fois le modèle généré. je peux créer une librairie C++ ou un programme qui, en fonction des entrées, génère les commandes (manche et manette).
Il reste un problème de taille : quel modèle avion utilisé pour être représentatif du comportement dans le simulateur. et je ne sais même pas ce que cela pourrait donner si la cible est différente du modèle utilisé (si j'entraine pour combattre un F22 et que je me retrouve face à un Rafale ?)...

Re: IA peut-il remplacer un pilote ?

Publié : jeu. juin 22, 2023 10:24 am
par 50H-Solo
Je n'y connais pas grand chose, seulement ce que je peut lire ici et là donc je n'ai surement qu'une mauvaise perception de la réalité.
Vu de devant ma porte, l'IA est censée apprendre au fur et à mesure de ses succès ou échecs.
Donc si tu codes ton modèle de départ dans DCS avec un opposant, disons un M2000 (Cocorico :Jumpy: ), au fur et à mesure des différents combats le comportement de l'IA se modifiera en prenant en compte le résultat de ses actions sur l'issue de l'engagement en fonction du type du taxi d'en face et réagira de mieux en mieux face à chaque avion qui lui est opposé non?
Du coup, je pense qu'il doit falloir un sacré volume de stockage pour sauvegarder la BDD générée et une capacité de traitement capable de gérer tout ça en temps réel, ce qui n'est pas forcément le cas avec nos machines domestiques.
Je suis curieux de connaitre ton avis, ça me permettra d'améliorer mon idée (celle d'un newbee en la matière :hum: :yes: ) de ce que peut être l'IA dans le domaine de la simulation.

Pour rester dans le thème du topic, l'IA pourrait-elle remplacer un humain ?
Vu ma perception actuelle de la chose, je pense que si on sépare la partie morale de l'affaire de la partie technique, ça pourrait arriver tôt ou tard.
Bon ou mauvais et quelqu'un prendra t'il un jour le risque de séparer (ou de s'affranchir de la) partie "philosophique" de l'équation ? That is the question comme diraient les Britanniques.

Re: IA peut-il remplacer un pilote ?

Publié : mar. juin 27, 2023 9:53 am
par FrenchFlx92
50H-Solo a écrit :
jeu. juin 22, 2023 10:24 am
Donc si tu codes ton modèle de départ dans DCS avec un opposant, disons un M2000 (Cocorico :Jumpy: ), au fur et à mesure des différents combats le comportement de l'IA se modifiera en prenant en compte le résultat de ses actions sur l'issue de l'engagement en fonction du type du taxi d'en face et réagira de mieux en mieux face à chaque avion qui lui est opposé non?
Du coup, je pense qu'il doit falloir un sacré volume de stockage pour sauvegarder la BDD générée et une capacité de traitement capable de gérer tout ça en temps réel, ce qui n'est pas forcément le cas avec nos machines domestiques.
C'est exactement ça : si le combat se termine par une victoire, on donne une bonne récompense, ce qui a pour effet de renforcer les actions qui ont été prises. A l'inverse si mauvais résultats on va dégrader les actions prises (tout ça en fonction de la situation des 2 appareils). Mais il faut garder une partie de ce qui a déjà été fait pour faire converger le modèle vers une solution stable. Actuellement, j'ai besoin de 60 000 combats pour converger et je garde 100 000 points caractéristiques dans un espace vectoriel de dimension 8 (le modèle avion est simple, ce qui fait 800 000 données, si je dois prendre en compte l'incidence et autres paramètres d'un modèle avion plus sophistiqué c'est x10 , x100, x1000 ...), uniquement pour un combat 1 contre 1.
Et plus il y a de données et plus il faut faire des traitements ... on arrive vite aux limites de nos machines. C'est pour cela que je commence par des exemples simples (un seul type d'avion, modèle avion simplifié, combat 1x1, pas de missiles, ...), mes premiers essais étaient même en 2d (altitude constante).

Re: IA peut-il remplacer un pilote ?

Publié : mar. juin 27, 2023 11:31 am
par 50H-Solo
Merci pour les précisions.
L'idée que je me faisait n'était pas si mauvaise (même si incomplète).
Par contre je n'avais aucune idée de l'ordre de grandeur de la taille de la base de donnée, je supposait qu'elle était mahousse mais ans pouvoir chiffrer sa taille.
Ca permet de mettre les choses en place dans ma petite tête.

Re: IA peut-il remplacer un pilote ?

Publié : mer. nov. 15, 2023 8:45 am
par emma13
L'IA qui remplace un pilote ? Un sujet très intéressant. Du coup, je suis fascinée par les intéractions qui se passent ici. Perso,je pense que prochainement avec l'évoution, ça va être difficile de différencier l'iA de l'humain partout. Je vais même essayer de demander quelques conseils en aviation à un chatbot pour voir ce qu'il me donne comme réponse. :Jumpy: