Notes de cours 10 - Polygones, triangulation, diagramme de Voronoï

Documents pareils
chapitre 4 Nombres de Catalan

EXERCICES DE REVISIONS MATHEMATIQUES CM2

AC AB. A B C x 1. x + 1. d où. Avec un calcul vu au lycée, on démontre que cette solution admet deux solutions dont une seule nous intéresse : x =

Le contexte. Le questionnement du P.E.R. :

TOUT CE QU IL FAUT SAVOIR POUR LE BREVET

Quels polygones sont formés par les milieux des côtés d un autre polygone?

Résolution d équations non linéaires

Les algorithmes de base du graphisme

Baccalauréat ES/L Amérique du Sud 21 novembre 2013

Fonctions de plusieurs variables

Géométrie Algorithmique Plan du cours

Introduction au maillage pour le calcul scientifique

Tâche complexe produite par l académie de Clermont-Ferrand. Mai 2012 LE TIR A L ARC. (d après une idée du collège des Portes du Midi de Maurs)

Enoncé et corrigé du brevet des collèges dans les académies d Aix- Marseille, Montpellier, Nice Corse et Toulouse en Énoncé.

La NP-complétude. Johanne Cohen. PRISM/CNRS, Versailles, France.

Bases de données documentaires et distribuées Cours NFE04

Programmation linéaire

Soit la fonction affine qui, pour représentant le nombre de mois écoulés, renvoie la somme économisée.

Notice d Utilisation du logiciel Finite Element Method Magnetics version 3.4 auteur: David Meeker

Théorie des Graphes Cours 3: Forêts et Arbres II / Modélisation

INTRODUCTION À L ANALYSE FACTORIELLE DES CORRESPONDANCES

Sillage Météo. Notion de sillage

Chapitre 2 Le problème de l unicité des solutions

CCP PSI Mathématiques 1 : un corrigé

Deux disques dans un carré

Items étudiés dans le CHAPITRE N5. 7 et 9 p 129 D14 Déterminer par le calcul l'antécédent d'un nombre par une fonction linéaire

Cours IV Mise en orbite

MAT2027 Activités sur Geogebra

Sujet 4: Programmation stochastique propriétés de fonction de recours

La médiatrice d un segment

Angles orientés et trigonométrie

modélisation solide et dessin technique

Exemples de problèmes et d applications. INF6953 Exemples de problèmes 1

Je découvre le diagramme de Venn

Si deux droites sont parallèles à une même troisième. alors les deux droites sont parallèles entre elles. alors

Programmation linéaire

Fonctions linéaires et affines. 1 Fonctions linéaires. 1.1 Vocabulaire. 1.2 Représentation graphique. 3eme

PROBLEME(12) Première partie : Peinture des murs et du plafond.

1 Définition. 2 Systèmes matériels et solides. 3 Les actions mécaniques. Le système matériel : Il peut être un ensemble.un sous-ensemble..

CARTE DE VOEUX À L ASSOCIAEDRE

Cours de Recherche Opérationnelle IUT d Orsay. Nicolas M. THIÉRY. address: Nicolas.Thiery@u-psud.fr URL:

Correction : E = Soit E = -1,6. F = 12 Soit F = y = 11. et G = -2z + 4y G = 2 6 = 3 G = G =

FONCTIONS DE PLUSIEURS VARIABLES (Outils Mathématiques 4)

C.F.A.O. : Conception et Fabrication Assistées par Ordinateur.

Souad EL Bernoussi. Groupe d Analyse Numérique et Optimisation Rabat http ://

F411 - Courbes Paramétrées, Polaires

Lecture graphique. Table des matières

I - PUISSANCE D UN POINT PAR RAPPORT A UN CERCLE CERCLES ORTHOGONAUX POLES ET POLAIRES

Jean-Philippe Préaux

Les nombres entiers. Durée suggérée: 3 semaines

Les petits pas. Pour favoriser mon écoute. Où le placer dans la classe? Procédurier. Adapter les directives. Référentiel Présentation des travaux

Atelier Transversal AT11. Activité «Fourmis» Pierre Chauvet.

COURS EULER: PROGRAMME DE LA PREMIÈRE ANNÉE

Diviser un nombre décimal par 10 ; 100 ; 1 000

Baccalauréat L spécialité, Métropole et Réunion, 19 juin 2009 Corrigé.

Continuité et dérivabilité d une fonction

TEST PRATIQUE DU TEST DE LOGIQUE MATHEMATIQUE ET VERBAL

TSTI 2D CH X : Exemples de lois à densité 1

Section «Maturité fédérale» EXAMENS D'ADMISSION Session de février 2014 RÉCAPITULATIFS DES MATIÈRES EXAMINÉES. Formation visée

Calcul intégral élémentaire en plusieurs variables

Une introduction aux codes correcteurs quantiques

Examen optimisation Centrale Marseille (2008) et SupGalilee (2008)

Circuits RL et RC. Chapitre Inductance

Savoir lire une carte, se situer et s orienter en randonnée

Nombre de marches Nombre de facons de les monter

Introduction à la théorie des graphes. Solutions des exercices

PARTIE NUMERIQUE (18 points)

Mesure d angles et trigonométrie

C f tracée ci- contre est la représentation graphique d une

Chp. 4. Minimisation d une fonction d une variable

Eteindre. les. lumières MATH EN JEAN Mme BACHOC. Elèves de seconde, première et terminale scientifiques :

JEU VIDEO : UN NOUVEAU COMPAGNON par Colette KELLER-DIDIER

Continuité d une fonction de plusieurs variables

«Aucune investigation humaine ne peut être qualifiée de science véritable si elle ne peut être démontrée mathématiquement.

* très facile ** facile *** difficulté moyenne **** difficile ***** très difficile I : Incontournable

BACCALAUREAT GENERAL MATHÉMATIQUES

ÉVALUATION EN FIN DE CM1. Année scolaire LIVRET DE L'ÉLÈVE MATHÉMATIQUES

Exercices types Algorithmique et simulation numérique Oral Mathématiques et algorithmique Banque PT

DOCM Solutions officielles = n 2 10.

6. Les différents types de démonstrations

Exercice 6 Associer chaque expression de gauche à sa forme réduite (à droite) :

Petit lexique de calcul à l usage des élèves de sixième et de cinquième par M. PARCABE, professeur au collège Alain FOURNIER de BORDEAUX, mars 2007

Fonctions de deux variables. Mai 2011

Statistiques Descriptives à une dimension

Image d un intervalle par une fonction continue

DURÉE DU JOUR EN FONCTION DE LA DATE ET DE LA LATITUDE

Programme scientifique Majeure INTELLIGENCE NUMERIQUE. Mentions Image et Réalité Virtuelle Intelligence Artificielle et Robotique

Repérage de l artillerie par le son.

Programmation Linéaire - Cours 1

Chapitre 1 Régime transitoire dans les systèmes physiques

Baccalauréat ES Antilles Guyane 12 septembre 2014 Corrigé

Vision industrielle et télédétection - Détection d ellipses. Guillaume Martinez 17 décembre 2007

Optimisation Discrète

1 de 46. Algorithmique. Trouver et Trier. Florent Hivert. Mél : Florent.Hivert@lri.fr Page personnelle : hivert

- MANIP 2 - APPLICATION À LA MESURE DE LA VITESSE DE LA LUMIÈRE

Optimisation de la compression fractale D images basée sur les réseaux de neurones

Approximations variationelles des EDP Notes du Cours de M2

enquête pour les fautes sur le fond, ce qui est graves pour une encyclopédie.

5 ème Chapitre 4 Triangles

Transcription:

Notes de cours 10 - Polygones, triangulation, diagramme de Voronoï INF6083 - Sujet spécial UQO, Québec, Canada Enseignant Jurek Czyzowicz notes rédigées par Ganaël Jatteau 24 mars 2004 Résumé Dans un premier temps, nous abordons dans ces notes de cours diverses méthodes pour faire des calculs de distance sur des polygones (distance entre un point et un polygone, distance mini entre deux polygones...). Cette partie va nous donner l occasion d aborder en détails la méthode des rotating calipers pour trouver par exemple la plus petite surface rectangulaire qui enferme un polygone. Ensuite nous allons aborder des problèmes de triangulation dans le cas des polygones quelconques. Nous verrons en particulier une méthode générique. Et pour finir nous allons entamer la théorie sur les diagrammes de Voronoï et voir quelles sont les propriétés de ces diagrammes. L algorithme permettant de calculer le diagramme sera vu dans la prochaine partie. 1 Géométrie sur les polygones Tous les problémes mentionnés dans cette section ne sont pas résolus. Certains restent ouverts... 1.1 Distance d un point à un polygone problème ouvert On veut trouver ici la plus courte distance entre un sommet d un polygone convexe et un point. Une des piste consiste ici à étudier les variations de la fonction distance : δ(sommet, point). En prenant deux points sur le polygone, on est capable de dire vers quels sommets se diriger si on se sert de l angle entre les arêtes du polygone et le segment point-sommet. Ensuite il reste à faire une recherche dichotomique. Suite au prochain épisode... 1

1.2 Intersection d une droite avec un polygone problème résolu On cherche ici à déterminer les points d intersection entre une droite et un polygone supposant que cette intersection existe. La figure 1 illustre cet exemple. Fig. 1 Exemple de droite coupant un polygone convexe On cherche tout d abord un vecteur directeur de la droite. Ensuite on prend toutes les arêtes une par une (chaque arête devient un vecteur comme sur la figure 1) en calculant pour chacune d elle le déterminant avec le vecteur directeur de la droite. Dès que le signe du déterminant change, alors on vient de croiser la droite. Il reste alors à trouver l intersection entre le segment qui constitue l arête et la droite. Pour ç a on applique une formule mathématique. La compléxité de l algorithme est en temps linéaire par rapport au nombre de sommets du polygone puisqu on parcourt ses arêtes une par une. 1.3 Calcul d une région de visibilité dans un polygone problème ouvert On cherche à déterminer la région éclairée par un point dans un polygone quelconque. Ce problème peut être résolu en temps linéaire. La seule piste valable semble d utiliser l ordre polaire de tous les sommets du polygone en partant du point demandé. Il reste à creuser encore un peu... 2 Rotating callipers Nous allons voir maintenant une méthode qui permet de résoudre plusieurs types de problémes en faisant rotationner des droites autour d un polygone convexe. 2

2.1 Recherche des coordonnées les plus éloignées Ici nous allons chercher les deux sommets les plus éloignés dans deux polygones convexes. 1 Pour procéder on va faire tourner deux droites en même temps autour des deux polygones. A chaque fois la rotation se fait par rapport à un des points du polygone. On stoppe la rotation dès qu une des droites tombe sur une arête d un des polygones. La figure 2 illustre ce cas. Fig. 2 Exemple illustrant la méthode des rotating callipers Dès qu une des deux droites tombe sur une arête du polygone, on va calculer la distance qui sépare les deux points de rotation. On teste tous les sommets pour ensuite retenir quelle est la distance maximale. 2.2 Cas où les polygones se croisent Si jamais les deux polygones considérés s intersectent, le résultat fourni par les rotating callipers n a plus vraiment de sens. Il faut donc être en mesure de détecter cette intersection avant de lancer l algorithme. 1 Le problème inverse qui consiste à trouver les deux points les plus proches est similaire. 3

Le nombre maximale d intersections possibles entre deux polygones est n + n où n = min (n, m) et où n et m sont les nombres de sommets des deux polygones. La recherche de toutes les intersections pourrait alors se faire en θ(n + n) = θ(n). En pratique une telle compléxité n est pas possible car il faut vérifier toutes les arêtes des deux polygones. On obtient finalement une complexité en θ(n + m). 2.3 Plus petite surface qui enferme un polygone problème ouvert On peut démontrer que la plus petite surface rectangulaire qui enferme un polygone doit être alignée sur un des côtés. La démonstration est simple si on cherche à encadrer le polygone par seulement deux droites parallèles. Par contre elle devient plus compliquée si on tient compte des quatre côtés d un rectangle. Fig. 3 Enfermement d un polygone dans une surface rectangulaire 3 Triangulation de polygone quelconque Dans cette section, on aborde une méthode générale qui sert à la triangulation de polygones quelconques. Elle utilise une droite de balayage qui parcourt tous les sommets du graphe. Tout d abord, on commence par distinguer les différents sommets qui composent le polygone. On en défini quatre sortes différentes : Les sommets de début Les sommets normaux 4

Fig. 4 Nommage des sommets pour la triangulation Les sommets de fin Les sommets de partitionnement La figure 4 illustre bien ces quatre catégories de sommets. On peut maintenant commencer le balayage du polygone par une droite (par exemple une droite horizontale qui parcourt de haut en bas). Le but sera de relier les sommets de partitions entre eux de manière à retomber sur un polygone convexe. Fig. 5 La droite de balayage parcourt des intervalles À un instant donné de son parcourt, la droite de balayage contient un ensemble d intervalles qui correspondent à l intérieur du polygone (figure 5). On va utiliser l évolution de ces intervalles pour détecter la présence des sommets de partition. Au fur et à mesure que l on rencontre les sommets de partition, on les relie entre eux de façon à supprimer cette catégorie de sommets définitivement et avoir ensuite un cas plus simple. Pour chaque sommet rencontré, on est capable de dire de quel type de sommet il s agit (figure 6) ce qui permet de mettre à jour les intervalles 5

Fig. 6 Démarrage des intervalles balayés par la droite de balayage. Une solution possible serait d appliquer deux fois l algorithme en balayant dans deux directions opposées et donc en traitant indépendament les deux types de sommets de partition. Cette opération n est pas forcément nécessaire puisqu on est capable de relier tous les sommets de partition en une seule passe. On joint toujours ces sommets avec le plus bas de son intervalle. Cette méthode à une complexité en θ(n log(n)). Le log(n) apparait car il faut effectuer un pré-traitement en ordonnant les sommets. 4 Diagrammes de Voronoï 4.1 Généralités Les diagrammes de Voronoï définissent des régions appartenant à des points dans l espace euclidien. La figure 7 donne un exemple de diagramme. On peut prendre comme exemple une carte qui contient des stations d essence. Si on trace le diagramme de Voronoï pour chacune des stations (représentées par des points), on est capable de dire pour n importe quel point du plan à partir de quelle station il est le plus proche. Les diagrammes de Voronoï peuvent se tracer en prenant la médiatrice pour chacunes des paires de points. Chaque médiatrice s arrête dès qu elle rencontre une autre médiatrice. 4.2 Propriétés Les propriétés de ces diagrammes sont très nombreuses ici. Tout d abord, on définit les termes suivants : 1. P : un ensemble de point 6

Fig. 7 Exemple de diagramme de Voronoï 2. P i : un point particulier 3. V (P ) : diagramme de Voronoï pour l ensemble de points P 4. V (P i ) : région appartenant au point P i 5. D(P ) est le graphe dual de V (P ) Voici la liste de propriétés générales sur les diagrammes de Voronoï : Chaque région V (P i ) est convexe V (P i ) est non bornée ssi P i est un point de l enveloppe convexe. Si v est un sommet de V (P ) appartenant à V (p 1 ), V (p 2 ) et V (p 3 ) alors v est un centre du cercle C(v) passant par p 1, p 2 et p 3. C(v) est un cercle circonscrit d un triangle de D(p) et l intérieur de C(v) ne contient pas de sites. Si p i est le plus proche voisin de p j, alors (p i, p j ) est une arête de D(P ). S il y a un cercle passant par p i et p j ne contenant aucun autre site alors (p i, p j ) est une arête de D(P ). On peut aussi définir la liste suivante de propriétés de triangulation : D(P ) est une triangulation s il n y a jamais plus de trois médiatrices qui se joignent en un seul point Chaque face de D(P ) correspond à un sommet de V (P ) Chaque arête de D(P ) correspond à une arête de V (P ) Chaque sommet de D(P ) correspond à une région de V (P ) 7

L extérieur de D(P ) est une enveloppe convexe de sites L intérieur de chaque triangle de D(P ) contient aucun site 8