Vous êtes nouveau sur Developpez.com ? Créez votre compte ou connectez-vous afin de pouvoir participer !

Vous devez avoir un compte Developpez.com et être connecté pour pouvoir participer aux discussions.

Vous n'avez pas encore de compte Developpez.com ? Créez-en un en quelques instants, c'est entièrement gratuit !

Si vous disposez déjà d'un compte et qu'il est bien activé, connectez-vous à l'aide du formulaire ci-dessous.

Identifiez-vous
Identifiant
Mot de passe
Mot de passe oublié ?
Créer un compte

L'inscription est gratuite et ne vous prendra que quelques instants !

Je m'inscris !

L'IA aurait résolu en moins d'une seconde « le problème à trois corps », vieux de trois siècles,
Grâce à un réseau neuronal, d'après des chercheurs

Le , par Stan Adkens

107PARTAGES

24  2 
Des chercheurs de l'Université de Cambridge viennent de trouver un moyen de résoudre plus rapidement un problème astronomique majeur vieux de plusieurs siècles. Il s’agit du « problème à trois corps » formulé par le physicien britannique Isaac Newton il y a plus de 300 ans. En effet, lorsque trois corps célestes - par exemple la Terre, la Lune et le Soleil - orbitent l'un autour de l'autre, leurs forces gravitationnelles produisent un système particulier et apparemment imprévisible.

Les astronomes s'interrogent depuis lors sur la façon de prédire où chaque masse se trouvera dans l'espace et dans le temps à un moment donné, cherchant à résoudre le problème avec les ordinateurs conventionnels. Mais ce casse-tête semble être résolu, selon un rapport publié plus tôt ce mois par Live Science, un site Web d'informations scientifiques. Le mois dernier, les chercheurs avaient déjà publié un document sur leur recherche – qui n'a pas encore fait l'objet d'un examen par leurs homologues – dans les archives préimprimées ArXiv.


Selon le rapport de Live Science, les chercheurs ont travaillé d'arrache-pied en se basant sur des approches qui jusqu’à présent utilisent un logiciel qui peut prendre des semaines, voire des mois, pour résoudre ces problèmes. Avec les avancées enregistrées par l’IA, les chercheurs ont donc décidé de voir si un réseau neuronal pourrait accélérer considérablement les choses et faire mieux que le système de calcul existant. L'algorithme IA qu'ils ont construit à cet effet a fourni des solutions précises jusqu'à 100 millions de fois plus rapidement que le logiciel le plus avancé, connu sous le nom de Brutus, d’après le rapport de Live Science.

Pour leur étude, des chercheurs de l'Université de Cambridge ont construit un réseau neuronal qui doit être formé en recevant des données préliminaires avant de pouvoir faire des prédictions. Les chercheurs ont donc dû produire 9 900 scénarios simplifiés à trois corps en utilisant Brutus, le logiciel le plus utilisé actuellement pour résoudre les problèmes à trois corps. Ils ont ensuite transmis ces scénarios au réseau neuronal pour lui d’apprendre comment les résoudre, avant de tester dans quelle mesure le réseau neuronal pouvait prédire l'évolution de 5 000 scénarios inédits.

Selon Live Science, les résultats ont été édifiants. L'IA de l'équipe de Cambridge a résolu les problèmes en moins d'une seconde chacun, en produisant des résultats qui correspondaient étroitement à ceux de Brutus. Alors que Brutus a pris beaucoup plus de temps : presque deux minutes pour chaque scénario. Ces résultats pourraient s'avérer inestimables pour les astronomes qui essaient de comprendre des choses comme le comportement des constellations d'étoiles et l'évolution plus large de l'univers, a déclaré Chris Foley, biostatisticien à l'Université de Cambridge et coauteur du document partagé sur la base de données ArXiv.

« Ce réseau neuronal, s'il fait du bon travail, devrait être en mesure de nous fournir des solutions dans un délai sans précédent », a déclaré M. Foley à Live Science. « Alors on peut commencer à penser à faire des progrès avec des questions plus profondes, comme comment se forment les ondes gravitationnelles », a-t-il ajouté.

Les chercheurs ont également déterminé la raison pour laquelle leur réseau neuronal est plus rapide que les systèmes conventionnels. Selon M. Foley, les programmes comme Brutus sont si lents parce qu'ils résolvent le problème par la force brute, en effectuant des calculs pour chacune des petites étapes des trajectoires des corps célestes. Le réseau neuronal, d'autre part, observe simplement les mouvements que ces calculs produisent et déduit un modèle qui peut aider à prédire comment les scénarios futurs vont se dérouler, a rapporté Live Science.

L'approche des chercheurs basée sur un réseau neuronal pourrait poser quelques problèmes

Il s’avère que le réseau neuronal des chercheurs résout les problèmes à trois corps plus rapidement que les précédents logiciels, toutefois, cette nouvelle approche comporte de nombreuses limites quand il va s’agir de la mise à l'échelle du système, a dit M. Foley. En effet, l'algorithme actuel est une preuve de concept et s'appuie sur des scénarios simplifiés, mais la formation sur des scénarios plus complexes ou même l'augmentation du nombre de corps impliqués à quatre sur cinq nécessite d'abord de générer les données sur Brutus, ce qui peut prendre beaucoup de temps et être extrêmement coûteux, a expliqué M. Foley.


A ce propos, M. Foley a déclaré : « Il y a une interaction entre notre capacité à former un réseau neuronal fantastiquement performant et notre capacité à obtenir des données avec lesquelles nous pouvons l'entraîner ». « Il y a donc là un goulot d'étranglement », a-t-il ajouté.

Mais les chercheurs espèrent créer un système « hybride » : un logiciel comme Brutus pourrait faire le travail difficile au départ, qui consiste à générer les données d’apprentissage, puis un réseau neuronal prendrait « seulement les parties de la simulation qui impliquent des calculs plus complexes qui enlisent le logiciel », a expliqué M.Foley. Toutefois, ce système nécessiterait la création de protocoles normalisés pour s'assurer que les données sont toutes d'un format et d'une norme uniformes, a dit M. Foley.

Il y a une seconde limite qu’il faut résoudre dans l’approche actuelle des chercheurs de l'Université de Cambridge afin qu’elle devienne performante, a dit M. Foley. En effet, le réseau neuronal ne peut durer qu'un certain temps, alors qu’il n'est pas possible de savoir à l'avance combien de temps un scénario particulier prendra pour se terminer, de sorte que l'algorithme peut s'essouffler avant que le problème soit résolu.

Mais comme les chercheurs ne comptent pas faire fonctionner le réseau neuronal de manière isolée, ce dernier n’assumera que les parties de la simulation qui impliquent des calculs plus complexes qui enlisent le logiciel Brutus, de sorte à avoir assez de temps pour achever ces tâches.

« Vous créez cet hybride, » a dit M. Foley. « Chaque fois que Brutus est coincé, vous utilisez le réseau neuronal et vous le faites avancer. Et ensuite vous évaluez si oui ou non Brutus s'est décoincé », a-t-il ajouté.

Les conclusions de la recherche sont impressionnantes et pourraient constituer un grand pas en avant dans ces types de calculs. Cependant, obtenir les mêmes résultats 100 millions de fois plus rapidement avec le réseau neuronal qu’avec Brutus, les chercheurs ont-il effectué de véritables calculs sur les 5 000 scénarios de l’expérience avec le logiciel ou ont-ils procédé à des approximations ? Toutefois, l’algorithme des chercheurs de Cambridge fera l’objet d’examen minutieux de la part d’autres chercheurs.

Sources : Live Science, ArXiv

Et vous ?

Que pensez-vous des conclusions de la recherche des chercheurs de l’Université de Cambridge ?
L'algorithme qu'ils ont construit fournit des solutions précises jusqu'à 100 millions de fois plus rapides que le programme logiciel le plus avancé, appelé Brutus. Quel commentaire en faites-vous ?
Est-ce que c'est juste une approximation, ou une vraie solution ?

Lire aussi

Un réseau neuronal reconstruit les pensées humaines à partir des ondes cérébrales en temps réel, ce qui améliorera les dispositifs de rééducation post-AVC, selon une nouvelle recherche
Des chercheurs ont mis au point une IA capable de lire l'activité cérébrale d'une personne en temps réel, et de la représenter sous forme d'image
« L'intelligence artificielle n'existe pas et la voiture autonome n'existera jamais », selon un expert en IA
La France bannit les IA de prédiction des comportements des juges, les technologies de justice prédictive sont-elles une menace pour la société ?

Une erreur dans cette actualité ? Signalez-le nous !

Avatar de Matthieu Vergne
Expert éminent https://www.developpez.com
Le 11/11/2019 à 13:44
Je ne suis pas assez familier du domaine astronomique pour connaître les détails de Brutus, mais que celui-ci fasse des approximations ou pas, le réseau neuronal ne fait que des approximations supplémentaires par dessus. Ne servant qu'à reproduire des situations connues, un réseau neuronal ne permet que de faire de l'optimisation en faisant des simplifications. Simplifications qui, au demeurant, sont peu compréhensibles, et donc dont il est difficile de prédire la fiabilité.

Tous les projets basés sur un réseau neuronal souffrent du même problème : ce système ne permet que de simuler du connu à coup d'approximations, en posant l'hypothèse orgueilleuse que les nouveaux cas seront aussi bien simulés que les anciens, jusqu'à preuve du contraire. Un tel système ne devrait être utilisé que pour ça : gagner du temps au prix d'un taux d'erreur plus grand mais difficilement calculable.

L'idée de l'utiliser sur les parties bloquantes de Brutus est donc bien pensée, mais il ne faut pas omettre qu'une alternative peut être nécessaire pour gérer les cas d'erreur.
18  0 
Avatar de frfancha
Membre éclairé https://www.developpez.com
Le 11/11/2019 à 13:15
Bon...
Alors 1 le système des trois corps n'est absolument pas imprévisible, c'est quoi cette contrevérité??
C'est juste qu'il n'y a pas de formule exacte qui a été trouvée et du coup on y va par approximations linéaires, ce que fait justement Brutus.
2: le système neuronal n'a absolument pas remplacé la force brute, il permet juste (et c'est pas mal on est d'accord), une fois un paquet de situations calculées par la force brute, de calculer d'autres situations similaires plus intelligemment que en continuant à la force brute.
10  0 
Avatar de JefGDev
Membre à l'essai https://www.developpez.com
Le 14/11/2019 à 9:20
Quand est ce que l'on arrêtera de parler d'"intelligence" avec ce genre de programme (les RN)? Il n'y a rien d'intelligent. De plus, on dirait que c'est nouveau, alors que cela existe depuis 20 ans au moins. Les seules différences, c'est que l'on a maintenant des serveurs de calcul bien plus puissants et surtout... un réseau internet qui met à disposition des centaines de milliers d'esclaves humains sous payés (les Turcs d'Amazon par exemple) pour entrer les millions d'exemples nécessaires pour la classification automatique. En dehors de ça, les progrès sont bien minces.
Et ce problème en est bien la preuve, il a fallu faire tourner Brutus des milliers de fois pour fournir des exemples ingurgités par le RN. Déjà, je me pose une question dont on n'a pas la réponse ici : le RN peut il résoudre le même problème avec des conditions initiales différentes (trajectoires initiales différentes, masses des corps différentes) ? Et ensuite, on voit bien que cette "intelligence" est vraiment limitée puisque incapable de passer à un corps supplémentaire, alors que les vrais problèmes se posent avec une dizaine de corps (trajectoire d'une fusée vers Mars par exemple).

Quand je faisais de l'IA dans les années 90, un jeune embauché fier de cette technologie se faisait fort de tout résoudre avec. Il suffisait de venir le voir et de lui proposer un problème, puis d'attendre. Longtemps. Très longtemps. D'ailleurs il y en a qui doivent encore attendre.

En fait, ce sont des technos adaptées à certains problèmes, rien de magique. Et encore à la condition d'avoir un panel d'exemples de taille suffisante et dont la validité est prouvée - le grand danger des systèmes à base d'IA est la capacité d'orienter la classification d'origine. Par exemple si vous fournissez un panel d'exemples de classifications des personnes où ou vous indiquez "gentil" pour ceux qui ont la peau blanche et "méchant" pour les autres, je vous laisse deviner ce que sortira l'"intelligence" artificielle. Mais personne ne contrôle les entrées quand ce sont des sociétés comme Google qui prennent un problème en main...
6  0 
Avatar de anykeyh
Membre confirmé https://www.developpez.com
Le 11/11/2019 à 13:54
Les RN ne permettent que des approximation de fonctions a N dimensions. Forcement cela doit bien marcher pour les cas triviaux mais les cas non triviaux non anticipé c'est la catastrophe niveau taux d'erreur à mon avis.

Quand à la "résolution du problème", non pas vraiment, comme ci j'annonçais que "l'AI a résolu les équations de navier stokes" (il y a forcement un ou deux articles prometteur dans ce lot)
2  0 
Avatar de franck91610
Candidat au Club https://www.developpez.com
Le 14/11/2019 à 8:29
Le problème des calculs de gravitation à trois est que les approximation linéaires utilisées pour approcher le résultat ont une précision variable qui peut tendre vers l'infinie dans certain cas pour obtenir une précision finale suffisante.
C'est comme le calcul de la trajectoire une boule de billard dans un billard qui comporte des obstacles ronds. C'est un système chaotique au sens mathématique, la précision de calcul devient infinie dans certain cas d''ou l'indécidabilité, même si le système et les équations qui le décrivent sont parfaitement connus

Ce qui m'étonne dans cette approche ce sont les modèles que l'IA utilisent pour approximer les résultats de Brutus. Est-ce des modèles prédéfinies que l'IA choisie à partir du contexte courant grace à l'apprentissage préalable ou est-ce des modèles que l'IA 'invente'.
Dans ce dernier cas quels sont les degres de liberté qui est données à l'IA pour définir un modèle? j'aurais bien aimé le savoir.

Dans ce dernier cas, le modèle trouvé par l'UI fonctionne certainement que un range précis de valeur (dans un espace géométrique spécifique de la simulation qui pourrait être très petit) au delà duquel la précision devient trop faible et alors comment connaître les limites du modèle au delà desquelles les calculs deviennent trop imprécis par rapport à la réalité (déjà approchée par Brutus) et passer à un autre.
bref, sujet pas simple, mais intéressant.
1  0 
Avatar de pvincent
Membre confirmé https://www.developpez.com
Le 14/11/2019 à 9:30
Je me risque à quelques commentaires bien que je ne connaisse pas
grand chose au sujet et rien du logiciel Brutus.

L'affirmation
Alors 1 le système des trois corps n'est absolument pas imprévisible, c'est quoi cette contrevérité??
C'est juste qu'il n'y a pas de formule exacte qui a été trouvée
semble inexacte d'après Wikipedia (https://fr.wikipedia.org/wiki/Probl%...%C3%A0_N_corps)

Contrairement à une idée répandue, le problème à trois corps possède une solution analytique exacte, découverte par Karl Sundman en 1909. Malheureusement, cette solution se présente sous la forme d'une série infinie qui converge très lentement, ce qui la rend inutile en pratique pour faire des prédictions en un temps raisonnable.
Il semble que l'article mériterai une mise à jour au sujet des temps de calcul.
La version anglaise est plus prolixe sur un certain nombre de cas particuliers.

Comme indiqué par les auteurs, c'est un système chaotique, c'est à dire un problème dit "sensible aux conditions initiales" ou "mal posé". En clair cela signifie qu'une variation infiniment petite des conditions initiales peut donner une solution complètement différente. Une figure de la publication dans ArXiv illustre ceci.
Il faut remarquer qu'il s'agit d'une propriété mathématique intrinsèque qui pourrai rendre les solutions trouvées sans intérêt sauf si il existe un nombre fini de solution stables vers lesquelles tend l'algorithme. Cela semble être le cas, comme ça l'est pour les fractales classiques.

Cet article est un bel exemple (le 1er?) d'utilisation de l'apprentissage automatique pour accélérer la vitesse de convergence de l'algorithme utilisé.
Il serai intéressant de savoir si ces méthodes sont appliquées dans d'autre domaines (météo,...)
1  0 
Avatar de Axel Mattauch
Membre à l'essai https://www.developpez.com
Le 14/11/2019 à 12:47
En préalable a mes commentaires, je précise que je ne dénigre aucunement la démarche utilisée ni l'intérêt des résultats obtenus.
Par contre je considère que l'intitulé du billet est en décalage avec ledit résultat.
Ce que j'en comprends, c'est qu'une approche par réseaux de neurones a permis de mettre en place un procédé de calcul visant à définir l'évolution d'un système à trois corps de façon efficiente, c'est à dire produisant des résultats de calculs sensiblement équivalents à d'autres approches numériques, mais de façon drastiquement plus rapide. C'est bien.

Mais cette technique de calcul ne constitue pas une résolution de problème, pas plus que toute technique alternative connue ou à développer. S'il n'est pas nécessaire de trouver des formules analytiques décrivant l'évolution de l'état du système pour considérer qu'on a une "solution", un problème ne peut être considéré comme "résolu" s'il ne satisfait pas à d'autres critères. Sans être exhaustif:
  • Peut-on caractériser formellement une limite des écarts entre état calculé et valeur effective?
  • Est-il possible de raisonner à partir des résultats et d'en tirer des conclusions directes (par exemple: peut-on déterminer la distance minimum entre deux des corps dans un temps illimité)?
  • Comment valider les résultats des calculs?
  • Est-il possible d'extrapoler à 4..N corps?


En conséquence, je considère que l'on dispose de moyens pour étudier le comportement du système à trois corps, mais pas une solution conceptuelle.

En marge de la notion de validation, je pense pertinent de souligner qu'en l'état, il s'agit d'un problème d'ordre mathématique (on part des équations différentielles). Une validation s'appuyant sur des données astronomiques est certes utile, mais suppose que par ailleurs, les équations différentielles soient représentatives de la physique des phénomènes, ce qu'on sait déjà ne pas être le cas (un système à trois corps isolés n'existe pas, le champ gravifique ne se propage pas instantanément, sans même parler de relativité).
Si des techniques de calcul permettent empiriquement de faire des prédictions qui s'avèrent en accord avec les constatations, eh bien c'est un moyen que je ne vais pas dénigrer pour son utilité. Conceptuellement cela relève de la règle de trois (en plus sophistiqué).

Un dernier commentaire à propos de l'IA: je souscris totalement au point de vue de JefGDev sur les miracles attendus des RN. Il faut beaucoup d'intelligence naturelle pour mettre en service, évaluer, juger les résultats de l'IA.
1  0 
Avatar de Matthieu Vergne
Expert éminent https://www.developpez.com
Le 14/11/2019 à 22:10
Citation Envoyé par franck91610 Voir le message
Ce qui m'étonne dans cette approche ce sont les modèles que l'IA utilisent pour approximer les résultats de Brutus. Est-ce des modèles prédéfinies que l'IA choisie à partir du contexte courant grace à l'apprentissage préalable ou est-ce des modèles que l'IA 'invente'.
Dans ce dernier cas quels sont les degres de liberté qui est données à l'IA pour définir un modèle? j'aurais bien aimé le savoir.
Un réseau de neurones se base sur un ensemble de neurones qui, pris individuellement, doivent respecter un certain modèle mais qui, dans leur ensemble, s'arrangent entre eux pour tenter de reproduire au mieux ce qu'on leur demande de reproduire.

Pour rappel, le principe du neurone est d'avoir plusieurs entrées (les sorties des neurones précédents) et de faire un calcul type sur ces entrées (e.g. +1 dès que la somme des entrées dépasse une certaine valeur, 0 sinon). Son état est ensuite envoyé aux neurones suivants pour qu'eux aussi fassent leur propre calcul. Ces calculs types sont les contraintes du système : c'est ces calculs là et pas d'autres.

Là où le réseau de neurone a des marges de manœuvre, c'est que les entrées sont pondérées : les neurones précédents sont considérés avec plus ou moins d'importance dans le calcul, typiquement aléatoire au départ. Lors de l'apprentissage, ces poids sont adaptés pour diminuer les erreurs faites sur les données d'apprentissage (i.e. pour telles entrées du réseau, on s'attend à telles valeurs à l'autre bout). Ce processus d'adaptation est totalement libre dans le sens où, même s'il finit par converger plus ou moins vers le même comportement global, chaque poids peut varier de manière complètement différente en fonction de comment ils ont été initialisés. Cela veut dire qu'à la fin de deux apprentissages démarrés à partir de poids différents, les deux réseaux peuvent converger sur les même règles, sur des règles similaires mais représentées différemment, ou sur des règles complètement différentes mais dont les effets sont équivalents. Dans tous les cas, ces règles sont sujettes à l'aléatoire et s'exprime en fonction de l'ensemble complet des calculs types et des poids présents, ce qui donne une grosse difficulté d'interprétation.

La représentativité du modèle et sa précision sont d'ailleurs de vrai questions dont il n'y a pas vraiment de réponse satisfaisante. Il existe des méthodes de comparaison, mais rien d'exhaustif.
1  0 
Avatar de Christian_B
Membre habitué https://www.developpez.com
Le 16/11/2019 à 14:20
Petite rectification :
Citation Envoyé par Axel Mattauch
le champ gravifique ne se propage pas instantanément, sans même parler de relativité
C'est bien la relativité générale qui a introduit une théorie de la gravitation avec propagation à vitesse finie, conformément à la notion de vitesse limite déjà introduite dans la relativité restreinte.
En mécanique classique, la théorie de la gravitation (formulée par Newton) impliquait une action instantanée à distance. Cela d'ailleurs gênait Newton, mais à l'époque l'état des moyens expérimentaux et mathématiques ne permettait pas de faire mieux.
0  0