105 lines
4.2 KiB
TeX
105 lines
4.2 KiB
TeX
\documentclass[french]{article}
|
|
|
|
\usepackage{pgfplots}
|
|
\usepackage{tikz}
|
|
\usetikzlibrary{arrows,automata}
|
|
\usepackage{MyPack2}
|
|
|
|
\usepackage{diagbox}
|
|
|
|
\geometry{top=2cm, bottom=2cm, left=2cm, right=2cm}
|
|
\title{Étude de laboratoire - ASD}
|
|
\author{Binôme A11 \\ \bsc{Simon} Léo, \bsc{Levy--Falk} Hugo \\ Supélec, promo 2020}
|
|
\date{\today}
|
|
|
|
\begin{document}
|
|
\maketitle
|
|
\tableofcontents
|
|
\clearpage
|
|
\listoffigures
|
|
\newpage
|
|
\initPage{TL - ASD}{\today}{\bsc{Simon}, \bsc{Levy--Falk}}
|
|
|
|
\part{Objectifs de ce TL}
|
|
\part{Génération de carte routière réaliste}
|
|
|
|
\section{Condition pour un graphe de Gabriel}
|
|
En notant $\mathcal{V} = \{P_i\}_{1\leq i\leq n}$ un nuage de $n \in \N$ points dans le plan représentants des villes, on définit pour tout $ A,B \in \mathcal{V}, d(A,B)$ la distance à vol d'oiseau entre les deux villes. On décide de placer une arête entre deux points $A$ et $B$ du plan si et seulement si,
|
|
\begin{equation}
|
|
\forall C \in \mathcal{V}, \forall M \in [A,B], d(M,V) \geq \min \{d(M,A), d(M,B)\} \label{eq:condArete}
|
|
\end{equation}
|
|
|
|
Montrons que la condition \ref{eq:condArete} est équivalente à ce que pour toute paire de sommets $(A,B)$ du nuage, $\{A,B\}$ forme une arête si et seulement si il n'existe pas de points $C \in \mathcal{V}$ dans le cercle de diamètre $[A,B]$. Un graphe vérifiant cette condition sera par la suite appelé \emph{graphe de Gabriel}.
|
|
|
|
\paragraph{preuve :} {
|
|
Soient $A,B \in \mathcal{V}$ et on appelle $\mathcal{C}$ le cercle de diamètre $[A,B]$. La figure \ref{fig:positionsC} montre différentes positions possibles de points.
|
|
|
|
Supposons qu'il existe une arête reliant les deux points. Si il existe des points du nuage dans le disque ouvert délimité par $\mathcal{C}$, alors il existe un point $M$ qui ne vérifie pas la condition \ref{eq:condArete}, \emph{absurde}.
|
|
|
|
Réciproquement, si tous les points de $\mathcal{V}$ sont à l'extérieur du cercle ouvert délimité par $\mathcal{C}$, (dans l'exemple $C'$ et $C''$), alors pour tout $P\in \mathcal{V}\ \{A,B\}$, le point $M\in[A,B]$ le plus proche de $P$ vérifie la condition \ref{eq:condArete} (dans l'exemple, les points $M'$ et $M''$).$\square$
|
|
|
|
\begin{figure}
|
|
\centering
|
|
\begin{tikzpicture}
|
|
\draw[dashed] (4,0) circle (4);
|
|
\draw (0,0) node [anchor=east]{A} -- (8,0) node[anchor=west]{B};
|
|
% intérieur
|
|
\draw[dashed] (8,0) -- (5,2) node[anchor=south]{C} -- (0,0);
|
|
\draw[green] (5,2) -- (5,0) node[anchor=north]{M} -- (5,0.2) -- (5.2,0.2)--(5.2,0);
|
|
\draw[green,dashed] (5,0) circle (2);
|
|
|
|
% frontière
|
|
\draw[dashed] (8,0) -- (1.16,2.828) node[anchor=south]{C'} -- (0,0);
|
|
\draw[orange] (1.16,2.828) -- (1.16,0) node[anchor=north west]{M'} -- (1.16,0.2) -- (1.36,0.2)--(1.36,0);
|
|
\draw[orange,dashed] (1.16,0) circle (1.16);
|
|
|
|
% extérieur
|
|
\draw[dashed] (8,0) -- (7.4,-4) node[anchor=north]{C''} -- (0,0);
|
|
\draw[red] (7.4,-4) -- (7.4,0) node[anchor=north east]{M''} -- (7.4,-0.2) -- (7.6,-0.2)--(7.6,0);
|
|
\draw[red,dashed] (7.4,0) circle (0.6);
|
|
\end{tikzpicture}
|
|
\caption{Différentes positions possible de points par rapport à $A$ et $B$}
|
|
\label{fig:positionsC}
|
|
\end{figure}
|
|
}
|
|
|
|
\section{Mise en pratique : graphe de Gabriel et de voisinage relatif}
|
|
\subsection{Création de graphe de Gabriel et de voisinage relatif}
|
|
\begin{figure}
|
|
\centering
|
|
\includegraphics[width=1\linewidth]{images/2_4_gabriel}
|
|
\caption{Graphe de gabriel}
|
|
\label{fig:2_4_gabriel}
|
|
\end{figure}
|
|
\begin{figure}
|
|
\centering
|
|
\includegraphics[width=1\linewidth]{images/2_4_gvr}
|
|
\caption{Graphe de voisinage realtif}
|
|
\label{fig:2_4_gvr}
|
|
\end{figure}
|
|
|
|
En traçant les graphes de Gabriel (figure \ref{fig:2_4_gabriel}) et de voisinage relatif (figure \ref{fig:2_4_gvr}), on observe que le second est inclus dans le premier.
|
|
|
|
\subsection{Génération d'un réseau}
|
|
En combinant la génération de graphe de Gabriel et de voisinage relatif, on peut générer un réseau routier, comme le montre la figure \ref{fig:2_5}.
|
|
|
|
\begin{figure}
|
|
\centering
|
|
\includegraphics[width=1\linewidth]{images/2_5}
|
|
\caption{Réseau généré}
|
|
\label{fig:2_5}
|
|
\end{figure}
|
|
|
|
\subsection{Temps de génération d'un réseau}
|
|
|
|
|
|
|
|
\section{Triangulation de Delaunay}
|
|
\subsection{Pratique}
|
|
\subsection{Aspect théorique}
|
|
|
|
\part{Algorithme de Dijkstra pour la recherche du plus court chemin}
|
|
|
|
|
|
|
|
\end{document} |