Aller au contenu

Expérience · Mécanique spatiale

Agence spatiale européenne, SpOC 4 : une tournée de 1 051 cibles en orbite lunaire

Cette expérience porte sur un problème de planification de mission : visiter, une fois chacune, 1 051 cibles en orbite autour de la Lune, en choisissant l’ordre des visites, les dates de départ et les durées de vol, pour que la mission s’achève le plus tôt possible, chaque transfert ayant un coût en vitesse limité. L’arbitre est la plateforme Optimize de l’Agence spatiale européenne (ESA), qui évalue chaque solution avec son simulateur officiel. Résultat : une tournée de 272,712 jours, meilleur score sur 51 entrées au relevé du 04/10/2026. La solution a été soumise le 02/10/2026, après la clôture de la compétition (30/06/2026) : le classement est un classement post-compétition.

272,712 jdurée de la tournée soumise, meilleur score sur 51 entréesrelevé du 04/10/2026
1 051 / 1 051cibles visitées une fois chacunecontrôle du 11/10/2026
100 m/slimite de coût de chaque transfert, avec 5 exceptions autorisées jusqu’à 600 m/s : contrainte respectéecontrôle indépendant du 11/10/2026, hors simulateur officiel
sha256 15d834e744f4…empreinte du fichier soumisvaleur complète en section 5

1. Le problème

Autour de la Lune, 1 051 cibles, que l’ESA nomme des « tomates », suivent chacune une orbite képlérienne : une ellipse parcourue sous la seule attraction de la Lune. Un vaisseau part de l’une d’elles, en rejoint une autre, puis une autre, jusqu’à les avoir toutes visitées une fois. Entre deux cibles, il effectue un transfert à deux impulsions : une première manœuvre quitte l’orbite de départ, une seconde se place sur celle de la cible d’arrivée à la date prévue. Le coût d’un transfert, somme des deux variations de vitesse, ne doit pas dépasser 100 m/s ; au plus 5 transferts, les « exceptions », peuvent aller jusqu’à 600 m/s. Les variables sont l’ordre des visites, les dates de départ et les durées de vol, soit 3 × 1 051 − 2 = 3 151 valeurs. Le score est la date d’arrivée à la dernière cible, en jours, à minimiser. Le défi propose trois instances (49, 181 et 1 051 cibles) ; cette page traite la plus grande, « large ».

2. Protocole de vérification

Le résultat est un vecteur de 3 151 nombres, déposé sur la plateforme Optimize. La plateforme l’évalue avec le simulateur officiel du problème, publié par l’ESA (code Python au format pygmo, transferts calculés avec la bibliothèque pykep), et en tire le score. Les chiffres de cette page sont ceux du classement relevé à la date indiquée.

ProblèmeKeplerian Tomato Traveling Salesperson Problem (SpOC 4, défi 2), instance « large » : 1 051 cibles en orbite lunaire, transferts limités à 100 m/s (5 exceptions jusqu’à 600 m/s), durée totale minimale
ArbitreESA, Advanced Concepts Team : plateforme Optimize, qui exécute le simulateur officiel
Résultat272,712 jours, meilleur score sur 51 entrées. Le détail de la solution n’est pas publié.
SourceAPI de la plateforme Optimize, relevé du 04/10/2026 ; clôture : README du dépôt esa/SpOC4 (« until 30 June 2026, End of Day, Anywhere on Earth »), relu le 11/10/2026 ; soumission du 02/10/2026, 18 h 07 UTC
Au relevé du 04/10/2026, la 2e entrée affiche 316,42 jours et la 3e 323,67 jours (écart avec la tournée soumise : 43,71 jours pour la 2e).

L’arbitre et le problème

La plateforme Optimize est développée par l’Advanced Concepts Team de l’ESA, qui organise SpOC 4 avec la conférence GECCO (quatrième édition du concours). Le problème a été formalisé par Bannach, Acciarini et Izzo, « The Keplerian Traveling Salesperson Problem » (arXiv:2605.00010). Le dépôt esa/SpOC4 fournit l’instance et le code de validation. Les soumissions de la compétition fermaient le 30 juin 2026 ; le portail est resté ouvert ensuite.

3. L’énoncé en images

Les figures de cette section illustrent le problème posé : elles sont tracées à partir de l’instance publiée par l’ESA, non de la solution. La figure principale montre en perspective les orbites des cibles, avec leurs vrais paramètres orbitaux ; la couleur est l’inclinaison. Toutes les orbites partagent la même ligne des nœuds (tirets or) et ne se distinguent que par leur inclinaison. Les cibles de l’anneau externe (demi-grand axe d’environ 15 000 km, période d’environ 1,906 j) forment trois amas d’inclinaisons voisines de 0°, 90° et 180° et deux échelles, avec une cible tous les 1,196° d’inclinaison (de 3,0° à 86,7°, puis de 92,7° à 177,6°). Celles de l’anneau interne (environ 3 750 km, période d’environ 0,238 j) forment trois amas. Une orbite sur huit est tracée pour les amas ; toutes celles des échelles le sont.

0°180°inclinaison

La rotation change le point de vue sur les orbites de l’instance ; elle ne simule pas un transfert ni ne recalcule les trajectoires. Les courbes et leurs paramètres restent ceux de l’énoncé ESA.

1 051 cibles · énoncé du problème, instance de l’ESA · couleur : inclinaison · tirets or : ligne des nœuds · disque gris : la Lune

Les cibles de l’instance, par famille

Chaque case est une cible de l’instance, regroupée par famille orbitale. L’anneau interne compte 450 cibles (demi-grand axe de 3 737 à 3 757 km) ; l’anneau externe en compte 601 (de 14 950 à 15 030 km). Familles : amas dont l’inclinaison est à moins de 2,2° de 0°, 90° ou 180°, et, pour l’anneau externe, les cibles restantes, qui forment les échelles. Cette carte décrit l’énoncé ; la ligne « Problème » de la section 2 en donne les limites. Les paramètres de l’instance sont dans esa_spoc4_instance.json.

anneau interne 0° · 150anneau interne 90° · 150anneau interne 180° · 150anneau externe 0° · 152anneau externe 90° · 154anneau externe 180° · 152échelle 0–90° · 71échelle 90–180° · 72

La physique en jeu : un transfert de Lambert entre deux orbites. Les deux exemples ci-dessous prennent deux cibles quelconques de l’instance, avec une date de départ et une durée de vol choisies pour l’illustration (départ au jour 10). Les points violet et cyan sont les deux cibles pendant le vol ; l’arc doré est la trajectoire du vaisseau, obtenue en résolvant le problème de Lambert puis en propageant le résultat sous l’attraction de la Lune ; le point doré arrive sur la cible d’arrivée à la date prévue.

Entre deux anneaux · cibles n° 0 et 13 de l’instance · vol de 0,35 j · coût de cet exemple : 864 m/s · vue de dessus
Entre deux orbites inclinées · cibles n° 12 et 34 de l’instance · vol de 1,2 j · coût de cet exemple : 600 m/s · vue le long de la ligne des nœuds

4. Résultat

La tournée soumise visite les 1 051 cibles une fois chacune et s’achève au jour 272,712. Au relevé du 04/10/2026, le classement de la plateforme compte 51 entrées. Le meilleur score de la période de compétition était d’environ 337,65 jours. Aucune borne inférieure n’est connue pour cette instance.

260280300320340272,712 (tournée soumise)316,42 (2e)323,67 (3e)≈ 337,65 (compétition)score en jours (à minimiser) · relevé du 04/10/2026
Scores connus du classement, en jours (plus petit = meilleur). Relevé du 04/10/2026.

5. Ce qui est vérifié, et par qui

  • L’arbitre (ESA). Le simulateur officiel de la plateforme Optimize évalue le vecteur déposé et publie le score, 272,712 jours au relevé indiqué. C’est cette évaluation qui établit le classement.
  • Contrôle avec le code officiel (02/10/2026). Le code du problème, téléchargé sur la plateforme et exécuté hors ligne avec pykep 2.6.2, rend [272,712 ; 0 ; 0 ; 0 ; 0] pour ce vecteur : la durée, puis des violations de contrainte toutes nulles.
  • Contrôle indépendant (11/10/2026). Un second contrôle, écrit sans le paquet officiel (orbites képlériennes, problème de Lambert), confirme la validité de la solution soumise : chaque cible est visitée une fois, les vols s’enchaînent dans l’ordre des dates, et chaque transfert respecte la limite de 100 m/s, dans la limite des 5 exceptions autorisées sous 600 m/s. C’est un contrôle interne ; le simulateur de l’ESA reste l’arbitre.
  • Empreinte du fichier soumis. Le sha256 ci-dessous est celui du fichier envoyé à la plateforme. Il fixe le résultat : tout fichier présenté plus tard comme la soumission se compare à cette empreinte.

Empreinte du fichier soumis
sha256 : 15d834e744f407ad4a6234023d04ffa97529c014dbc333c500c88b8f4f02eef0
Calculée sur le fichier tel qu’envoyé le 02/10/2026 ; contrôle ultérieur : sha256sum du fichier présenté.

Instance de référence pour les contrôles : fichier d’instance « large » du dépôt esa/SpOC4, sha256 aa0954f33a1adf6cf0c3a3e5e27d96ef92ff0e6d8b027efd2dadcde0c4437d54.

6. Ce que modélise cette question

Les auteurs du défi citent, parmi les missions concernées par ce problème, le retrait actif de débris, la maintenance en orbite et l’exploration de la ceinture d’astéroïdes : des missions qui doivent rejoindre plusieurs corps en mouvement (arXiv:2605.00010).

Mon projet d’IA au service de ma recherche

Ce défi n’est pas un but en soi : c’est un banc d’essai de ma recherche sur une IA embarquée certifiable. Mon projet d’IA, dont le fonctionnement reste confidentiel, me permet d’atteindre une tournée des 1 051 cibles en 272,712 jours, évaluée par le simulateur officiel de l’ESA, au meilleur score du classement relevé. Le certificat et l’arbitre en font foi : ce n’est pas mon explication qu’il faut croire, c’est le résultat qui se revérifie. Il s’agit du meilleur résultat connu à la date indiquée, pas d’un optimum démontré.

Tous les résultats, avec leurs sources et leurs dates

→ Voir la plateforme Optimize