Y’a-t-il un GPS dans le Donjon ?

Chapitre 1

Introduction


Il était une fois…


Brice Aramini

Architecte SIG

dit

TomTom


Sylvain Gougouzian

Développeur / Formateur

dit gouz

NaNar




“Découvrons le ensemble”

Chapitre 2

Dessine-moi une carte !


Un peu d'histoire

de l'Antiquité à nos jours

L’Antiquité

3 000 av. J.-C.
Ga-Sur - Nuzi en Irak
Ga-Sur - Nuzi en Irak
12 ap. J.C.
La Table dite de Peutinger
La Table dite de Peutinger
150 ap. J.C.
Ptolémée
Ptolémée

1525
Oronce Fine
Oronce Fine
1550
Pierre Desceliers
Pierre Desceliers
1569
Atlas de Gérard Mercator
Atlas de Gérard Mercator

Cartographie moderne
(XV-XVIIIème siècle)

1749
Carte de Cassini
Carte de Cassini

1800
Carte de l’Empereur
Carte de l’Empereur
1827
Carte d'État-major
Carte d'État-major

La cartographie moderne
(XIX-XXème siècle)

1922
Carte au 1:20 000 de l’IGN
Carte au 1:20 000 de l’IGN
Année 50
Carte au 1:100 000 de l’IGN
Carte au 1:100 000 de l’IGN
Carte du Mont Blanc au 1:10 000
Carte du Mont Blanc au 1:10 000
1972
Carte IGN « type 1972 »
Carte IGN « type 1972 »

Google Maps
Google Maps

La cartographie de nos jours

OSM
OSM

La Géomatique

Contraction de géographie et informatique

1960 par le scientifique français Bernard Dubuisson

Trois activités distinctes des données géographiques:

Chapitre 3

Comment se repère-t-on
sur une carte ???


Obtenir des coordonnées !

2 types possibles:

les différents types de systèmes
les différents types de systèmes

Les différents systèmes de projection

Différents types de projection
Différents types de projection
CylindriqueConiqueAzimutale
Mercator projection
Mercator projection
les différents types de systèmes
les différents types de systèmes
les différents types de systèmes
les différents types de systèmes

Système de projection officiel

Systeme de coordonnées

Chapitre 4

Comment on se dirige alors ?


Comment on calcule une distance ?


CheCheDaWaff CC BY-SA 4.0
CheCheDaWaff CC BY-SA 4.0

Haversine



h = hav(d/r)


const d = haversineDistanceKM(42.806911, -71.290611, 42.741, -71.3161);

const haversineDistanceKM = (lat1Deg, lon1Deg, lat2Deg, lon2Deg) => {
    const toRad(degree) => degree * Math.PI / 180;

    const lat1 = toRad(lat1Deg);
    const lon1 = toRad(lon1Deg);
    const lat2 = toRad(lat2Deg);
    const lon2 = toRad(lon2Deg);

    const { sin, cos, sqrt, atan2 } = Math;

    const R = 6371; // earth radius in km
    const dLat = lat2 - lat1;
    const dLon = lon2 - lon1;
    const a = sin(dLat / 2) * sin(dLat / 2)
            + cos(lat1) * cos(lat2)
            * sin(dLon / 2) * sin(dLon / 2);
    const c = atan2(sqrt(a), sqrt(1 - a));
    const d = 2 * R * c;
    return d; // distance in km
}

La théorie des graphes


Portrait de Leonard Euler par Jakob Emanuel Handmann
Portrait de Leonard Euler par Jakob Emanuel Handmann

Leonard “the GOAT” Euler

1707 ~ 1783

🇨🇭

S – A + F = 2


Portrait de Edsger Dijkstra par Hamilton Richards
Portrait de Edsger Dijkstra par Hamilton Richards

Edsger Dijkstra

1930 ~ 2002

🇳🇱


Algorithme de Dijkstra

1959

Plus court chemin entre 2 points

flowchart LR
  id1(A) <-- 7 --> B <-- 13 --> C <-- 3 --> id2(F)
  id1(A) <-- 15 --> D <-- 2 --> E <-- 14 --> id2(F)
  B <-- 4 --> E
  D <-- 5 --> C
  style id1 fill:#0F0
  style id2 fill:#F00,color:#fff

ABCDEF
0 A
·7 A15 A
··20 B15 A11 B
··13 E·25 E
··18 D··25 E
·····21 C

F <- C <- D <- E <- B <- A


flowchart LR
  id1(A) <-- 7 --> B <-- 13 --> C <-- 3 --> id2(F)
  id1(A) <-- 15 --> D <-- 2 --> E <-- 14 --> id2(F)
  B <-- 4 --> E
  D <-- 5 --> C
  style id1 fill:#0F0
  style id2 fill:#F00,color:#fff

flowchart LR
  id1(A) <-- 7 --> B
  B <-- 4 --> E
  C <-- 3 --> id2(F)
  D <-- 5 --> C
  D <-- 2 --> E
  style id1 fill:#0F0
  style id2 fill:#F00,color:#fff

Algorithme A*

Peter Hart, Nils Nilsson, Bertram Raphael

1968

Dijkstra++

On ajoute estimation “vol d’oiseau”


flowchart LR
  id1(A) <-- 7 --> B <-- 13 --> C <-- 3 --> id2(F)
  id1(A) <-- 15 --> D <-- 2 --> E <-- 14 --> id2(F)
  B <-- 4 --> E
  D <-- 5 --> C
  style id1 fill:#0F0
  style id2 fill:#F00,color:#fff

flowchart LR
  id1(A) <-- 7 --> B == 16 ==> id2(F)
  id1(A) <-- 15 --> D == 13 ==> id2(F)
  style id1 fill:#0F0
  style id2 fill:#F00,color:#fff
ABCDEF
0 A
·7 A + 16 = 2315 A + 13 = 28

flowchart LR
  id1(A) <-- 7 --> B <-- 13 --> C <-- 3 --> id2(F)
  id1(A) <-- 15 --> D <-- 2 --> E <-- 14 --> id2(F)
  B <-- 4 --> E
  D <-- 5 --> C
  style id1 fill:#0F0
  style id2 fill:#F00,color:#fff

flowchart LR
  id1(A) <-- 7 --> B <-- 13 --> C <== 3 ==> id2(F)
  E == 2 ==> id2(F)
  B <-- 4 --> E
  style id1 fill:#0F0
  style id2 fill:#F00,color:#fff
ABCDEF
0 A
·7 A + 16 = 2315 A + 13 = 28
··36 (23 + 13) B + 3 = 3927 (23 + 4) B + 2 = 29

flowchart LR
  id1(A) <-- 7 --> B <-- 13 --> C <-- 3 --> id2(F)
  id1(A) <-- 15 --> D <-- 2 --> E <-- 14 --> id2(F)
  B <-- 4 --> E
  D <-- 5 --> C
  style id1 fill:#0F0
  style id2 fill:#F00,color:#fff

flowchart LR
  id1(A) <-- 7 --> B <-- 4 --> E
  D <-- 2 --> E
  E <-- 14 --> id2(F)
  D == 15 ==> id2(F)
  style id1 fill:#0F0
  style id2 fill:#F00,color:#fff
ABCDEF
0 A
·7 A + 16 = 2315 A + 13 = 28
··36 (23 + 13) B + 3 = 3927 (23 + 4) B + 2 = 29
··31 (29 + 2) E + 15 = 46·43 (29 + 14) E + 0 = 43

flowchart LR
  id1(A) <-- 7 --> B <-- 13 --> C <-- 3 --> id2(F)
  id1(A) <-- 15 --> D <-- 2 --> E <-- 14 --> id2(F)
  B <-- 4 --> E
  D <-- 5 --> C
  style id1 fill:#0F0
  style id2 fill:#F00,color:#fff

Bien plus rapide, non ?

flowchart LR
  id1(A) <-- 7 --> B <-- 4 --> E <-- 14 --> id2(F)
  style id1 fill:#0F0
  style id2 fill:#F00,color:#fff

Comparaison

https://www.youtube.com/watch?v=BR4_SrTWbMw


Dijkstra

flowchart LR
  id1(A) <-- 7 --> B
  C <-- 3 --> id2(F)
  D <-- 2 --> E
  B <-- 4 --> E
  D <-- 5 --> C
  style id1 fill:#0F0
  style id2 fill:#F00,color:#fff

=> 7 + 3 + 2 + 4 + 5 = 21

A*

flowchart LR
  id1(A) <-- 7 --> B <-- 4 --> E <-- 14 --> id2(F)
  style id1 fill:#0F0
  style id2 fill:#F00,color:#fff

=> 7 + 4 + 14 = 25


VRP

Aller d’un point A à un point B en passant par …

=> Permutations

Chapitre 5

Comment on se fait guider ?


le fonctionnement du GPS

Un système de positionnement global par satellite est composé par 3 éléments (appelés segments) :

Un GPS fournit donc


Deux informations sont cruciales :

On en fait quoi ? -> un calcul de trilatération

trilateration
trilateration

L’astuce de TomTom : Capter au moins 4 satellites


400
400

GPS

(Global Positionning System)

Question de NaNar : Mais il est tout seul ?


400
400

GLONASS


400
400

BeiDou 1, 2, 3

N.B : le système est nommé COMPASS en anglais.


400
400

GALILEO


Chapitre 6

Quels sont les outils ?

Le plus connu


Un des plus vieux


Le plus utilisé


Le challenger


Les orientés Business

Chapitre Final

Conclusion


“Merci TomTom pour ton blabla, on va taper le boss maintenant ?”


“Allez, c’est parti !”


“Attends, j’ai plus de popo de soins, on peut faire un itinéraire qui va chez le marchand puis au boss ?”


“Pas de souci !”


MediPhone 6:66



SliDesk
SliDesk
Mermaid
Mermaid

🫶

Merci à tou•te•s