SEXT20
δ = 41 m · dα = 1.000000° sur l'angle entre amers · empreinte 97d910ee4a27f8e5
7 amers lus dans « SEXT20.csv » (2 colonnes : x, y)
7 mesures lues dans le second fichier (i, j, angle en degres) sur 21 paires possibles.
Les amers
7 points, a 1293 a 4946 m de l'origine.
X
environ 552 m de large — soit 9 fois moins que la portee des amers. Le cercle en pointille le situe ; le detail est ci-dessous.
Les traits pales vont de l'origine vers chaque amer. L'observateur n'est pas a l'origine : il est quelque part dans X, et c'est tout ce qu'on sait de lui.
X
50910 ± 78 m²
X∩
73670 ± 310 m²
X ⊊ X∩ : la clôture par Floyd-Warshall améliore au moins une borne, donc X est strictement plus petit.
12 sommets certifiés.
le nuage de ToTal
3000 tirages ; 2911 tombent dans X∩ (97 %), 89 au dehors — ceux-là, les mesures les excluent.
3000 tirages ; 3000 tombent dans X∩ (100 %), 0 au dehors — ceux-là, les mesures les excluent.
3000 tirages ; 2595 tombent dans X∩ (86 %), 405 au dehors — ceux-là, les mesures les excluent.
3000 tirages ; 2805 tombent dans X∩ (94 %), 195 au dehors — ceux-là, les mesures les excluent.
3000 tirages ; 3000 tombent dans X∩ (100 %), 0 au dehors — ceux-là, les mesures les excluent.
3000 tirages ; 3000 tombent dans X∩ (100 %), 0 au dehors — ceux-là, les mesures les excluent.
l'ellipse à 95 %
la région de confiance de moindres (clôture) — celle qu'un EKF publierait. Chaque estimateur a la sienne : elles n'ont ni le même centre ni la même taille.
| σ | aire | de X | du nuage | position |
|---|
| dα/2 | 800.2 m² | 1.6 % | 12 % | dans X |
| dα/√3 | 1067 m² | 2.1 % | 16 % | dans X |
| dα | 3201 m² | 6.3 % | 42 % | dans X |
« position » : dans X, l'ellipse est incluse dans le garanti — plus petite que ce que les données permettent, mais elle ne désigne aucune position impossible. contient X serait le seul cas honnête au sens ensembliste ; sur les huit jeux de l'étude et les trois conventions, il ne s'est jamais produit. déborde : l'ellipse attribue une probabilité non nulle à des positions que le calcul prouve impossibles.
σ n'est pas une donnée du problème : le modèle borné dit |erreur| ≤ dα, sans loi. Les trois courbes sont la même ellipse à trois échelles — même centre, même orientation, demi-axes dans le rapport des σ. Le trait porté par chaque ligne du tableau est celui de sa courbe. La plus large tombe souvent hors du cadre, qui reste celui du certifié : n'en voir que deux est normal.
« du nuage » : la part du nuage des moindres carrés que l'ellipse couvre. Sous son propre modèle elle devrait en couvrir 95 % — c'est le même estimateur, tiré dans les mêmes tolérances. L'écart ne mesure pas le hasard : il mesure ce que le modèle gaussien suppose et que les données ne donnent pas — une loi bornée, et une erreur de carte que l'ellipse ignore.
l'ellipse à 95 %
la région de confiance de moindres (visées) — celle qu'un EKF publierait. Chaque estimateur a la sienne : elles n'ont ni le même centre ni la même taille.
| σ | aire | de X | du nuage | position |
|---|
| dα/2 | 5379 m² | 10.5 % | 48 % | dans X |
| dα/√3 | 7172 m² | 14.1 % | 59 % | dans X |
| dα | 2.151e+04 m² | 42.2 % | 94 % | dans X |
« position » : dans X, l'ellipse est incluse dans le garanti — plus petite que ce que les données permettent, mais elle ne désigne aucune position impossible. contient X serait le seul cas honnête au sens ensembliste ; sur les huit jeux de l'étude et les trois conventions, il ne s'est jamais produit. déborde : l'ellipse attribue une probabilité non nulle à des positions que le calcul prouve impossibles.
σ n'est pas une donnée du problème : le modèle borné dit |erreur| ≤ dα, sans loi. Les trois courbes sont la même ellipse à trois échelles — même centre, même orientation, demi-axes dans le rapport des σ. Le trait porté par chaque ligne du tableau est celui de sa courbe. La plus large tombe souvent hors du cadre, qui reste celui du certifié : n'en voir que deux est normal.
« du nuage » : la part du nuage des moindres carrés que l'ellipse couvre. Sous son propre modèle elle devrait en couvrir 95 % — c'est le même estimateur, tiré dans les mêmes tolérances. L'écart ne mesure pas le hasard : il mesure ce que le modèle gaussien suppose et que les données ne donnent pas — une loi bornée, et une erreur de carte que l'ellipse ignore.
Les sommets
| # | x (m) | y (m) | contraintes |
|---|
| 1 | 325.685 | 37.055 | (1,2) ∩ (1,3) |
| 2 | 321.774 | 28.894 | (1,2) ∩ (7,2) |
| 3 | 338.928 | 69.873 | (1,3) ∩ (1,5) |
| 4 | 180.992 | 100.848 | (1,5) ∩ (3,5) |
| 5 | 179.457 | 100.721 | (1,7) ∩ (3,5) |
| 6 | -65.283 | 45.485 | (1,7) ∩ (4,7) |
| 7 | -187.710 | -42.765 | (4,2) ∩ (5,1) |
| 8 | -212.923 | -28.910 | (4,2) ∩ (5,7) |
| 9 | -204.889 | -22.409 | (4,7) ∩ (5,7) |
| 10 | -102.845 | -72.455 | (5,1) ∩ (6,1) |
| 11 | -67.618 | -74.579 | (6,1) ∩ (7,1) |
| 12 | 38.539 | -54.006 | (7,1) ∩ (7,2) |
Chaque sommet est un enclos certifié ; la largeur du plus large vaut 5.7e-14 m.
Une méthode ponctuelle, jugée par X∩
ToTal — V. Pierlot et M. Van Droogenbroeck, A New Three Object Triangulation Algorithm for Mobile Robot Positioning, IEEE Transactions on Robotics 30(3):566-577, 2014 — rend un point, pas un ensemble. Il n'a pas de modèle d'erreur : on ne lui en fabrique pas un, on déforme les données dans les tolérances du calcul certifié (δ sur les amers, dα sur les angles, uniformément — le calcul certifié borne l'erreur, il ne la suppose pas centrée) et l'on regarde où la méthode place l'observateur.
| règle pour n > 3 | points | dans X∩ | dans X | pire violation |
|---|
| le triplet de plus grand |D| (le critère de fiabilité de l'article) | 3000 | 2911 — 97.0 % | 87.6 % | 1.2° |
|---|
| la plus petite ellipse d'incertitude (Madsen & Andersen 1998 — la règle publiée) | 3000 | 3000 — 100.0 % | 100.0 % | — |
|---|
| la moyenne pondérée par |D| | 3000 | 2595 — 86.5 % | 83.4 % | 2.6° |
|---|
| la médiane géométrique des triplets | 3000 | 2805 — 93.5 % | 93.2 % | 2.1° |
|---|
| les moindres carrés sur toutes les paires (y compris celles que la clôture déduit — ce que fait X) | 3000 | 3000 — 100.0 % | 100.0 % | — |
|---|
| les moindres carrés sur les seules paires visées (le maximum de vraisemblance) | 3000 | 3000 — 100.0 % | 100.0 % | — |
|---|
Le pourcentage qui compte est celui de X∩, et c'est le test honnête : ToTal n'emploie que deux des trois angles d'un triplet — il impose la fermeture au lieu de la constater, et ne peut donc pas voir ce que la clôture de Floyd-Warshall ajoute. Le juger sur X seul lui reprocherait des contraintes qu'il n'a jamais lues. Sur azimuts absolus les deux colonnes coïncident ; elles ne se séparent que sur graphe lacunaire.
La « pire violation » est un angle, pas une distance : un point à 2° quand dα en vaut 1.000000° viole la tolérance angulaire des deux tiers. Le convertir en mètres demanderait une direction, et il n'y en a pas une seule.
Le tracé et cette table ne sont pas de même nature que le reste de la page. X et X∩ sont certifiés : toute position hors d'eux est prouvée impossible. Le nuage est un échantillon — 3000 tirages, bruit « paires » — et ne prouve rien sur la méthode : il la montre.
Ce que cela a coûté
| lecture du tableur | 0.001 s |
|---|
| préparation du jeu | 0.005 s |
|---|
| calcul de X∩ et X | 6.004 s |
|---|
| aire et tracé | 0.770 s |
|---|
| nuage de ToTal | 0.289 s |
|---|
| total | 7.070 s |
|---|
Le calcul et l'analyse sont deux choses : la première est l'objet de l'étude, la seconde un outil pour la regarder. Leur coût ne dépend pas des mêmes choses — le calcul du jeu, l'analyse de la précision demandée.
Sur quoi
machine : Linux aarch64 -- Raspberry Pi 4 Model B Rev 1.1
4 coeur(s) a 1.50 GHz, 3.7 Go, 4 fil(s) demande(s)
calcul : intervalles fi64, mantisse hors solveur 256 bits
bati : Sep 7 2026, gcc 14.2.0
arrondi dirige disponible, socle : pthreads oui, rsgc non, flint non
gmp 6.3.0, mpfr 4.2.2, mpfi 1.5.4
sources : empreinte 15d85f1c0be5Les temps ci-dessus valent pour cette machine et pour elle seule. Ce qui se transporte d'une machine à l'autre, ce sont les rapports — pas les secondes.
Le jeu exact engendré (ce que lit le calcul)
# ==============================================================================
# Jeu SEXT20 -- engendre par preparer.py, NE PAS EDITER A LA MAIN
# 7 amers, portees 1293-4946 m depuis l'origine
# delta = 41 m (40 m de carte + 1 m d'arrondi des coordonnees)
# d_alpha = 1.000000 deg SUR L'ANGLE ENTRE AMERS
# dont 1.41e-04 arcsec de transcription, majores et absorbes
# 7 paires mesurees sur 21 possibles
# ==============================================================================
const NOM = "SEXT20"
const EMPREINTE = "97d910ee4a27f8e5" # signature des donnees, recopiee dans le resultat
const AMERS = Tuple{Rational{BigInt},Rational{BigInt}}[
(4453//1, 2152//1), # 1 azimut 64.21 deg
(3069//1, 2200//1), # 2 azimut 54.37 deg
(2016//1, 1935//1), # 3 azimut 46.18 deg
(-669//1, 3497//1), # 4 azimut 349.17 deg
(-1752//1, 1125//1), # 5 azimut 302.70 deg
(-2142//1, 534//1), # 6 azimut 283.99 deg
(-1280//1, -183//1), # 7 azimut 261.86 deg
]
const DELTA = Rational{BigInt}(41)
const T_D = Rational{BigInt}(863, 98890) # tan(d_alpha/2)
const MESURES = Dict{Tuple{Int,Int},Tuple{Rational{BigInt},Int}}(
(1,2) => (5829//74539, 0),
(1,7) => (92602//14431, -1),
(2,3) => (5867//76196, 0),
(3,4) => (31341//56968, 0),
(4,5) => (37855//90311, 0),
(5,6) => (7661//47373, 0),
(6,7) => (12821//68165, -1) )
Le journal du calcul
machine : Linux aarch64 -- Raspberry Pi 4 Model B Rev 1.1
4 coeur(s) a 1.50 GHz, 3.7 Go, 4 fil(s) demande(s)
calcul : intervalles fi64, mantisse hors solveur 256 bits
bati : Sep 7 2026, gcc 14.2.0
arrondi dirige disponible, socle : pthreads oui, rsgc non, flint non
gmp 6.3.0, mpfr 4.2.2, mpfi 1.5.4
========================================
SEXT20 (7 amers)
========================================
7 amers, 14 contraintes orientees
elagage sur 13 boites : 5 paires sur 91
X∩ : 5 sommets en 0.160 s (elagage 0.026, solveur 0.118, filtres 0.011)
boite de depart reprise de X∩ : x[-338, 383] y[-89, 152]
germe repris de X∩ : 5 contrainte(s)
critere : la cloture apporte 0 amelioree(s) et 28 fabriquee(s) sur 42 -> X inclus strictement dans X∩, il faut calculer X
Floyd-Warshall certifie sur le graphe des mesures (7 amers)...
coherence de type I : OK
la cloture apporte : 0 borne(s) amelioree(s) et 28 fabriquee(s) sur 42 -> X inclus dans Xinter
--- iteration 1 : x[-338, 383] y[-89, 152]
origine des angles : secteur libre 183.1 deg
contraintes conservees : 42 sur 42
ensemble actif, tour 1 : |A| = 5, 5 sommet(s), 18 violee(s) (plafonne)
ensemble actif, tour 2 : |A| = 9, 7 sommet(s), 7 violee(s) (plafonne)
ensemble actif, tour 3 : |A| = 13, 10 sommet(s), 3 violee(s)
ensemble actif, tour 4 : |A| = 16, 12 sommet(s), 0 violee(s)
sommets certifies : 12
certificat 1 : 26 prouvee(s) redondante(s), 0 douteuse(s), 845 cellule(s)
--- iteration 2 : x[-213, 339] y[-75, 101]
origine des angles : secteur libre 188.8 deg
contraintes conservees : 42 sur 42
ensemble actif, tour 1 : |A| = 12, 12 sommet(s), 0 violee(s)
sommets certifies : 12
certificat 1 : 29 prouvee(s) redondante(s), 1 douteuse(s), 1213 cellule(s)
ensemble actif, tour 1 : |A| = 13, 12 sommet(s), 0 violee(s)
certificat 2 : 29 prouvee(s) redondante(s), 0 douteuse(s), 1053 cellule(s)
point fixe atteint.
statut : ok
boite : x[-213.000000, 339.000000] y[-75.000000, 101.000000]
sommets : 12 contraintes actives : 12
bord : 12 arete(s), cycle unique
certificat : 2 passe(s), 13 actives sur 42 gardees, 3111 cellule(s)
memoire : pic 37.3 Mo
temps : X∩ 0.160 s X 5.836 s aire 0.000 s bord 0.000 s calcul 5.997 s mural 5.997 s
solveur : direct=465 erreur=0 asymptote=0 non_gen=0 plusieurs=0 coords=0
dont decomposition 12.13 s, solve_ratparam_real 2.18 s
ecrit : /tmp/geoloc-m1lc4pnb/SEXT20.resultat.json
========================================
SEXT20_courbes (7 amers) -- analyse de /tmp/geoloc-m1lc4pnb/SEXT20.resultat.json
========================================
aire de X∩ : [73360, 73980] m2 (0.834 %, niveaux 2 ; 20 prouvee(s), 0 mesuree(s), 0 majoree(s))
bord de X∩ : 20 points (fleche 0.84 px a 2160, niveaux 2)
aire de X : [50830, 50990] m2 (0.305 %, niveaux 2 ; 48 prouvee(s), 0 mesuree(s), 0 majoree(s))
bord de X : 48 points (fleche 0.51 px a 2160, niveaux 2)
temps : aire 0.700 s bord 0.064 s
ecrit : /tmp/geoloc-m1lc4pnb/SEXT20.analyse.json
← un autre tableur
Sommets certifiés par arithmétique exacte sur ℤ ; aire garantie — la flèche de chaque sous-arc est majorée, pas échantillonnée. Le tracé est la polyligne du calcul lui-même, point par point.