Affirmé à partir de la seule structure du graphe, après avoir constaté que couper les six franchissements ferroviaires à la main sépare le nord du sud. Faux. Le balayage des 463 emplacements donne aux six ouvrages un gain de zéro personne, aux rangs 159 à 210, et cela sous trois variantes successives de modèle. Deux choses avaient été manquées : la crue ne coupe jamais les six franchissements — les trois ponts tiennent — et les dix-huit abris sont répartis des deux côtés du faisceau, si bien qu'aucun civil n'a besoin de traverser. Un résultat de connectivité avait été présenté comme un résultat de sauvetage.
Un piéton est arrêté par 30 cm d'eau, un poids lourd passe jusqu'à 50. Tant que les deux étaient traités comme un seul graphe, le nombre de personnes coupées était sous-estimé et les conclusions sur le corridor mélangeaient deux questions distinctes.
Premier calcul : gain nul pour les ouvrages — mais parce que l'emprise ferroviaire est le point haut de la carte, si bien qu'ils ne pouvaient pas se noyer. Deuxième tentative : un décalage de classe constant, qui rendait un sous-passage sec infranchissable. Troisième : un facteur multiplicatif sur la lame (×3,5 pour un sous-passage, ×0,4 pour un pont), qui traite correctement le cas sec. Les trois variantes donnent le même résultat sur les ouvrages, ce qui rend la conclusion du §1 robuste plutôt qu'accidentelle.
Les valeurs de la Table 2 sont en mm par minute, alors que l'article ne l'indique nulle part.
Sommation de chaque colonne, multiplication par la durée d'un tour, comparaison à l'événement réel que les auteurs déclarent simuler.
| P (ans) | somme des 18 tours | × 10 min | ratio à P=1 | 1 + 0,9·log P | écart |
|---|---|---|---|---|---|
| 0,5 | 4,23 | 42,3 mm | 0,7145 | 0,7291 | −2,0 % |
| 1 | 5,93 | 59,3 mm | 1,0000 | 1,0000 | 0,0 % |
| 2 | 7,60 | 76,0 mm | 1,2823 | 1,2709 | +0,9 % |
| 3 | 8,59 | 85,9 mm | 1,4489 | 1,4294 | +1,4 % |
| 5 | 9,83 | 98,3 mm | 1,6591 | 1,6291 | +1,8 % |
1 + 0,9·log₁₀(P) de leur propre formule d'intensité à moins de 2 %. Interprétées en
millimètres par tour, ces valeurs donneraient 9,8 mm au total : physiquement absurde. Toute
réimplémentation qui rate ce point se trompe d'un facteur 10.03_moteur_alea.py --check-table2
Les équations (1) et (2) de l'article sont corrompues, et les scores publiés ne se reproduisent pas depuis les tables.
| Ligne de l'article | t départ | t attendu | h | calculé | publié | |
|---|---|---|---|---|---|---|
| Météo — alerte aux résidents | 2 | 3 | 4 | 0,75 | 0,75 | concorde |
| Police — contrôle du trafic | 8 | 7 | 5 | 0,80 | 0,88 | écart |
| Police armée — consolidation | 16 | 14 | 4 | 0,50 | 0,60 | écart |
| Assainissement | 26 | 25 | 5 | 0,80 | 0,83 | interverti ? |
| Propagande | 20 | 21 | 6 | 0,83 | 0,80 | interverti ? |
| Contrôle | Attendu | Mesuré |
|---|---|---|
| Surface d'un hexagone de 260 m | 58 543,317 m² | 58 543,317 m² |
| Recouvrement entre cellules | 0 % | 0,000000 % |
| Trous dans le pavage | 0 | 6,2 × 10⁻¹⁰ m² au total |
| Distance entre voisins, sur 802 paires | 260 m | 0 écart > 1 m |
Les trous détectés représentent 7 × 10⁻¹⁵ % de la grille : du bruit de virgule flottante, pas
un défaut de maille. 01_build_hexgrid.py
| Grandeur | Méthode | Résultat |
|---|---|---|
| Orientation de la maille | autocorrélation du réseau, rapport des pas vertical et horizontal | 0,842 contre 0,866 théorique → pointy-top |
| Nombre de cellules | composantes connexes du complémentaire du réseau vert | 4 453 comptées |
| Pas de la maille | plus proches voisins entre centroïdes | 11,3 px |
| Emprise | 4 453 × 5,854 ha | ~260 km², env. 23 × 11 km |
Le comptage est un plancher — des cellules sont masquées par les pions. L'estimation par le pas de maille monte à ~5 600. Ordre de grandeur retenu : 4 500 à 5 600 hexagones.
| P (ans) | cumul | lame max | hexagones coupés | personnes coupées | 1re coupure |
|---|---|---|---|---|---|
| 1 | 59,3 mm | 47 cm | 31 | 2 595 | T13 |
| 2 | 76,2 mm | 68 cm | 214 | 11 458 | T12 |
| 3 | 86,1 mm | 83 cm | 337 | 16 969 | T11 |
| 5 | 98,6 mm | 98 cm | 512 | 24 453 | T11 |
Balayage de la capacité du réseau, averse quinquennale : de 14 à 30 mm/h, la part du territoire au-dessus de 30 cm passe de 49 % à 15 %. Balayage du coefficient de routage : de 0,10 à 0,40, elle passe de 24,7 % à 27,2 %.
Les auteurs affirment un drainage complet au dix-huitième tour. Le moteur donne le tour 18 comme maximum de la crise — 63 % du territoire actif au-dessus de 15 cm, pointe à 87 cm — et laisse des cuvettes fermées à 48 cm au tour 36. La gravité ne les vide pas.
Pour chacun des 457 hexagones atteignant la classe d'eau bloquante, plus les six ouvrages : recalcul complet de la carte d'accessibilité avec un camion-pompe posé là, et différence de population coupée. Puis sélection gloutonne des six meilleurs emplacements simultanés.
| Rang | Hexagone | Tissu | Personnes sauvées |
|---|---|---|---|
| 1 | 4206 | barres danwei | +574 |
| 2 | 1909 | barres danwei | +410 |
| 3 | 2308 | vieille ville | +358 |
| 4 à 7 | — | barres danwei | +328 |
| 8 à 14 | — | village urbain | +296 |
| 159 à 210 | les six ouvrages ferroviaires | ponts et sous-passages | 0 |
113 emplacements sur 463 donnent un gain non nul. Six camions bien placés sauvent 2 200 personnes sur 24 453, soit 9,0 %. Modeste, et honnête : le pompage ne renverse pas une crue, il préserve trois ou quatre passages.
Parties automatisées sous jsdom, sept stratégies × trois sévérités, en pilotant l'état du jeu directement plutôt qu'en simulant des clics.
| Stratégie | rappel | précision | superflus | note |
|---|---|---|---|---|
| Averse biennale | ||||
| Tout alerter au tour 1 | 88 % | 34 % | 21 520 | 1 % |
| Ciblage serré au tour 1 | 87 % | 41 % | 15 314 | 25 % |
| Ciblage parfait, oracle | 100 % | 100 % | 0 | 100 % |
| Averse quinquennale | ||||
| Tout alerter au tour 1 | 80 % | 63 % | 12 118 | 56 % |
| Ciblage serré au tour 1 | 74 % | 71 % | 7 474 | 59 % |
| Alerter au tour 5 | 4 % | 6 % | 16 300 | −28 % |
| Ne rien faire | 0 % | 0 % | 0 | −5 % |
| Contrôle | Résultat |
|---|---|
| Composantes connexes du réseau ouvert | 1 |
| Hexagones actifs isolés | 0 |
| Distance piétonne à l'abri | médiane 4, 90ᵉ percentile 6, maximum 9 |
| Population totale | 379 845 |
| Non abritables | 41 791, soit 11,0 % |
| Capacité d'abri | 32 400, soit 78 % du besoin |
| Liaisons | 3 553, dont 870 barrières et 24 arêtes d'ouvrage |
| Objet | Contrôle | Résultat |
|---|---|---|
| Pages HTML interactives | exécution sous jsdom, capture des erreurs | aucune erreur |
| Simulateur de décision | les cinq préréglages reproduisent le tableau de calage | exact |
| Gestes tactiles | pincement progressif, pinceau au doigt, mode main | conformes |
| Mise en place des pompes | en route → mise en place → en poste | un tour plein |
| Déplacement d'unité | trajet, contournement, blocage sur objectif inatteignable | conformes |
top entrait en collision avec window.top,
propriété native en lecture seule, ce qui tuait le script entier au chargement. La page s'affichait,
rien ne fonctionnait. C'est le genre de panne qu'une relecture ne trouve pas et qu'une exécution
automatisée trouve en une seconde.Répartition de la population résidentielle selon l'heure — part en déplacement, au travail, à l'école — puis parties automatisées sous jsdom, quatre stratégies × deux situations.
| Situation | à mettre à l'abri | alerte générale T1 | ciblage serré T1 | ciblage parfait |
|---|---|---|---|---|
| 3 h, nuit | 48 100 | 72 % de rappel | 57 % | 100 % |
| 8 h, pointe | 122 900 | 24 % | 42 % | 49 % |
1 clic -> pronostic 0 | alerte 7 (avant correction) 1 clic -> pronostic 7 | alerte 0 (après) glisser -> pronostic 25 | alerte 0 budget d'ordres : 3 sur 3, intact