From 733d4540ce074d380844a6d8f4b0f552936cf47e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Matt=C3=A9o=20Delabre?= Date: Fri, 4 Mar 2016 20:14:30 +0100 Subject: [PATCH] Ajout du dossier pour les rapports Et ajout de mon rapport initial --- .../figures/go-ex-1.tex | 22 + .../figures/go-ex-2.tex | 20 + .../figures/go-gantt.tex | 12 + .../figures/life-ex-1.tex | 29 + .../figures/life-ex-2.tex | 23 + .../figures/life-ex-3.tex | 57 + .../figures/life-gantt.tex | 10 + .../figures/ptf-gantt.tex | 20 + .../figures/ptf-layering-exploded.tex | 17 + .../figures/ptf-layering-merged.tex | 14 + .../figures/ptf-uml-diagram.tex | 30 + .../rapport-initial-delabre/parts/cmp.aux | 69 + .../rapport-initial-delabre/parts/cmp.tex | 41 + .../rapport-initial-delabre/parts/conclu.aux | 69 + .../rapport-initial-delabre/parts/conclu.tex | 15 + .../rapport-initial-delabre/parts/go.aux | 93 ++ .../rapport-initial-delabre/parts/go.tex | 219 ++++ .../rapport-initial-delabre/parts/intro.aux | 69 + .../rapport-initial-delabre/parts/intro.tex | 24 + .../rapport-initial-delabre/parts/life.aux | 91 ++ .../rapport-initial-delabre/parts/life.tex | 205 +++ .../rapport-initial-delabre/parts/ptf.aux | 100 ++ .../rapport-initial-delabre/parts/ptf.tex | 308 +++++ .../rapport-initial-delabre/rapport.aux | 50 + .../rapport-initial-delabre/rapport.bbl | 80 ++ .../rapport-initial-delabre/rapport.bib | 89 ++ .../rapport-initial-delabre/rapport.blg | 83 ++ .../rapport.fdb_latexmk | 276 ++++ .../rapport-initial-delabre/rapport.fls | 421 +++++++ .../rapport-initial-delabre/rapport.log | 1110 +++++++++++++++++ .../rapport-initial-delabre/rapport.out | 22 + .../rapport-initial-delabre/rapport.pdf | Bin 0 -> 435124 bytes .../rapport.synctex.gz | Bin 0 -> 118739 bytes .../rapport-initial-delabre/rapport.tex | 60 + .../rapport-initial-delabre/rapport.toc | 38 + .../rapport-initial-delabre/rapport.zip | Bin 0 -> 599497 bytes 36 files changed, 3786 insertions(+) create mode 100644 docs/rapports/rapport-initial-delabre/figures/go-ex-1.tex create mode 100644 docs/rapports/rapport-initial-delabre/figures/go-ex-2.tex create mode 100644 docs/rapports/rapport-initial-delabre/figures/go-gantt.tex create mode 100644 docs/rapports/rapport-initial-delabre/figures/life-ex-1.tex create mode 100644 docs/rapports/rapport-initial-delabre/figures/life-ex-2.tex create mode 100644 docs/rapports/rapport-initial-delabre/figures/life-ex-3.tex create mode 100644 docs/rapports/rapport-initial-delabre/figures/life-gantt.tex create mode 100644 docs/rapports/rapport-initial-delabre/figures/ptf-gantt.tex create mode 100644 docs/rapports/rapport-initial-delabre/figures/ptf-layering-exploded.tex create mode 100644 docs/rapports/rapport-initial-delabre/figures/ptf-layering-merged.tex create mode 100644 docs/rapports/rapport-initial-delabre/figures/ptf-uml-diagram.tex create mode 100644 docs/rapports/rapport-initial-delabre/parts/cmp.aux create mode 100644 docs/rapports/rapport-initial-delabre/parts/cmp.tex create mode 100644 docs/rapports/rapport-initial-delabre/parts/conclu.aux create mode 100644 docs/rapports/rapport-initial-delabre/parts/conclu.tex create mode 100644 docs/rapports/rapport-initial-delabre/parts/go.aux create mode 100644 docs/rapports/rapport-initial-delabre/parts/go.tex create mode 100644 docs/rapports/rapport-initial-delabre/parts/intro.aux create mode 100644 docs/rapports/rapport-initial-delabre/parts/intro.tex create mode 100644 docs/rapports/rapport-initial-delabre/parts/life.aux create mode 100644 docs/rapports/rapport-initial-delabre/parts/life.tex create mode 100644 docs/rapports/rapport-initial-delabre/parts/ptf.aux create mode 100644 docs/rapports/rapport-initial-delabre/parts/ptf.tex create mode 100644 docs/rapports/rapport-initial-delabre/rapport.aux create mode 100644 docs/rapports/rapport-initial-delabre/rapport.bbl create mode 100644 docs/rapports/rapport-initial-delabre/rapport.bib create mode 100644 docs/rapports/rapport-initial-delabre/rapport.blg create mode 100644 docs/rapports/rapport-initial-delabre/rapport.fdb_latexmk create mode 100644 docs/rapports/rapport-initial-delabre/rapport.fls create mode 100644 docs/rapports/rapport-initial-delabre/rapport.log create mode 100644 docs/rapports/rapport-initial-delabre/rapport.out create mode 100644 docs/rapports/rapport-initial-delabre/rapport.pdf create mode 100644 docs/rapports/rapport-initial-delabre/rapport.synctex.gz create mode 100644 docs/rapports/rapport-initial-delabre/rapport.tex create mode 100644 docs/rapports/rapport-initial-delabre/rapport.toc create mode 100644 docs/rapports/rapport-initial-delabre/rapport.zip diff --git a/docs/rapports/rapport-initial-delabre/figures/go-ex-1.tex b/docs/rapports/rapport-initial-delabre/figures/go-ex-1.tex new file mode 100644 index 0000000..038e268 --- /dev/null +++ b/docs/rapports/rapport-initial-delabre/figures/go-ex-1.tex @@ -0,0 +1,22 @@ +\begin{tikzpicture}[scale=.5] + \begin{scope} + \draw (0 ,0) grid (6, 6); + + \fillstone{1}{2}{matblack} + \fillstone{1}{3}{matblack} + \fillstone{2}{4}{matblack} + \fillstone{3}{3}{matblack} + \fillstone{4}{3}{matblack} + \node[fill=white, anchor=center] at (5,2) {(1)}; + \fillstone{4}{1}{matblack} + \fillstone{3}{1}{matblack} + \fillstone{2}{1}{matblack} + + \fillstone{2}{2}{matgray} + \fillstone{2}{3}{matgray} + \fillstone{3}{2}{matgray} + \fillstone{4}{2}{matgray} + \fillstone{3}{4}{matgray} + \fillstone{4}{4}{matgray} + \end{scope} +\end{tikzpicture} diff --git a/docs/rapports/rapport-initial-delabre/figures/go-ex-2.tex b/docs/rapports/rapport-initial-delabre/figures/go-ex-2.tex new file mode 100644 index 0000000..c7b077d --- /dev/null +++ b/docs/rapports/rapport-initial-delabre/figures/go-ex-2.tex @@ -0,0 +1,20 @@ +\begin{tikzpicture}[scale=.5] + \begin{scope} + \draw (0 ,0) grid (6, 6); + + \node[fill=white, anchor=center] at (1,5) {(2)}; + \fillstone{0}{3}{matblack} + \fillstone{1}{3}{matblack} + \fillstone{2}{4}{matblack} + \fillstone{2}{5}{matblack} + \fillstone{3}{6}{matblack} + + \node[fill=white, anchor=center] at (3.5,2) {(1)}; + \fillstone{2}{2}{matgray} + \fillstone{5}{2}{matgray} + \fillstone{3}{1}{matgray} + \fillstone{4}{1}{matgray} + \fillstone{3}{3}{matgray} + \fillstone{4}{3}{matgray} + \end{scope} +\end{tikzpicture} diff --git a/docs/rapports/rapport-initial-delabre/figures/go-gantt.tex b/docs/rapports/rapport-initial-delabre/figures/go-gantt.tex new file mode 100644 index 0000000..a1fe73e --- /dev/null +++ b/docs/rapports/rapport-initial-delabre/figures/go-gantt.tex @@ -0,0 +1,12 @@ +\begin{gantt}{7}{8} + \begin{ganttitle} + \numtitle{5}{5}{40}{1} + \end{ganttitle} + + \ganttbar{Base}{0}{1} + \ganttbar{Algorithme placement}{1}{4} + \ganttbar{Algorithme décompte}{1}{4} + \ganttbar{Fenêtrage}{1}{2} + \ganttbar{Mise en réseau}{4}{3} + \ganttbar{Rapport}{0}{8} +\end{gantt} diff --git a/docs/rapports/rapport-initial-delabre/figures/life-ex-1.tex b/docs/rapports/rapport-initial-delabre/figures/life-ex-1.tex new file mode 100644 index 0000000..0b2c12c --- /dev/null +++ b/docs/rapports/rapport-initial-delabre/figures/life-ex-1.tex @@ -0,0 +1,29 @@ +\begin{tikzpicture}[scale=.5] + \begin{scope} + \draw (0,0) grid (5, 5); + \draw[thick, scale=5] (0, 0) grid (1, 1); + + \fillcell{1}{2}{dying} + \fillcell{2}{1}{alive} + \fillcell{3}{1}{dying} + + \node[anchor=center] at (2.5,-0.5) {$n=0$}; + \end{scope} + + \begin{scope}[xshift=6cm] + \draw (0,0) grid (5, 5); + \draw[thick, scale=5] (0, 0) grid (1, 1); + + \fillcell{2}{1}{dying} + \fillcell{2}{2}{stillborn} + + \node[anchor=center] at (2.5,-0.5) {$n=1$}; + \end{scope} + + \begin{scope}[xshift=12cm] + \draw (0,0) grid (5, 5); + \draw[thick, scale=5] (0, 0) grid (1, 1); + + \node[anchor=center] at (2.5,-0.5) {$n=2$}; + \end{scope} +\end{tikzpicture} diff --git a/docs/rapports/rapport-initial-delabre/figures/life-ex-2.tex b/docs/rapports/rapport-initial-delabre/figures/life-ex-2.tex new file mode 100644 index 0000000..f7164fc --- /dev/null +++ b/docs/rapports/rapport-initial-delabre/figures/life-ex-2.tex @@ -0,0 +1,23 @@ +\begin{tikzpicture}[scale=.5] + \begin{scope} + \draw (0,0) grid (5, 5); + \draw[thick, scale=5] (0, 0) grid (1, 1); + + \fillcell{2}{1}{stillborn} + \fillcell{2}{2}{alive} + \fillcell{2}{3}{stillborn} + + \node[anchor=center] at (2.5,-0.5) {$n=2k$}; + \end{scope} + + \begin{scope}[xshift=6cm] + \draw (0,0) grid (5, 5); + \draw[thick, scale=5] (0, 0) grid (1, 1); + + \fillcell{1}{2}{stillborn} + \fillcell{2}{2}{alive} + \fillcell{3}{2}{stillborn} + + \node[anchor=center] at (2.5,-0.5) {$n=2k+1$}; + \end{scope} +\end{tikzpicture} diff --git a/docs/rapports/rapport-initial-delabre/figures/life-ex-3.tex b/docs/rapports/rapport-initial-delabre/figures/life-ex-3.tex new file mode 100644 index 0000000..037e098 --- /dev/null +++ b/docs/rapports/rapport-initial-delabre/figures/life-ex-3.tex @@ -0,0 +1,57 @@ +\begin{tikzpicture}[scale=.5] + \begin{scope} + \draw (0,0) grid (5, 5); + \draw[thick, scale=5] (0, 0) grid (1, 1); + + \fillcell{2}{2}{alive} + \fillcell{3}{2}{alive} + \fillcell{4}{2}{dying} + \fillcell{2}{3}{alive} + \fillcell{2}{4}{dying} + + \node[anchor=center] at (2.5,-0.5) {$n=0$}; + \end{scope} + + \begin{scope}[xshift=6cm] + \draw (0,0) grid (5, 5); + \draw[thick, scale=5] (0, 0) grid (1, 1); + + \fillcell{2}{2}{dying} + \fillcell{3}{2}{alive} + \fillcell{2}{3}{alive} + \fillcell{1}{3}{nascent} + \fillcell{3}{1}{nascent} + + \node[anchor=center] at (2.5,-0.5) {$n=1$}; + \end{scope} + + \begin{scope}[xshift=12cm] + \draw (0,0) grid (5, 5); + \draw[thick, scale=5] (0, 0) grid (1, 1); + + \fillcell{3}{2}{dying} + \fillcell{2}{3}{dying} + \fillcell{1}{3}{alive} + \fillcell{3}{1}{alive} + \fillcell{1}{2}{nascent} + \fillcell{2}{1}{nascent} + \fillcell{3}{3}{nascent} + + \node[anchor=center] at (2.5,-0.5) {$n=2$}; + \end{scope} + + \begin{scope}[xshift=18cm] + \draw (0,0) grid (5, 5); + \draw[thick, scale=5] (0, 0) grid (1, 1); + + \fillcell{1}{3}{alive} + \fillcell{3}{1}{alive} + \fillcell{1}{2}{alive} + \fillcell{2}{1}{alive} + \fillcell{3}{3}{alive} + \fillcell{4}{2}{nascent} + \fillcell{2}{4}{nascent} + + \node[anchor=center] at (2.5,-0.5) {$n\geq3$}; + \end{scope} +\end{tikzpicture} diff --git a/docs/rapports/rapport-initial-delabre/figures/life-gantt.tex b/docs/rapports/rapport-initial-delabre/figures/life-gantt.tex new file mode 100644 index 0000000..9002c3d --- /dev/null +++ b/docs/rapports/rapport-initial-delabre/figures/life-gantt.tex @@ -0,0 +1,10 @@ +\begin{gantt}{5}{8} + \begin{ganttitle} + \numtitle{5}{5}{40}{1} + \end{ganttitle} + + \ganttbar{Base}{0}{2} + \ganttbar{Fenêtrage}{2}{2} + \ganttbar{Hashlife}{4}{4} + \ganttbar{Rapport}{0}{8} +\end{gantt} diff --git a/docs/rapports/rapport-initial-delabre/figures/ptf-gantt.tex b/docs/rapports/rapport-initial-delabre/figures/ptf-gantt.tex new file mode 100644 index 0000000..e7bc899 --- /dev/null +++ b/docs/rapports/rapport-initial-delabre/figures/ptf-gantt.tex @@ -0,0 +1,20 @@ +\begin{gantt}{12}{8} + \begin{ganttitle} + \numtitle{5}{5}{40}{1} + \end{ganttitle} + + \ganttbar{Moteur physique}{0}{3} + \ganttbar{Gestion du dessin}{0}{3} + \ganttbar{Tests du moteur}{1}{2} + + \ganttbar{Niveau de test}{1}{5} + \ganttbar{Conception des niveaux}{2}{6} + \ganttbar{Tests des niveaux}{3}{5} + + \ganttbar{Musique et bruitages}{1}{4} + \ganttbar{Univers graphique}{1}{4} + \ganttbar{Interface du jeu}{5}{2} + + \ganttbar{Tests finaux}{7}{1} + \ganttbar{Rapport}{0}{8} +\end{gantt} diff --git a/docs/rapports/rapport-initial-delabre/figures/ptf-layering-exploded.tex b/docs/rapports/rapport-initial-delabre/figures/ptf-layering-exploded.tex new file mode 100644 index 0000000..40eec7e --- /dev/null +++ b/docs/rapports/rapport-initial-delabre/figures/ptf-layering-exploded.tex @@ -0,0 +1,17 @@ +\begin{tikzpicture}[x={(-1cm,-0.5cm)}, y={(1cm,-0.5cm)}, z={(0cm,1cm)}] + \begin{scope}[canvas is yz plane at x=0] + \filldraw[fill=matblue, thick, fill opacity=0.8, draw=black] (0,0) rectangle (5,3); + \end{scope} + + \begin{scope}[canvas is yz plane at x=1.5] + \filldraw[fill=white, thick, fill opacity=0.8, draw=black] (0,0) rectangle (5,3); + \filldraw[thick, fill=matbrown] (0,0) rectangle (5,1); + + \draw[thin] (0,0) grid (5,3); + \end{scope} + + \begin{scope}[canvas is yz plane at x=3] + \filldraw[fill=white, thick, fill opacity=0.8, draw=black] (0,0) rectangle (5,3); + \filldraw[thick, fill=matgray] (2.5,1.25) circle (.25); + \end{scope} +\end{tikzpicture} diff --git a/docs/rapports/rapport-initial-delabre/figures/ptf-layering-merged.tex b/docs/rapports/rapport-initial-delabre/figures/ptf-layering-merged.tex new file mode 100644 index 0000000..042054e --- /dev/null +++ b/docs/rapports/rapport-initial-delabre/figures/ptf-layering-merged.tex @@ -0,0 +1,14 @@ +\begin{tikzpicture} + \begin{scope} + \filldraw[fill=matblue, thick, fill opacity=0.8, draw=black] (0,0) rectangle (5,3); + \end{scope} + + \begin{scope} + \filldraw[thick, fill=matbrown] (0,0) rectangle (5,1); + \draw[thin] (0,0) grid (5,3); + \end{scope} + + \begin{scope} + \filldraw[thick, fill=matgray] (2.5,1.25) circle (.25); + \end{scope} +\end{tikzpicture} diff --git a/docs/rapports/rapport-initial-delabre/figures/ptf-uml-diagram.tex b/docs/rapports/rapport-initial-delabre/figures/ptf-uml-diagram.tex new file mode 100644 index 0000000..2ce207b --- /dev/null +++ b/docs/rapports/rapport-initial-delabre/figures/ptf-uml-diagram.tex @@ -0,0 +1,30 @@ +\begin{tikzpicture} + \umlclass[x=-3]{Ball}{ + position : vecteur\\ + velocity : vecteur\\ + mass : flottant\\ + charge : entier signé + }{ + draw() : vide\\ + update(forces : vecteur, delta : flottant) : vide + } + + \umlclass[x=3]{Block}{ + position : vecteur\\ + charge : entier signé + }{ + draw() : vide + } + + \umlclass[y=-4]{Engine}{ + balls : tableau de \texttt{Ball}\\ + blocks : tableau de tableaux de \texttt{Block}\\ + clock : horloge + }{ + draw() : vide\\ + update(delta : flottant) : vide + } + + \umldep{Engine}{Ball} + \umldep{Engine}{Block} +\end{tikzpicture} diff --git a/docs/rapports/rapport-initial-delabre/parts/cmp.aux b/docs/rapports/rapport-initial-delabre/parts/cmp.aux new file mode 100644 index 0000000..8fda4e0 --- /dev/null +++ b/docs/rapports/rapport-initial-delabre/parts/cmp.aux @@ -0,0 +1,69 @@ +\relax +\providecommand\hyper@newdestlabel[2]{} +\@writefile{toc}{\contentsline {chapter}{\IeC {\'E}tude comparative}{21}{chapter*.3}} +\@setckpt{./parts/cmp}{ +\setcounter{page}{22} +\setcounter{equation}{0} +\setcounter{enumi}{3} +\setcounter{enumii}{4} +\setcounter{enumiii}{5} +\setcounter{enumiv}{0} +\setcounter{footnote}{0} +\setcounter{mpfootnote}{0} +\setcounter{part}{0} +\setcounter{chapter}{3} +\setcounter{section}{5} +\setcounter{subsection}{0} +\setcounter{subsubsection}{0} +\setcounter{paragraph}{0} +\setcounter{subparagraph}{0} +\setcounter{figure}{4} +\setcounter{table}{0} +\setcounter{Item}{58} +\setcounter{Hfootnote}{0} +\setcounter{bookmark@seq@number}{20} +\setcounter{ganttnum}{-12} +\setcounter{ganttwidth}{8} +\setcounter{gantttitlenum}{45} +\setcounter{tikzumlPackageLayers}{3} +\setcounter{tikzumlFragmentLayers}{3} +\setcounter{tikzumlStateLayers}{3} +\setcounter{tikzumlComponentLayers}{3} +\setcounter{tikzumlPackageClassNum}{0} +\setcounter{tikzumlPackageSubPackageNum}{0} +\setcounter{tikzumlRelationNum}{3} +\setcounter{tikzumlNoteNum}{1} +\setcounter{pos}{19} +\setcounter{posT}{80} +\setcounter{posStereo}{50} +\setcounter{tikzumlPackageLevel}{0} +\setcounter{tikzumlSystemUseCaseNum}{0} +\setcounter{tikzumlSystemLevel}{0} +\setcounter{tikzumlUseCaseNum}{0} +\setcounter{tikzumlActorNum}{0} +\setcounter{tikzumlStateJoinNum}{0} +\setcounter{tikzumlStateDecisionNum}{0} +\setcounter{tikzumlStateInitialNum}{0} +\setcounter{tikzumlStateFinalNum}{0} +\setcounter{tikzumlStateEnterNum}{0} +\setcounter{tikzumlStateExitNum}{0} +\setcounter{tikzumlStateEndNum}{0} +\setcounter{tikzumlStateHistoryNum}{0} +\setcounter{tikzumlStateDeepHistoryNum}{0} +\setcounter{tikzumlStateLevel}{0} +\setcounter{tikzumlStateSubStateNum}{0} +\setcounter{tikzumlStateText}{0} +\setcounter{tikzumlObjectNum}{0} +\setcounter{tikzumlCallLevel}{0} +\setcounter{tikzumlCallNum}{0} +\setcounter{tikzumlFragmentLevel}{0} +\setcounter{tikzumlFragmentLevelNum}{0} +\setcounter{tikzumlFragmentNum}{0} +\setcounter{tikzumlFragmentPartNum}{0} +\setcounter{tikzumlCallStartFragmentNum}{0} +\setcounter{tikzumlCallEndFragmentNum}{0} +\setcounter{tikzumlComponentLevel}{0} +\setcounter{tikzumlComponentSubComponentNum}{0} +\setcounter{tikzumlConnectorNum}{1} +\setcounter{section@level}{1} +} diff --git a/docs/rapports/rapport-initial-delabre/parts/cmp.tex b/docs/rapports/rapport-initial-delabre/parts/cmp.tex new file mode 100644 index 0000000..626a02f --- /dev/null +++ b/docs/rapports/rapport-initial-delabre/parts/cmp.tex @@ -0,0 +1,41 @@ +\chapter*{Étude comparative} +\addcontentsline{toc}{chapter}{Étude comparative} + +Le jeu de la vie permet, avec des règles très simples, de produire +des motifs extrêmement complexes. Ces motifs peuvent nécessiter de +nombreuses générations sur de grandes surfaces, d'où la nécessité +d'un algorithme évitant les calculs inutiles. En effet, on peut +remarquer que beaucoup de motifs se répètent au cours des générations +et qu'il n'est pas utile de calculer l'état de zones isolées +des cellules vivantes. C'est l'objectif de l'algorithme \emph{Hashlife}. + +D'un point de vue algorithmique, le jeu de go est également +intéressant. Le décompte des points demande de pouvoir identifier +les territoires des joueurs, ce à quoi un algorithme de remplissage par +diffusion se prête bien, comme montré au cours de l'étude algorithmique. +Cependant, le décompte peut aussi demander (en fonction +des règles que l'on applique) de retirer les pierres « mortes » +c'est à dire celles qui n'auraient pas pu être sauvées +de la prise même en contiuant de jouer. On ne peut pas imaginer pouvoir +concevoir un algorithme qui détecte de telles pierres sans avoir +une intelligence artificielle assez performante pour pouvoir simuler +les coups suivants. Les intelligences artificielles en matière +de jeu de go restent peu performantes, car les techniques +classiques de recherche de solutions employées notamment avec +les échecs ne sont pas envisageables, au vu du nombre de possibilités. + +Le jeu de plateformes présente un intérêt différent. D'une part, +la quantité de travail à fournir est largement supérieure à celle des autres +jeux présentés, et nécessite donc la coordination d'une équipe. +D'autre part, les algorithmes à concevoir sont directement +à mettre en relation avec l'enseignement de mécanique classique du +premier semestre, ce qui permet de le valoriser. Enfin, un tel jeu +a un résultat visuel plus à même d'être présenté en vidéo ou +devant un public, puisqu'il est plus dynamique que le jeu de la +vie ou le jeu de go. + +Chaque jeu présenté dans ce rapport demande une organisation différente car le +volume de travail requis va en croissant. En effet, alors que le jeu de la vie +peut être développé par une seule personne en 40 heures totales, le jeu de +plateformes demande au moins 175 heures et donc la collaboration d'au moins +3 personnes. diff --git a/docs/rapports/rapport-initial-delabre/parts/conclu.aux b/docs/rapports/rapport-initial-delabre/parts/conclu.aux new file mode 100644 index 0000000..00ba596 --- /dev/null +++ b/docs/rapports/rapport-initial-delabre/parts/conclu.aux @@ -0,0 +1,69 @@ +\relax +\providecommand\hyper@newdestlabel[2]{} +\@writefile{toc}{\contentsline {chapter}{Conclusion}{22}{chapter*.4}} +\@setckpt{./parts/conclu}{ +\setcounter{page}{23} +\setcounter{equation}{0} +\setcounter{enumi}{3} +\setcounter{enumii}{4} +\setcounter{enumiii}{5} +\setcounter{enumiv}{0} +\setcounter{footnote}{0} +\setcounter{mpfootnote}{0} +\setcounter{part}{0} +\setcounter{chapter}{3} +\setcounter{section}{5} +\setcounter{subsection}{0} +\setcounter{subsubsection}{0} +\setcounter{paragraph}{0} +\setcounter{subparagraph}{0} +\setcounter{figure}{4} +\setcounter{table}{0} +\setcounter{Item}{58} +\setcounter{Hfootnote}{0} +\setcounter{bookmark@seq@number}{21} +\setcounter{ganttnum}{-12} +\setcounter{ganttwidth}{8} +\setcounter{gantttitlenum}{45} +\setcounter{tikzumlPackageLayers}{3} +\setcounter{tikzumlFragmentLayers}{3} +\setcounter{tikzumlStateLayers}{3} +\setcounter{tikzumlComponentLayers}{3} +\setcounter{tikzumlPackageClassNum}{0} +\setcounter{tikzumlPackageSubPackageNum}{0} +\setcounter{tikzumlRelationNum}{3} +\setcounter{tikzumlNoteNum}{1} +\setcounter{pos}{19} +\setcounter{posT}{80} +\setcounter{posStereo}{50} +\setcounter{tikzumlPackageLevel}{0} +\setcounter{tikzumlSystemUseCaseNum}{0} +\setcounter{tikzumlSystemLevel}{0} +\setcounter{tikzumlUseCaseNum}{0} +\setcounter{tikzumlActorNum}{0} +\setcounter{tikzumlStateJoinNum}{0} +\setcounter{tikzumlStateDecisionNum}{0} +\setcounter{tikzumlStateInitialNum}{0} +\setcounter{tikzumlStateFinalNum}{0} +\setcounter{tikzumlStateEnterNum}{0} +\setcounter{tikzumlStateExitNum}{0} +\setcounter{tikzumlStateEndNum}{0} +\setcounter{tikzumlStateHistoryNum}{0} +\setcounter{tikzumlStateDeepHistoryNum}{0} +\setcounter{tikzumlStateLevel}{0} +\setcounter{tikzumlStateSubStateNum}{0} +\setcounter{tikzumlStateText}{0} +\setcounter{tikzumlObjectNum}{0} +\setcounter{tikzumlCallLevel}{0} +\setcounter{tikzumlCallNum}{0} +\setcounter{tikzumlFragmentLevel}{0} +\setcounter{tikzumlFragmentLevelNum}{0} +\setcounter{tikzumlFragmentNum}{0} +\setcounter{tikzumlFragmentPartNum}{0} +\setcounter{tikzumlCallStartFragmentNum}{0} +\setcounter{tikzumlCallEndFragmentNum}{0} +\setcounter{tikzumlComponentLevel}{0} +\setcounter{tikzumlComponentSubComponentNum}{0} +\setcounter{tikzumlConnectorNum}{1} +\setcounter{section@level}{1} +} diff --git a/docs/rapports/rapport-initial-delabre/parts/conclu.tex b/docs/rapports/rapport-initial-delabre/parts/conclu.tex new file mode 100644 index 0000000..fee26db --- /dev/null +++ b/docs/rapports/rapport-initial-delabre/parts/conclu.tex @@ -0,0 +1,15 @@ +\chapter*{Conclusion} +\addcontentsline{toc}{chapter}{Conclusion} + +Pour les raisons exposées dans l'étude comparative, +j'ai choisi de développer le jeu de plateformes pour le projet +C.M.I. de cette année. La réalisation d'un moteur physique +reste un bon exercice algorithmique, tout en laissant place +à une partie plus créative à travers la réalisation de l'univers +graphique et de la musique. + +Pour la création de ce jeu, un volume horaire d'au moins +175 heures est nécessaire. Il faut donc constituer une +équipe d'au moins 3 personnes. Je pense que +Maëlle \textsc{Beuret} et Rémi \textsc{Cérès} seraient +les plus à même à m'accompagner sur ce projet. diff --git a/docs/rapports/rapport-initial-delabre/parts/go.aux b/docs/rapports/rapport-initial-delabre/parts/go.aux new file mode 100644 index 0000000..0b1eb86 --- /dev/null +++ b/docs/rapports/rapport-initial-delabre/parts/go.aux @@ -0,0 +1,93 @@ +\relax +\providecommand\hyper@newdestlabel[2]{} +\citation{ggo-aga} +\citation{game-theory-wiki} +\citation{ggo-ai} +\citation{ggo-compqueens} +\citation{ggo-ffg} +\@writefile{toc}{\contentsline {chapter}{\numberline {2}Jeu de go}{8}{chapter.2}} +\@writefile{lof}{\addvspace {10\p@ }} +\@writefile{lot}{\addvspace {10\p@ }} +\@writefile{toc}{\contentsline {section}{\numberline {2.1}Principes}{8}{section.2.1}} +\@writefile{toc}{\contentsline {subsection}{\numberline {2.1.1}Mat\IeC {\'e}riel}{8}{subsection.2.1.1}} +\@writefile{toc}{\contentsline {subsection}{\numberline {2.1.2}R\IeC {\`e}gles}{8}{subsection.2.1.2}} +\@writefile{lof}{\contentsline {figure}{\numberline {2.1}{\ignorespaces La cha\IeC {\^\i }ne blanche sera captur\IeC {\'e}e par la pose d'une pierre noire en~(1)}}{9}{figure.2.1}} +\newlabel{fig:go-ex-1}{{2.1}{9}{La chaîne blanche sera capturée par la pose d'une pierre noire en~(1)}{figure.2.1}{}} +\@writefile{toc}{\contentsline {subsection}{\numberline {2.1.3}Fin du jeu}{9}{subsection.2.1.3}} +\@writefile{lof}{\contentsline {figure}{\numberline {2.2}{\ignorespaces Un territoire du joueur attribu\IeC {\'e} aux blancs en~(1) et un territoire du joueur attribu\IeC {\'e} aux noirs en~(2)}}{9}{figure.2.2}} +\newlabel{fig:go-ex-2}{{2.2}{9}{Un territoire du joueur attribué aux blancs en~(1) et un territoire du joueur attribué aux noirs en~(2)}{figure.2.2}{}} +\@writefile{toc}{\contentsline {section}{\numberline {2.2}Mod\IeC {\'e}lisation}{9}{section.2.2}} +\citation{ggo-algofloodfill} +\@writefile{toc}{\contentsline {section}{\numberline {2.3}Algorithmes}{10}{section.2.3}} +\@writefile{toc}{\contentsline {section}{\numberline {2.4}Sp\IeC {\'e}cifications}{11}{section.2.4}} +\@writefile{toc}{\contentsline {subsection}{\numberline {2.4.1}Version initiale}{11}{subsection.2.4.1}} +\@writefile{toc}{\contentsline {subsection}{\numberline {2.4.2}Am\IeC {\'e}liorations possibles}{12}{subsection.2.4.2}} +\@writefile{toc}{\contentsline {section}{\numberline {2.5}Organisation}{12}{section.2.5}} +\@writefile{lof}{\contentsline {figure}{\numberline {2.3}{\ignorespaces D\IeC {\'e}veloppement du jeu de go sur 40 heures}}{12}{figure.2.3}} +\newlabel{fig:go-gantt}{{2.3}{12}{Développement du jeu de go sur 40 heures}{figure.2.3}{}} +\@setckpt{./parts/go}{ +\setcounter{page}{13} +\setcounter{equation}{0} +\setcounter{enumi}{3} +\setcounter{enumii}{5} +\setcounter{enumiii}{5} +\setcounter{enumiv}{0} +\setcounter{footnote}{0} +\setcounter{mpfootnote}{0} +\setcounter{part}{0} +\setcounter{chapter}{2} +\setcounter{section}{5} +\setcounter{subsection}{0} +\setcounter{subsubsection}{0} +\setcounter{paragraph}{0} +\setcounter{subparagraph}{0} +\setcounter{figure}{3} +\setcounter{table}{0} +\setcounter{Item}{37} +\setcounter{Hfootnote}{0} +\setcounter{bookmark@seq@number}{13} +\setcounter{ganttnum}{-7} +\setcounter{ganttwidth}{8} +\setcounter{gantttitlenum}{45} +\setcounter{tikzumlPackageLayers}{3} +\setcounter{tikzumlFragmentLayers}{3} +\setcounter{tikzumlStateLayers}{3} +\setcounter{tikzumlComponentLayers}{3} +\setcounter{tikzumlPackageClassNum}{0} +\setcounter{tikzumlPackageSubPackageNum}{0} +\setcounter{tikzumlRelationNum}{1} +\setcounter{tikzumlNoteNum}{1} +\setcounter{pos}{0} +\setcounter{posT}{0} +\setcounter{posStereo}{0} +\setcounter{tikzumlPackageLevel}{0} +\setcounter{tikzumlSystemUseCaseNum}{0} +\setcounter{tikzumlSystemLevel}{0} +\setcounter{tikzumlUseCaseNum}{0} +\setcounter{tikzumlActorNum}{0} +\setcounter{tikzumlStateJoinNum}{0} +\setcounter{tikzumlStateDecisionNum}{0} +\setcounter{tikzumlStateInitialNum}{0} +\setcounter{tikzumlStateFinalNum}{0} +\setcounter{tikzumlStateEnterNum}{0} +\setcounter{tikzumlStateExitNum}{0} +\setcounter{tikzumlStateEndNum}{0} +\setcounter{tikzumlStateHistoryNum}{0} +\setcounter{tikzumlStateDeepHistoryNum}{0} +\setcounter{tikzumlStateLevel}{0} +\setcounter{tikzumlStateSubStateNum}{0} +\setcounter{tikzumlStateText}{0} +\setcounter{tikzumlObjectNum}{0} +\setcounter{tikzumlCallLevel}{0} +\setcounter{tikzumlCallNum}{0} +\setcounter{tikzumlFragmentLevel}{0} +\setcounter{tikzumlFragmentLevelNum}{0} +\setcounter{tikzumlFragmentNum}{0} +\setcounter{tikzumlFragmentPartNum}{0} +\setcounter{tikzumlCallStartFragmentNum}{0} +\setcounter{tikzumlCallEndFragmentNum}{0} +\setcounter{tikzumlComponentLevel}{0} +\setcounter{tikzumlComponentSubComponentNum}{0} +\setcounter{tikzumlConnectorNum}{1} +\setcounter{section@level}{1} +} diff --git a/docs/rapports/rapport-initial-delabre/parts/go.tex b/docs/rapports/rapport-initial-delabre/parts/go.tex new file mode 100644 index 0000000..c6b9e94 --- /dev/null +++ b/docs/rapports/rapport-initial-delabre/parts/go.tex @@ -0,0 +1,219 @@ +%%%%%%%%%% +% Macros % +%%%%%%%%%% + +% Dessine une pierre en X, Y de la couleur donnée +% (doit être utilisé dans un environnement TikZ) +\newcommand{\fillstone}[3]{ +\draw [fill=#3] (#1,#2) circle (.4); +} + +%%%%%%%%%% +% Source % +%%%%%%%%%% + +\chapter{Jeu de go} + +Joué en occident depuis le XIX siècle, le jeu de go est originaire +d'Asie et vieux de plusieurs milliers d'années. La société étasunienne +de Go le décrit comme \flqq~le plus ancien jeu toujours joué sous +sa forme originale.~\frqq~\cite{ggo-aga} +Comme les échecs, le jeu de go est déterminé, à information complète +et parfaite~: à tout moment tous les joueurs ont la même information +à disposition pour décider de leur coup et il n'y a pas de hasard.~\cite{game-theory-wiki} + +Malgré la simplicité apparente du jeu, le nombre de combinaisons possibles +s'élève à plus de $10^{600},$ ce qui en fait l'un des objectifs non-atteints +les plus anciens en matière de recherche en intelligence artificielle. +Le programme \emph{AlphaGo} de \emph{Google} tentera en mars prochain de rivaliser +avec le meilleur joueur de go au monde, Lee Sedol.~\cite{ggo-ai,ggo-compqueens} + +\section{Principes} + +\subsection{Matériel} + +Le jeu se joue sur un plateau de $18 \times 18$ cases (soit +$19 \times 19$ intersections) appelé \emph{goban.} Deux joueurs +s'affrontent en posant à tour de rôle des pierres blanches +et noires. + +\subsection{Règles} + +Lorsqu'un joueur doit jouer, il peut soit poser une pierre +de sa couleur sur une des intersections du \emph{goban,} soit passer son tour. +Si les deux joueurs passent successivement, la partie est terminée.~\cite{ggo-ffg} + +\begin{wrapfigure}[12]{r}{0.35\linewidth} + \centering + \input{./figures/go-ex-1} + \caption{La chaîne blanche sera capturée par la pose d'une pierre noire en~(1)} + \label{fig:go-ex-1} +\end{wrapfigure} + +On définit une chaîne comme étant une zone de pierres +interconnectées horizontalement ou verticalement (mais pas +diagonalement). Les \emph{libertés} d'une telle chaîne +sont le nombre d'intersections vides autour d'elles (horizontalement, +verticalement, mais pas diagonalement). + +Si, en plaçant une pierre, un joueur supprime la dernière +liberté d'une chaîne adverse, la chaîne en question est capturée +et retirée du plateau, comme montré en figure \ref{fig:go-ex-1}. +Un joueur peut placer sa pierre n'importe où sur le +\emph{goban,} pour peu que cela ne supprime pas toutes les libertés +d'une de ses chaînes et que cela ne répète pas une position précédente du jeu. + +\subsection{Fin du jeu} + +À la fin de la partie, c'est-à-dire après que les deux joueurs +ont passé leur tour, on décompte les points. Chaque pierre +présente sur le \emph{goban} rapporte un point, ainsi que chaque +intersection vide à l'intérieur du territoire d'un joueur. +Un territoire d'un joueur est défini comme étant une zone inoccupée du plateau, +séparée du reste uniquement par des pierres de la couleur attribuée à ce joueur. +La figure \ref{fig:go-ex-2} montre des exemples de territoires. + +\begin{figure}[h!] + \centering + \input{./figures/go-ex-2} + \caption{Un territoire du joueur attribué aux blancs en~(1) et un territoire du joueur attribué aux noirs en~(2)} + \label{fig:go-ex-2} +\end{figure} + +\section{Modélisation} + +Seules les $19 \times 19$ intersections de la grille sont utilisées, +pas les cases. On pourra donc utiliser un tableau de tableaux de taille +$19 \times 19.$ À tout moment, chaque case peut soit être vide, soit +occupée par une pierre noire, soit occupée par une pierre blanche. +On optera donc pour un tableau de tableaux d'entiers, en représentant +par $0$ l'état vide, $1$ la présence d'une pierre noire et $2$ la +présence d'une pierre blanche. + +On maintiendra en tout temps une liste des chaînes actives, avec une +liste des intersections occupées par ces chaînes et le nombre de leurs libertés. +Après chaque coup, la grille sera hachée et le résultat sera ajouté +dans une liste appelée la liste des positions précédentes. + +\section{Algorithmes} + +\begin{description} + \item[Initialisation] Allocation d'une grille de taille + $19 \times 19,$ initialisée à $0$. + \item[Placement d'une pierre] Étant donnés une position et + la couleur de la pierre à placer. + \begin{enumerate} + \item Si la pierre se situe en dehors de la grille, le coup est invalide. + Terminer l'algorithme. + \item Faire une copie de la grille et de la liste des chaînes. Dans le + reste de l'algorithme, on opérera uniquement sur ces copies, sauf mention contraire. + \item À la position choisie dans la grille, affecter l'entier correspondant + à la couleur du joueur (1 ou 2). + \item Hacher la grille et comparer l'empreinte à la liste des positions + précédentes. S'il y a correspondance, le coup reproduit un état de jeu déjà + atteint, donc le coup est invalide. Terminer l'algorithme. + \item Identifier toutes les chaînes voisines horizontalement et + verticalement à la pierre placée. Mettre à jour les libertés et + les pierres composant ces chaînes. + \item Si une chaîne voisine de la couleur adverse n'a plus aucune + liberté, effacer toutes ses pierres dans la grille et supprimer la + chaîne de la liste des chaînes. Mettre à jour les libertés des + chaînes voisines. + \item Si une chaîne voisine de la couleur du joueur jouant le coup + n'a plus aucune liberté, le coup est invalide. Terminer + l'algorithme. + \item Appliquer les grilles copiées dans les grilles originales. + \item Ajouter l'empreinte de la grille à la liste des positions + précédentes. + \end{enumerate} + \item[Décompte des points] On initialise deux compteurs pour les points + du joueur attribué aux noirs et les points du joueur attribué aux blancs. + Pour parcourir les territoires des joueurs on utilise une variante de + l'algorithme de remplissage par diffusion.~\cite{ggo-algofloodfill} + \begin{enumerate} + \item Parcourir la grille et attribuer un point par pierre placée à chaque joueur. + \item Créer une grille $G$ de même taille que la grille de jeu, initialisée à 0. + \item Pour chaque case $C$ dans la grille de $(0,0)$ à $(18,18)$, si la case n'est + pas vide ou si $G[C] = 1,$ passer à la case suivante, sinon~: + \begin{enumerate} + \item initialiser une liste $L$ contenant uniquement $C$~; + \item initialiser un compteur $cases$ à 0~; + \item initialiser une variable $couleur$ vide~; + \item tant que la liste $L$ n'est pas vide, faire~: + \begin{enumerate} + \item prendre $D$ la première case de $L$~; + \item supprimer le premier élément de $L$~; + \item si la case $D$ est vide, passer $G[D]$ à 1, + ajouter les cases au nord, au sud, à l'est et à l'ouest de $D$ dans $L$ si + elles ne sont pas telles que $G[X] = 1,$ et incrémenter $cases$~; + \item sinon, si $couleur$ est vide, $couleur := couleur(D)$~; + \item sinon, si $couleur \neq couleur(D), couleur := mixte$~; + \end{enumerate} + \item si $couleur = noir,$ ajouter $cases$ points au joueur attribué + aux pierres noires. Si $couleur = blanc,$ ajouter $cases$ points + au joueur attribué aux pierres blanches. + \end{enumerate} + \end{enumerate} + \item[Affichage] La grille sera parcourue case par case. Chaque valeur + différente de 0 provoquera le placement d'un pion sur l'intersection + correspondante de la couleur correspondante. Le programme devra + être réceptif aux clics sur la grille et appeler l'algorithme de placement + d'un pion en conséquence. +\end{description} + +\section{Spécifications} + +\subsection{Version initiale} + +On choisira le langage C++, qui possède les structures requises dans +la section précédente, et est enseigné dans le cursus. Il n'y a pas de difficulté +algorithmique particulière qui justifie le choix d'un langage différent, +sachant que le choix d'un tel langage pourrait ralentir le développement. + +On préfèrera un affichage fenêtré au vu des nombreuses interactions +qui seront facilitées par l'usage de la souris. On proposera une +grille de taille fixe $19 \times 19.$ +Les deux joueurs utiliseront la même fenêtre, plaçant leur +pierre à tour de rôle. + +Les types standards, comme +\texttt{std::vector} ou \texttt{std::unordered\_map}, seront utilisés +pour représenter les structures abordées dans la section traitant +de la modélisation. + +\subsection{Améliorations possibles} + +Une interface plus travaillée pourra être proposée avec un +choix parmi différentes tailles standard de grille telles que +$9 \times 9$ et $13 \times 13.$ +Les joueurs pourront s'affronter en réseau. + +\section{Organisation} + +L'implémentation des algorithmes +demandera de la documentation sur les hachages, les +tableaux associatifs et autres structures abordées ci-avant. +Il y a deux algorithmes principaux~: le décompte des points +et le placement d'une pierre. On consacrera à la mise au point +des algorithmes initiaux et à leur perfection 40 heures au total. + +Pendant le développement des algorithmes, le fenêtrage +pourra être conçu avec l'interface de choix des grilles +et de présentation des résultats. On pourra y consacrer +10 heures. + +La mise en réseau du jeu se fera lorsque les algorithmes +seront suffisamment robustes. Elle nécessitera de la +documentation sur les \emph{sockets} avec la SFML. On +pourra y consacrer 15 heures. + +La rédaction du rapport s'effectuera en continu pendant la création du jeu. +La figure~\ref{fig:go-gantt} présente un diagramme de Gantt résumant +la répartition du travail. + +\begin{figure}[h!] + \centering + \input{./figures/go-gantt} + \caption{Développement du jeu de go sur 40 heures} + \label{fig:go-gantt} +\end{figure} diff --git a/docs/rapports/rapport-initial-delabre/parts/intro.aux b/docs/rapports/rapport-initial-delabre/parts/intro.aux new file mode 100644 index 0000000..57d175f --- /dev/null +++ b/docs/rapports/rapport-initial-delabre/parts/intro.aux @@ -0,0 +1,69 @@ +\relax +\providecommand\hyper@newdestlabel[2]{} +\@writefile{toc}{\contentsline {chapter}{Introduction}{2}{chapter*.2}} +\@setckpt{./parts/intro}{ +\setcounter{page}{3} +\setcounter{equation}{0} +\setcounter{enumi}{0} +\setcounter{enumii}{0} +\setcounter{enumiii}{0} +\setcounter{enumiv}{0} +\setcounter{footnote}{0} +\setcounter{mpfootnote}{0} +\setcounter{part}{0} +\setcounter{chapter}{0} +\setcounter{section}{0} +\setcounter{subsection}{0} +\setcounter{subsubsection}{0} +\setcounter{paragraph}{0} +\setcounter{subparagraph}{0} +\setcounter{figure}{0} +\setcounter{table}{0} +\setcounter{Item}{0} +\setcounter{Hfootnote}{0} +\setcounter{bookmark@seq@number}{1} +\setcounter{ganttnum}{0} +\setcounter{ganttwidth}{0} +\setcounter{gantttitlenum}{0} +\setcounter{tikzumlPackageLayers}{3} +\setcounter{tikzumlFragmentLayers}{3} +\setcounter{tikzumlStateLayers}{3} +\setcounter{tikzumlComponentLayers}{3} +\setcounter{tikzumlPackageClassNum}{0} +\setcounter{tikzumlPackageSubPackageNum}{0} +\setcounter{tikzumlRelationNum}{1} +\setcounter{tikzumlNoteNum}{1} +\setcounter{pos}{0} +\setcounter{posT}{0} +\setcounter{posStereo}{0} +\setcounter{tikzumlPackageLevel}{0} +\setcounter{tikzumlSystemUseCaseNum}{0} +\setcounter{tikzumlSystemLevel}{0} +\setcounter{tikzumlUseCaseNum}{0} +\setcounter{tikzumlActorNum}{0} +\setcounter{tikzumlStateJoinNum}{0} +\setcounter{tikzumlStateDecisionNum}{0} +\setcounter{tikzumlStateInitialNum}{0} +\setcounter{tikzumlStateFinalNum}{0} +\setcounter{tikzumlStateEnterNum}{0} +\setcounter{tikzumlStateExitNum}{0} +\setcounter{tikzumlStateEndNum}{0} +\setcounter{tikzumlStateHistoryNum}{0} +\setcounter{tikzumlStateDeepHistoryNum}{0} +\setcounter{tikzumlStateLevel}{0} +\setcounter{tikzumlStateSubStateNum}{0} +\setcounter{tikzumlStateText}{0} +\setcounter{tikzumlObjectNum}{0} +\setcounter{tikzumlCallLevel}{0} +\setcounter{tikzumlCallNum}{0} +\setcounter{tikzumlFragmentLevel}{0} +\setcounter{tikzumlFragmentLevelNum}{0} +\setcounter{tikzumlFragmentNum}{0} +\setcounter{tikzumlFragmentPartNum}{0} +\setcounter{tikzumlCallStartFragmentNum}{0} +\setcounter{tikzumlCallEndFragmentNum}{0} +\setcounter{tikzumlComponentLevel}{0} +\setcounter{tikzumlComponentSubComponentNum}{0} +\setcounter{tikzumlConnectorNum}{1} +\setcounter{section@level}{0} +} diff --git a/docs/rapports/rapport-initial-delabre/parts/intro.tex b/docs/rapports/rapport-initial-delabre/parts/intro.tex new file mode 100644 index 0000000..553893d --- /dev/null +++ b/docs/rapports/rapport-initial-delabre/parts/intro.tex @@ -0,0 +1,24 @@ +\chapter*{Introduction} +\addcontentsline{toc}{chapter}{Introduction} + +L'objectif du module Projet C.M.I. de second semestre est +de développer un jeu en groupe, ce qui permet de s'initier +à la gestion d'un projet, à la communication et à la collaboration +au sein d'une équipe, mais aussi de mobiliser les connaissances +acquises en matière d'algorithmique au premier semestre. + +Ce rapport présente ainsi trois jeux vidéos qui se prêtent +à cet exercice~: le jeu de la vie, le jeu de go et un jeu +original basé sur les jeux de plateformes. Pour chacun de ces jeux, +on étudie son principe, mais aussi les manières de le +représenter dans une machine et les algorithmes pouvant être +utilisés pour simuler le jeu. + +Cette étude est également l'occasion de réfléchir sur les +éventuelles difficultés qui seront rencontrées pendant +le développement. Est également présentée une organisation +possible pour la création du jeu. + +Enfin, les trois jeux sont comparés à la lumière de leur +intérêt algorithmique, de leur difficulté de développement +et du temps nécessaire pour les créer. diff --git a/docs/rapports/rapport-initial-delabre/parts/life.aux b/docs/rapports/rapport-initial-delabre/parts/life.aux new file mode 100644 index 0000000..052ed0b --- /dev/null +++ b/docs/rapports/rapport-initial-delabre/parts/life.aux @@ -0,0 +1,91 @@ +\relax +\providecommand\hyper@newdestlabel[2]{} +\citation{gof-wikipedia} +\citation{gof-automata} +\citation{gof-conwaylife} +\@writefile{toc}{\contentsline {chapter}{\numberline {1}Jeu de la vie}{3}{chapter.1}} +\@writefile{lof}{\addvspace {10\p@ }} +\@writefile{lot}{\addvspace {10\p@ }} +\@writefile{toc}{\contentsline {section}{\numberline {1.1}Principes}{3}{section.1.1}} +\newlabel{sec:principes}{{1.1}{3}{Principes}{section.1.1}{}} +\@writefile{lof}{\contentsline {figure}{\numberline {1.1}{\ignorespaces Mort par sous-population}}{4}{figure.1.1}} +\newlabel{fig:life-ex-1}{{1.1}{4}{Mort par sous-population}{figure.1.1}{}} +\@writefile{lof}{\contentsline {figure}{\numberline {1.2}{\ignorespaces Un oscillateur, une configuration qui se r\IeC {\'e}p\IeC {\`e}te ind\IeC {\'e}finiment}}{4}{figure.1.2}} +\newlabel{fig:life-ex-2}{{1.2}{4}{Un oscillateur, une configuration qui se répète indéfiniment}{figure.1.2}{}} +\@writefile{lof}{\contentsline {figure}{\numberline {1.3}{\ignorespaces Stabilisation de la configuration en quatre \IeC {\'e}tats}}{4}{figure.1.3}} +\newlabel{fig:life-ex-3}{{1.3}{4}{Stabilisation de la configuration en quatre états}{figure.1.3}{}} +\@writefile{toc}{\contentsline {section}{\numberline {1.2}Mod\IeC {\'e}lisation}{5}{section.1.2}} +\@writefile{toc}{\contentsline {section}{\numberline {1.3}Algorithmes}{5}{section.1.3}} +\citation{gof-hashlife} +\@writefile{toc}{\contentsline {section}{\numberline {1.4}Sp\IeC {\'e}cifications}{6}{section.1.4}} +\@writefile{toc}{\contentsline {subsection}{\numberline {1.4.1}Version initiale}{6}{subsection.1.4.1}} +\@writefile{toc}{\contentsline {subsection}{\numberline {1.4.2}Am\IeC {\'e}liorations possibles}{6}{subsection.1.4.2}} +\@writefile{toc}{\contentsline {section}{\numberline {1.5}Organisation}{7}{section.1.5}} +\@writefile{lof}{\contentsline {figure}{\numberline {1.4}{\ignorespaces D\IeC {\'e}veloppement du jeu de la vie sur 40 heures}}{7}{figure.1.4}} +\newlabel{fig:life-gantt}{{1.4}{7}{Développement du jeu de la vie sur 40 heures}{figure.1.4}{}} +\@setckpt{./parts/life}{ +\setcounter{page}{8} +\setcounter{equation}{0} +\setcounter{enumi}{3} +\setcounter{enumii}{1} +\setcounter{enumiii}{4} +\setcounter{enumiv}{0} +\setcounter{footnote}{0} +\setcounter{mpfootnote}{0} +\setcounter{part}{0} +\setcounter{chapter}{1} +\setcounter{section}{5} +\setcounter{subsection}{0} +\setcounter{subsubsection}{0} +\setcounter{paragraph}{0} +\setcounter{subparagraph}{0} +\setcounter{figure}{4} +\setcounter{table}{0} +\setcounter{Item}{15} +\setcounter{Hfootnote}{0} +\setcounter{bookmark@seq@number}{7} +\setcounter{ganttnum}{-5} +\setcounter{ganttwidth}{8} +\setcounter{gantttitlenum}{45} +\setcounter{tikzumlPackageLayers}{3} +\setcounter{tikzumlFragmentLayers}{3} +\setcounter{tikzumlStateLayers}{3} +\setcounter{tikzumlComponentLayers}{3} +\setcounter{tikzumlPackageClassNum}{0} +\setcounter{tikzumlPackageSubPackageNum}{0} +\setcounter{tikzumlRelationNum}{1} +\setcounter{tikzumlNoteNum}{1} +\setcounter{pos}{0} +\setcounter{posT}{0} +\setcounter{posStereo}{0} +\setcounter{tikzumlPackageLevel}{0} +\setcounter{tikzumlSystemUseCaseNum}{0} +\setcounter{tikzumlSystemLevel}{0} +\setcounter{tikzumlUseCaseNum}{0} +\setcounter{tikzumlActorNum}{0} +\setcounter{tikzumlStateJoinNum}{0} +\setcounter{tikzumlStateDecisionNum}{0} +\setcounter{tikzumlStateInitialNum}{0} +\setcounter{tikzumlStateFinalNum}{0} +\setcounter{tikzumlStateEnterNum}{0} +\setcounter{tikzumlStateExitNum}{0} +\setcounter{tikzumlStateEndNum}{0} +\setcounter{tikzumlStateHistoryNum}{0} +\setcounter{tikzumlStateDeepHistoryNum}{0} +\setcounter{tikzumlStateLevel}{0} +\setcounter{tikzumlStateSubStateNum}{0} +\setcounter{tikzumlStateText}{0} +\setcounter{tikzumlObjectNum}{0} +\setcounter{tikzumlCallLevel}{0} +\setcounter{tikzumlCallNum}{0} +\setcounter{tikzumlFragmentLevel}{0} +\setcounter{tikzumlFragmentLevelNum}{0} +\setcounter{tikzumlFragmentNum}{0} +\setcounter{tikzumlFragmentPartNum}{0} +\setcounter{tikzumlCallStartFragmentNum}{0} +\setcounter{tikzumlCallEndFragmentNum}{0} +\setcounter{tikzumlComponentLevel}{0} +\setcounter{tikzumlComponentSubComponentNum}{0} +\setcounter{tikzumlConnectorNum}{1} +\setcounter{section@level}{1} +} diff --git a/docs/rapports/rapport-initial-delabre/parts/life.tex b/docs/rapports/rapport-initial-delabre/parts/life.tex new file mode 100644 index 0000000..5cebee6 --- /dev/null +++ b/docs/rapports/rapport-initial-delabre/parts/life.tex @@ -0,0 +1,205 @@ +%%%%%%%%%% +% Macros % +%%%%%%%%%% + +% Associe les couleurs en fonction de l'état d'une cellule +\newcommand{\cellcolor}[1]{% +\ifnum\pdfstrcmp{#1}{alive}=0 matblue\fi% +\ifnum\pdfstrcmp{#1}{dying}=0 matred\fi% +\ifnum\pdfstrcmp{#1}{nascent}=0 matgreen\fi} + +% Dessine une cellule en X, Y dans l'état donné (doit être +% utilisé dans un environnement TikZ) +\newcommand{\fillcell}[3]{ +\ifnum\pdfstrcmp{#3}{stillborn}=0 +\draw [fill=\cellcolor{dying}] (#1,#2) -- (#1+1,#2) -- (#1+1,#2+1) -- (#1,#2); +\draw [fill=\cellcolor{nascent}] (#1,#2) -- (#1,#2+1) -- (#1+1,#2+1) -- (#1,#2); +\else +\draw [fill=\cellcolor{#3}] (#1,#2) rectangle (#1+1,#2+1); +\fi +} + +%%%%%%%%%% +% Source % +%%%%%%%%%% + +\chapter{Jeu de la vie} + +Le jeu de la vie, inventé par John Conway en 1970, est l'exemple le plus +populaire d'automate cellulaire. +\cite{gof-wikipedia} +Un automate cellulaire est un ensemble +de cellules pouvant être dans plusieurs états différents et dont l'état +suivant est entièrement déterminé à partir de l'état actuel. +\cite{gof-automata} + +Il présente un intérêt théorique car il a été démontré que le jeu de la vie +est Turing-complet, c'est-à-dire que n'importe quel algorithme peut +y être implémenté. + +\section{Principes}\label{sec:principes} + +Le jeu de la vie est composé d'une grille infinie de cellules pouvant +être soit mortes soit vivantes. Le jeu est constitué d'états : un état du jeu +est l'ensemble des états (vivante ou morte) de chacune de ses cellules à +un moment précis. Seul l'état initial est fourni, les états suivants sont calculés +de proche en proche selon les règles suivantes~: + +\begin{enumerate} + \item si une cellule a trois voisines à l'état $n$, elle est vivante à l'état $n+1$ ; + \item si une cellule a deux voisines à l'état $n$, elle persévère dans son état ; + \item si une cellule a moins de deux ou plus de trois voisines à l'état $n$, elle est morte à l'état $n+1$. + \cite{gof-conwaylife} +\end{enumerate} + +Les figures~\ref{fig:life-ex-1}, \ref{fig:life-ex-2} et \ref{fig:life-ex-3} montrent +trois situations typiques du jeu de la vie sur des portions de grilles. +Dans ces figures, une case \tikz[scale=.2]{\fillcell{0}{0}{nascent}} représente +une cellule qui vient de naître, une case \tikz[scale=.2]{\fillcell{0}{0}{dying}} +représente une cellule qui va mourir à l'état suivant et une case +\tikz[scale=.2]{\fillcell{0}{0}{alive}} représente une cellule vivante. + +\begin{figure}[p!] + \centering + \input{./figures/life-ex-1} + \caption{Mort par sous-population} + \label{fig:life-ex-1} +\end{figure} + +\begin{figure}[p!] + \centering + \input{./figures/life-ex-2} + \caption{Un oscillateur, une configuration qui se répète indéfiniment} + \label{fig:life-ex-2} +\end{figure} + +\begin{figure}[p!] + \centering + \input{./figures/life-ex-3} + \caption{Stabilisation de la configuration en quatre états} + \label{fig:life-ex-3} +\end{figure} + +\section{Modélisation} + +Les cellules peuvent prendre uniquement deux états, vivante ou +morte. Pour cette raison, il est naturel de représenter une +cellule par un booléen, \texttt{true} pour une cellule +vivante et \texttt{false} pour une cellule morte. +Pour la représentation d'une grille de cellules, on utilisera donc +un tableau de tableaux de booléens. + +Les tableaux seront de taille suffisamment grande pour éviter qu'une +structure n'arrive à la bordure. En effet, le comportement à la bordure +d'une grille n'est pas défini dans les règles du jeu de la vie puisqu'il +est censé se dérouler sur une grille infinie. + +\section{Algorithmes} + +Quatre algorithmes doivent être définis pour gérer la grille. + +\begin{description} + \item[Initialisation de la grille] Allocation d'une grille de taille + donnée et initialisation de tous les booléens à \texttt{false}. + \item[Détermination du nombre de voisins vivants] Reçoit une grille $G$ + et une position de cellule $(x, y)$. + \begin{enumerate} + \item Soit $total := 0$. + \item Pour $i$ allant de $x - 1$ à $x + 1$~: + \begin{enumerate} + \item pour $j$ allant de $y - 1$ à $y + 1$, si + $(i, j)$ est une position valide et + $(i, j)$ est une cellule vivante de $G$ et + $(i, j) \neq (x, y)$, alors $total := total + 1$. + \end{enumerate} + \item Renvoyer $total$. + \end{enumerate} + \item[Calcul de l'état suivant] Reçoit une grille $G$ et calcule + la grille représentant l'état suivant du jeu. + \begin{enumerate} + \item Soit $G^\prime$ une grille de même taille que $G$. + \item Pour $i$ allant de $0$ à la taille horizontale de $G$~: + \begin{enumerate} + \item pour $j$ allant de $0$ à la taille verticale de $G$~: + \begin{enumerate} + \item appeler l'algorithme \textbf{Détermination du nombre de voisins vivants} + sur la grille $G$ et la case $(i, j)$ et stocker le résultat dans $voisins$~; + \item si $voisins = 3$, $G^\prime(i, j) := \mathtt{true}$~; + \item sinon, si $voisins = 2$, $G^\prime(i, j) := G(i, j)$~; + \item sinon, $G^\prime(i, j) := \mathtt{false}$. + \end{enumerate} + \end{enumerate} + \item Renvoyer $G^\prime$. + \end{enumerate} + \item[Affichage de la grille] Doit parcourir chaque cellule + d'une grille donnée pour afficher à l'écran l'état de celle-ci. L'algorithme + dépendra principalement du type d'affichage choisi (terminal, fenêtré). +\end{description} + +Le programme principal se charge d'appeler l'algorithme 1, puis +d'appeler de manière répétée les algorithmes 3 et 4 pour afficher +les états suivants. + +\section{Spécifications} + +\subsection{Version initiale} + +On choisira le langage C++, qui possède les structures requises dans +la section précédente, et est enseigné dans le cursus. Il n'y a pas de difficulté +algorithmique particulière qui justifie le choix d'un langage différent, +sachant que le choix d'un tel langage pourrait ralentir le développement. + +L'affichage de la grille se fera dans le terminal. Un algorithme +naïf sera choisi pour le calcul de l'état suivant, se contenant de parcourir +chaque cellule et de calculer son état, sans recherche d'optimisation. + +L'état initial sera choisi par l'utilisateur parmi une série de +préconfigurations codées \emph{en dur} dans le programme. + +Le type \texttt{std::vector\null>} de la librairie +standard C++ sera utilisé pour représenter les grilles car il permet +une allocation dynamique automatiquement gérée. + +\subsection{Améliorations possibles} + +L'affichage peut s'effectuer en fenêtré. Les bibliothèques +SDL~(en C) ou SFML~(en C++, orienté objet) peuvent être choisies +et seront utilisées dans l'algorithme d'affichage pour le dessin +des cellules, et dans le programme principal pour initialiser la fenêtre. + +On peut laisser l'utilisateur choisir l'état initial en cliquant +sur les cellules. L'utilisateur pourra contrôler la génération grâce +à un bouton marche/arrêt, pas à pas, ou remise à zéro. On peut +également fournir une série de préconfigurations parmi lesquelles choisir +dans l'interface. + +Enfin, un algorithme plus performant peut être utilisé, réduisant +les calculs inutiles. Par exemple, l'algorithme \emph{Hashlife,} +\cite{gof-hashlife} +utilisant des \emph{quadtrees} et une table de hachage peut améliorer +considérablement les performances (mais peut être difficile à implémenter). + +\section{Organisation} + +Pour la version initiale du programme, il y a quatre algorithmes à +mettre en place. Ces algorithmes reprennent des concepts +vus en cours. On pourra y consacrer 10 heures. + +Pour l'affichage fenêtré, il faudra se renseigner sur l'A.P.I. des +bibliothèques utilisées, concevoir une interface (placement des boutons, +de la grille) et l'implémenter. On pourra prévoir 10 heures. + +L'implémentation de l'algorithme \emph{Hashlife} requièrera des renseignements +sur l'utilisation des \emph{quadtrees} et des tables de hachages ainsi +que sur l'algorithme en lui-même. Prévoir 20 heures. + +La rédaction du rapport s'effectuera en continu pendant la création du jeu. +La figure~\ref{fig:life-gantt} présente un diagramme de Gantt résumant +la répartition du travail. + +\begin{figure}[h!] + \centering + \input{./figures/life-gantt} + \caption{Développement du jeu de la vie sur 40 heures} + \label{fig:life-gantt} +\end{figure} diff --git a/docs/rapports/rapport-initial-delabre/parts/ptf.aux b/docs/rapports/rapport-initial-delabre/parts/ptf.aux new file mode 100644 index 0000000..473163e --- /dev/null +++ b/docs/rapports/rapport-initial-delabre/parts/ptf.aux @@ -0,0 +1,100 @@ +\relax +\providecommand\hyper@newdestlabel[2]{} +\@writefile{toc}{\contentsline {chapter}{\numberline {3}Jeu de plateformes coop\IeC {\'e}ratif}{13}{chapter.3}} +\@writefile{lof}{\addvspace {10\p@ }} +\@writefile{lot}{\addvspace {10\p@ }} +\@writefile{toc}{\contentsline {section}{\numberline {3.1}Principes}{13}{section.3.1}} +\@writefile{toc}{\contentsline {subsection}{\numberline {3.1.1}Joueurs}{14}{subsection.3.1.1}} +\newlabel{section:ptf-joueurs}{{3.1.1}{14}{Joueurs}{subsection.3.1.1}{}} +\@writefile{toc}{\contentsline {subsection}{\numberline {3.1.2}Cam\IeC {\'e}ra}{14}{subsection.3.1.2}} +\@writefile{toc}{\contentsline {subsection}{\numberline {3.1.3}Blocs}{14}{subsection.3.1.3}} +\newlabel{section:ptf-blocs}{{3.1.3}{14}{Blocs}{subsection.3.1.3}{}} +\citation{ptf-euler} +\@writefile{toc}{\contentsline {section}{\numberline {3.2}Mod\IeC {\'e}lisation}{15}{section.3.2}} +\@writefile{lof}{\contentsline {figure}{\numberline {3.1}{\ignorespaces Diagramme des classes utilis\IeC {\'e}es}}{15}{figure.3.1}} +\newlabel{fig:ptf-uml-diagram}{{3.1}{15}{Diagramme des classes utilisées}{figure.3.1}{}} +\@writefile{toc}{\contentsline {section}{\numberline {3.3}Algorithmes}{16}{section.3.3}} +\newlabel{section:ptf-algos}{{3.3}{16}{Algorithmes}{section.3.3}{}} +\@writefile{toc}{\contentsline {subsection}{\numberline {3.3.1}Physique}{16}{subsection.3.3.1}} +\citation{ptf-collision-detection} +\citation{ptf-collision-response} +\@writefile{toc}{\contentsline {subsection}{\numberline {3.3.2}Dessin}{17}{subsection.3.3.2}} +\@writefile{toc}{\contentsline {subsection}{\numberline {3.3.3}Moteur}{17}{subsection.3.3.3}} +\@writefile{toc}{\contentsline {section}{\numberline {3.4}Sp\IeC {\'e}cifications}{17}{section.3.4}} +\@writefile{toc}{\contentsline {subsection}{\numberline {3.4.1}Version initiale}{17}{subsection.3.4.1}} +\@writefile{lof}{\contentsline {figure}{\numberline {3.2}{\ignorespaces Vue explos\IeC {\'e}e des trois couches de rendu du jeu}}{18}{figure.3.2}} +\newlabel{fig:ptf-layering-exploded}{{3.2}{18}{Vue explosée des trois couches de rendu du jeu}{figure.3.2}{}} +\@writefile{lof}{\contentsline {figure}{\numberline {3.3}{\ignorespaces Une configuration similaire \IeC {\`a} celle de la figure \ref {fig:ptf-layering-exploded}, vue de face}}{18}{figure.3.3}} +\newlabel{fig:ptf-layering-merged}{{3.3}{18}{Une configuration similaire à celle de la figure \ref {fig:ptf-layering-exploded}, vue de face}{figure.3.3}{}} +\citation{ptf-verlet} +\citation{ptf-rk4} +\@writefile{toc}{\contentsline {subsection}{\numberline {3.4.2}Am\IeC {\'e}liorations possibles}{19}{subsection.3.4.2}} +\@writefile{toc}{\contentsline {section}{\numberline {3.5}Organisation}{19}{section.3.5}} +\@writefile{lof}{\contentsline {figure}{\numberline {3.4}{\ignorespaces D\IeC {\'e}veloppement du jeu sur 40 heures}}{20}{figure.3.4}} +\newlabel{fig:ptf-gantt}{{3.4}{20}{Développement du jeu sur 40 heures}{figure.3.4}{}} +\@setckpt{./parts/ptf}{ +\setcounter{page}{21} +\setcounter{equation}{0} +\setcounter{enumi}{3} +\setcounter{enumii}{4} +\setcounter{enumiii}{5} +\setcounter{enumiv}{0} +\setcounter{footnote}{0} +\setcounter{mpfootnote}{0} +\setcounter{part}{0} +\setcounter{chapter}{3} +\setcounter{section}{5} +\setcounter{subsection}{0} +\setcounter{subsubsection}{0} +\setcounter{paragraph}{0} +\setcounter{subparagraph}{0} +\setcounter{figure}{4} +\setcounter{table}{0} +\setcounter{Item}{58} +\setcounter{Hfootnote}{0} +\setcounter{bookmark@seq@number}{19} +\setcounter{ganttnum}{-12} +\setcounter{ganttwidth}{8} +\setcounter{gantttitlenum}{45} +\setcounter{tikzumlPackageLayers}{3} +\setcounter{tikzumlFragmentLayers}{3} +\setcounter{tikzumlStateLayers}{3} +\setcounter{tikzumlComponentLayers}{3} +\setcounter{tikzumlPackageClassNum}{0} +\setcounter{tikzumlPackageSubPackageNum}{0} +\setcounter{tikzumlRelationNum}{3} +\setcounter{tikzumlNoteNum}{1} +\setcounter{pos}{19} +\setcounter{posT}{80} +\setcounter{posStereo}{50} +\setcounter{tikzumlPackageLevel}{0} +\setcounter{tikzumlSystemUseCaseNum}{0} +\setcounter{tikzumlSystemLevel}{0} +\setcounter{tikzumlUseCaseNum}{0} +\setcounter{tikzumlActorNum}{0} +\setcounter{tikzumlStateJoinNum}{0} +\setcounter{tikzumlStateDecisionNum}{0} +\setcounter{tikzumlStateInitialNum}{0} +\setcounter{tikzumlStateFinalNum}{0} +\setcounter{tikzumlStateEnterNum}{0} +\setcounter{tikzumlStateExitNum}{0} +\setcounter{tikzumlStateEndNum}{0} +\setcounter{tikzumlStateHistoryNum}{0} +\setcounter{tikzumlStateDeepHistoryNum}{0} +\setcounter{tikzumlStateLevel}{0} +\setcounter{tikzumlStateSubStateNum}{0} +\setcounter{tikzumlStateText}{0} +\setcounter{tikzumlObjectNum}{0} +\setcounter{tikzumlCallLevel}{0} +\setcounter{tikzumlCallNum}{0} +\setcounter{tikzumlFragmentLevel}{0} +\setcounter{tikzumlFragmentLevelNum}{0} +\setcounter{tikzumlFragmentNum}{0} +\setcounter{tikzumlFragmentPartNum}{0} +\setcounter{tikzumlCallStartFragmentNum}{0} +\setcounter{tikzumlCallEndFragmentNum}{0} +\setcounter{tikzumlComponentLevel}{0} +\setcounter{tikzumlComponentSubComponentNum}{0} +\setcounter{tikzumlConnectorNum}{1} +\setcounter{section@level}{1} +} diff --git a/docs/rapports/rapport-initial-delabre/parts/ptf.tex b/docs/rapports/rapport-initial-delabre/parts/ptf.tex new file mode 100644 index 0000000..5c04793 --- /dev/null +++ b/docs/rapports/rapport-initial-delabre/parts/ptf.tex @@ -0,0 +1,308 @@ +\chapter{Jeu de plateformes coopératif} + +Les jeux de plateformes sont un des premiers genres +à avoir émergé dans le monde du jeu vidéo. Ils consistent +à faire progresser un personnage en le faisant aller +de plateforme en plateforme, d'où leur nom. + +Le troisième jeu étudié a un principe original, inspiré +des jeux de plateformes, de coopération et de réflexion. Il +s'agira pour deux joueurs de faire traverser deux balles +aimantées à travers un niveau, certains éléments du décor +étant eux aussi aimantés. + +La conception du jeu s'appuiera sur cet élément +physique pour proposer des niveaux sous forme de casse-têtes, +dans lesquels les deux participants devront s'entraider et +réfléchir pour parvenir à la fin. + +\section{Principes} + +Deux joueurs doivent s'entraider pour faire avancer leur balle à travers +des niveaux. Les joueurs exploitent pour ce faire les mécanismes +physiques définis dans la section \ref{section:ptf-joueurs}. + +Le jeu est constitué d'une suite de niveaux, chaque niveau +étant une grille de blocs en deux dimensions. Ces grilles sont +définies en avance par le programmeur. Les blocs interagissent +avec les balles comme défini dans les sections \ref{section:ptf-joueurs} +et \ref{section:ptf-blocs}. + +Les joueurs valident un niveau en faisant parvenir toutes les +balles dans une zone d'arrivée prédéfinie. Ils passent +ainsi au niveau suivant. Le but du jeu est de terminer tous +les niveaux. + +\subsection{Joueurs} +\label{section:ptf-joueurs} + +Les deux joueurs contrôlent chacun une balle. Ces balles ont pour +propriétés leur position dans le plan, leur vitesse et leur charge +électrique. Les balles évoluent par interactions +avec le joueur et par interactions physiques. + +Un joueur peut interagir avec sa balle de trois manières~: +il peut lui donner de la vitesse vers la gauche de la fenêtre, +la droite de la fenêtre, ou inverser la polarité de la balle. +Le joueur ne peut pas faire « sauter » sa balle. + +L'évolution des balles, en dehors du contrôle des joueurs, est +conditionnée par les phénomènes physiques suivants~: + +\begin{itemize} + \item une force de gravité qui agit en tout point et attire + les balles vers le bas, le haut, la gauche ou la droite de la + fenêtre. L'orientation de cette force peut être modifiée par les + actions d'une balle en cours de jeu~; + + \item une force de réaction qui agit de telle sorte + que les balles ne puissent pas traverser les blocs~; + + \item des forces de frottements lorsque la balle se situe + au contact d'un bloc. L'intensité de cette force varie + en fonction des types de blocs~; + + \item une force d'interaction coulombienne entre les éléments + du jeu qui sont polarisés (c'est-à-dire les balles et + certains blocs tels que définis en section \ref{section:ptf-blocs}). +\end{itemize} + +\subsection{Caméra} + +À tout moment les deux balles peuvent se situer n'importe où dans le +niveau. Il faut toutefois faire en sorte qu'elles soient toutes deux +visibles à tout moment. + +Pour ce faire, la caméra est centrée sur la position moyenne +des deux balles si celles-ci sont suffisament proches. Sinon, +l'écran est divisé en deux et chaque partie est centrée sur chacune +des balles. + +\subsection{Blocs} +\label{section:ptf-blocs} + +Le niveau est une grille de blocs. Les blocs possèdent +une position sur la grille déterminée par une paire d'entiers et +une charge électrique qui peut être annulée pour que le bloc +n'attire aucun objet. Certains blocs peuvent modifier le sens +de la gravité lorsqu'une balle rentre en collision avec eux. +Enfin, les blocs sont statiques et ne sont pas soumis +à la physique du jeu. + +\section{Modélisation} + +Les balles sont modélisées par une classe \texttt{Ball}. Cette +classe est dotée des propriétés \texttt{position}, +\texttt{velocity}, \texttt{mass} et \texttt{charge}. +Le vecteur \texttt{position} représente la position de la balle +dans le plan. Le vecteur \texttt{velocity} représente la +vitesse de la balle. Le flottant \texttt{mass} représente la masse +de la balle, qui sera utilisée dans le calcul de l'accélération. +Enfin, le flottant \texttt{charge} représente sa charge électrique. + +Les blocs sont modélisés par une classe \texttt{Block} munie +des propriétés \texttt{position} et \texttt{charge} +qui représentent la position du bloc sur la grille de jeu et +sa charge. La charge du bloc est nulle s'il n'est pas polarisé. +La classe sera étendue pour représenter des types de +blocs spécialisés. + +Enfin, une classe principale \texttt{Engine} est chargée de +coordonner les éléments du jeu +et d'organiser le dessin des \emph{frames}. Elle est +dotée d'un tableau à deux dimensions d'instances de +\texttt{Block} qui représente la grille de jeu, +d'un tableau à une dimension d'instances de \texttt{Ball} +qui stocke toutes les balles dans le niveau, et d'une +horloge qui mesure le temps écoulé entre chaque \emph{frame}. + +La figure \ref{fig:ptf-uml-diagram} présente les classes +utilisées pour la modélisation. Les méthodes de ces classes +sont détaillées dans la section suivante. + +\begin{figure}[h!] + \centering + \input{./figures/ptf-uml-diagram} + \caption{Diagramme des classes utilisées} + \label{fig:ptf-uml-diagram} +\end{figure} + +\section{Algorithmes} +\label{section:ptf-algos} + +\subsection{Physique} + +Les balles sont équipées de propriétés représentant leur +position, leur vitesse, leur masse et leur charge comme +vu dans la section précédente. On utilise +l'intégration explicite d'Euler pour calculer la nouvelle +position de chaque balle à chaque \emph{frame}. \cite{ptf-euler} +Cette méthode a l'avantage d'être simple à implémenter et rapide. + +\begin{description} + \item[\texttt{Engine::update(delta)}] + L'algorithme reçoit le temps écoulé depuis la dernière \emph{frame}. Il + calcule les forces à appliquer à chaque balle, puis appelle la procédure + \texttt{Ball::update(forces, delta)} en conséquence. + \begin{enumerate} + \item Pour chaque \texttt{ball} dans \texttt{balls}. + \item Initialiser un vecteur \texttt{forces} au vecteur nul. + \item Ajouter le vecteur $(0, g)$, $(0, -g)$, $(g, 0)$, $(-g, 0)$ + selon la direction de la gravité au vecteur \texttt{forces}. + \item Si la touche pour faire aller la balle \texttt{ball} + à gauche est enfoncée, ajouter le vecteur $(-m, 0)$ au + vecteur \texttt{forces}. + \item Si la touche pour faire aller la balle \texttt{ball} + à droite est enfoncée, ajouter le vecteur $(m, 0)$ au + vecteur \texttt{forces}. + \item Pour chaque autre élément polarisé, appliquer une + force d'attraction portée par la droite passant par les + deux éléments et de norme $c \times \frac{\mathtt{charge}_1 \times \mathtt{charge}_2}{\mathtt{distance}^2}$. + \item Gérer les collisions et les frottements. + \item Appeler \texttt{Ball::update(forces, delta)} sur \texttt{ball}. + \end{enumerate} + + \item[\texttt{Ball::update(forces, delta)}] + L'algorithme reçoit le vecteur somme de toutes les forces appliquées + à la balle et un flottant qui contient le temps écoulé depuis la + dernière \emph{frame}. Il calcule la position suivante de la balle. + \begin{enumerate} + \item $\mathtt{acceleration} := \frac{\mathtt{forces}}{\mathtt{mass}}$. + \item Ajouter $\mathtt{acceleration} \times \mathtt{delta}$ à \texttt{velocity}. + \item Ajouter $\mathtt{velocity} \times \mathtt{delta}$ à \texttt{position}. + \end{enumerate} +\end{description} + +Les constantes $g$, $m$ et $c$ devront être définies et +ajustées au cours de la conception du jeu pour que +la simulation paraisse naturelle. + +\subsection{Dessin} + +La scène du jeu est composée de trois couches, l'une pour +l'arrière-plan du jeu, une autre pour la grille de blocs, +et la dernière pour les balles. Ces couches sont représentées +sur les figures \ref{fig:ptf-layering-exploded} et \ref{fig:ptf-layering-merged}. +Chaque objet susceptible d'être dessiné à l'écran possède +une méthode \texttt{draw()}. + +\begin{description} + \item[\texttt{Ball::draw()}] Dessine la balle à sa position sur l'écran. + \item[\texttt{Block::draw()}] Dessine le bloc à sa position sur l'écran. + \item[\texttt{Engine::draw()}] Cet algorithme du moteur appelle les + différentes fonctions de dessin dans un ordre spécifique pour que + les trois couches de la scène du jeu soient correctement affichées. + \begin{enumerate} + \item Dessiner l'arrière-plan du jeu. + \item Dessiner la grille de blocs en appelant \texttt{Block::draw()} + sur les blocs de \texttt{blocks} qui sont visibles à l'écran. + \item Dessiner le premier-plan en appelant \texttt{Ball::draw()} sur + les balles de \texttt{balls} qui sont visibles à l'écran. + \end{enumerate} +\end{description} + +\begin{figure}[p!] + \centering + \input{./figures/ptf-layering-exploded} + \caption{Vue explosée des trois couches de rendu du jeu} + \label{fig:ptf-layering-exploded} +\end{figure} + +\begin{figure}[p!] + \centering + \input{./figures/ptf-layering-merged} + \caption{Une configuration similaire à celle de la figure \ref{fig:ptf-layering-exploded}, vue de face} + \label{fig:ptf-layering-merged} +\end{figure} + +\subsection{Moteur} + +\begin{description} + \item[Initialisation du moteur \texttt{Engine}]\hfill + \begin{enumerate} + \item Créer et configurer la fenêtre d'affichage du jeu. + \item Initialiser \texttt{clock} à zéro. + \item Tant que la fenêtre est ouverte~: + \begin{enumerate} + \item traiter tous les événements relatifs à la fenêtre + (notamment l'appui sur une touche, la fermeture, le redimensionnement)~; + \item calculer le temps écoulé \texttt{delta} depuis la + dernière \emph{frame} et réinitialiser \texttt{clock} à zéro~; + \item appeler l'algorithme \texttt{Engine::update(delta)}~; + \item appeler l'algorithme \texttt{Engine::draw()}. + \end{enumerate} + \end{enumerate} +\end{description} + +\section{Spécifications} + +\subsection{Version initiale} + +On choisira le langage C++, qui prend en charge le paradigme objet +et dont la syntaxe est enseignée dans le cursus. On utilisera +la librairie SFML pour son A.P.I. simple et puissante. + +Les deux joueurs partageront le clavier d'une même machine. + +On utilisera le type \texttt{sf::Vector2d} pour ce qui est +vectoriel (position, vitesse, accélération, forces). Les tableaux +utiliseront le type standard \texttt{std::vector}. Le type +\texttt{sf::Clock} sera utilisé pour l'horloge du moteur. On choisira +entre des flottants simple précision ou double précision en +fonction des besoins. + +Des recherches supplémentaires sont nécessaires notamment +concernant les algorithmes de détection et de réaction +aux collisions. \cite{ptf-collision-detection, ptf-collision-response} + +\subsection{Améliorations possibles} + +L'algorithme physique utilise la méthode explicite d'Euler. +Cette méthode engendre une erreur de simulation d'autant +plus grande que l'espacement entre les \emph{frames} est +élevé, ce qui signifie que la physique du jeu se comportera +différemment selon les performances de la machine. On pourra +opter pour des méthodes plus précises comme l'intégration +de Verlet \cite{ptf-verlet} ou la méthode de Runge-Kutta classique. +\cite{ptf-rk4} + +On pourra faire en sorte que le jeu s'exécute en réseau +entre deux machines, une pour chaque joueur. Cela requièrera +une synchronisation de la simulation physique et la mise au point d'un +protocole de communication entre les deux machines. + +\section{Organisation} + +Dans un premier temps le moteur physique et graphique devra +être conçu sur la base des algorithmes fournis dans le rapport +(hormis l'algorithme de collision, qui devra faire l'objet +de plus de recherches). Durant la mise au point de ce moteur, +un niveau de test sera créé permettant l'appréciation +et l'ajustement des variables physiques. On y consacrera 40 heures +au total. + +Ce niveau de test permettra également l'essai de différents +mécanismes de \emph{gameplay.} Ces éléments seront en parallèle +intégrés dans les niveaux finaux. La conception et le +test des niveaux se fera sur 80 heures. + +Dans le même temps, l'univers graphique, notamment les textures, +la décoration de l'interface, ainsi que la musique et les bruitages +du jeu seront réalisés. Après la réalisation des éléments +graphiques, on pourra concevoir l'interface du jeu. +On y consacrera 50 heures. + +Enfin, les tests finaux du jeu s'effecturont sur 5 heures. +On pourra éventuellement demander l'aide de personnes extérieures +pour ces essais. + +La rédaction du rapport s'effectuera en continu pendant la création du jeu. +La figure~\ref{fig:ptf-gantt} présente un diagramme de Gantt résumant +la répartition du travail. + +\begin{figure}[h!] + \centering + \input{./figures/ptf-gantt} + \caption{Développement du jeu sur 40 heures} + \label{fig:ptf-gantt} +\end{figure} diff --git a/docs/rapports/rapport-initial-delabre/rapport.aux b/docs/rapports/rapport-initial-delabre/rapport.aux new file mode 100644 index 0000000..7b25c65 --- /dev/null +++ b/docs/rapports/rapport-initial-delabre/rapport.aux @@ -0,0 +1,50 @@ +\relax +\providecommand\hyper@newdestlabel[2]{} +\catcode `:\active +\catcode `;\active +\catcode `!\active +\catcode `?\active +\providecommand\HyperFirstAtBeginDocument{\AtBeginDocument} +\HyperFirstAtBeginDocument{\ifx\hyper@anchor\@undefined +\global\let\oldcontentsline\contentsline +\gdef\contentsline#1#2#3#4{\oldcontentsline{#1}{#2}{#3}} +\global\let\oldnewlabel\newlabel +\gdef\newlabel#1#2{\newlabelxx{#1}#2} +\gdef\newlabelxx#1#2#3#4#5#6{\oldnewlabel{#1}{{#2}{#3}}} +\AtEndDocument{\ifx\hyper@anchor\@undefined +\let\contentsline\oldcontentsline +\let\newlabel\oldnewlabel +\fi} +\fi} +\global\let\hyper@last\relax +\gdef\HyperFirstAtBeginDocument#1{#1} +\providecommand\HyField@AuxAddToFields[1]{} +\providecommand\HyField@AuxAddToCoFields[2]{} +\select@language{french} +\@writefile{toc}{\select@language{french}} +\@writefile{lof}{\select@language{french}} +\@writefile{lot}{\select@language{french}} +\@input{./parts/intro.aux} +\@input{./parts/life.aux} +\@input{./parts/go.aux} +\@input{./parts/ptf.aux} +\@input{./parts/cmp.aux} +\@input{./parts/conclu.aux} +\bibstyle{unsrt} +\bibdata{rapport} +\bibcite{gof-wikipedia}{1} +\bibcite{gof-automata}{2} +\bibcite{gof-conwaylife}{3} +\bibcite{gof-hashlife}{4} +\bibcite{ggo-aga}{5} +\bibcite{game-theory-wiki}{6} +\bibcite{ggo-ai}{7} +\bibcite{ggo-compqueens}{8} +\bibcite{ggo-ffg}{9} +\bibcite{ggo-algofloodfill}{10} +\bibcite{ptf-euler}{11} +\bibcite{ptf-collision-detection}{12} +\bibcite{ptf-collision-response}{13} +\bibcite{ptf-verlet}{14} +\bibcite{ptf-rk4}{15} +\@writefile{toc}{\contentsline {chapter}{Webographie}{23}{section*.5}} diff --git a/docs/rapports/rapport-initial-delabre/rapport.bbl b/docs/rapports/rapport-initial-delabre/rapport.bbl new file mode 100644 index 0000000..367c6e9 --- /dev/null +++ b/docs/rapports/rapport-initial-delabre/rapport.bbl @@ -0,0 +1,80 @@ +\begin{thebibliography}{10} + +\bibitem{gof-wikipedia} +Wikipédia. +\newblock Jeu de la vie. +\newblock \url{https://goo.gl/RLc7C7}. + +\bibitem{gof-automata} +Wikipédia. +\newblock Automate cellulaire. +\newblock \url{https://goo.gl/FZ5S5L}. + +\bibitem{gof-conwaylife} +LifeWiki. +\newblock Conway's game of life. +\newblock \url{http://goo.gl/JXXQxz}. + +\bibitem{gof-hashlife} +Wikipédia. +\newblock Hashlife. +\newblock \url{https://goo.gl/nFW2oM}. + +\bibitem{ggo-aga} +American~Go Association. +\newblock A brief history of go. +\newblock \url{http://goo.gl/1NY9Xt}. + +\bibitem{game-theory-wiki} +Wikipédia. +\newblock Classification des jeux. +\newblock \url{https://goo.gl/guXBAO}. + +\bibitem{ggo-ai} +SciencePost. +\newblock Jeu de go : l’affrontement entre le meilleur joueur humain du monde + et la machine sera retransmis en direct. +\newblock \url{http://goo.gl/pD8zKG}. + +\bibitem{ggo-compqueens} +Jay Burmeister. +\newblock An introduction to computer go. +\newblock \url{http://goo.gl/WMPpHU}. + +\bibitem{ggo-ffg} +Fédération~Française de~Go. +\newblock Règle française du jeu de go. +\newblock \url{http://goo.gl/sK15PL}. + +\bibitem{ggo-algofloodfill} +Wikipedia. +\newblock Flood fill. +\newblock \url{https://goo.gl/ERbxi3}. + +\bibitem{ptf-euler} +John~T. Foster. +\newblock Brief explanation of integration schemes. +\newblock \url{http://goo.gl/HRssYN}. + +\bibitem{ptf-collision-detection} +StackExchange GameAlchemist. +\newblock Collision between {AABB} and circle. +\newblock \url{http://goo.gl/7E84Ef}. + +\bibitem{ptf-collision-response} +Randy Gaul. +\newblock How to create a custom 2d physics engine: The basics and impulse + resolution. +\newblock \url{http://goo.gl/G0gdWU}. + +\bibitem{ptf-verlet} +Wikipedia. +\newblock Verlet integration. +\newblock \url{https://goo.gl/Q6giDh}. + +\bibitem{ptf-rk4} +Wikipedia. +\newblock The runge-kutta method. +\newblock \url{https://goo.gl/UHTD8S}. + +\end{thebibliography} diff --git a/docs/rapports/rapport-initial-delabre/rapport.bib b/docs/rapports/rapport-initial-delabre/rapport.bib new file mode 100644 index 0000000..483c5f8 --- /dev/null +++ b/docs/rapports/rapport-initial-delabre/rapport.bib @@ -0,0 +1,89 @@ +@online{game-theory-wiki, + author = "Wikipédia", + title = "Classification des jeux", + howpublished = "\url{https://goo.gl/guXBAO}" +} + +@online{gof-hashlife, + author = "Wikipédia", + title = "Hashlife", + howpublished = "\url{https://goo.gl/nFW2oM}" +} + +@online{gof-conwaylife, + author = "LifeWiki", + title = "Conway's Game of Life", + howpublished = "\url{http://goo.gl/JXXQxz}" +} + +@online{gof-wikipedia, + author = "Wikipédia", + title = "Jeu de la vie", + howpublished = "\url{https://goo.gl/RLc7C7}" +} + +@online{gof-automata, + author = "Wikipédia", + title = "Automate cellulaire", + howpublished = "\url{https://goo.gl/FZ5S5L}" +} + +@online{ggo-ffg, + author = "Fédération Française de Go", + title = "Règle française du jeu de Go", + howpublished = "\url{http://goo.gl/sK15PL}" +} + +@online{ggo-aga, + author = "American Go Association", + title = "A Brief History of Go", + howpublished = "\url{http://goo.gl/1NY9Xt}" +} + +@online{ggo-ai, + author = "SciencePost", + title = "Jeu de go : l’affrontement entre le meilleur joueur humain du monde et la machine sera retransmis en direct", + howpublished = "\url{http://goo.gl/pD8zKG}" +} + +@online{ggo-compqueens, + author = "Jay Burmeister", + title = "An Introduction to Computer Go", + howpublished = "\url{http://goo.gl/WMPpHU}" +} + +@online{ggo-algofloodfill, + author = "Wikipedia", + title = "Flood fill", + howpublished = "\url{https://goo.gl/ERbxi3}" +} + +@online{ptf-euler, + author = "John T. Foster", + title = "Brief Explanation of Integration Schemes", + howpublished = "\url{http://goo.gl/HRssYN}" +} + +@online{ptf-rk4, + author = "Wikipedia", + title = "The Runge-Kutta method", + howpublished = "\url{https://goo.gl/UHTD8S}" +} + +@online{ptf-verlet, + author = "Wikipedia", + title = "Verlet integration", + howpublished = "\url{https://goo.gl/Q6giDh}" +} + +@online{ptf-collision-detection, + author = "GameAlchemist, StackExchange", + title = "Collision between {AABB} and Circle", + howpublished = "\url{http://goo.gl/7E84Ef}" +} + +@online{ptf-collision-response, + author = "Randy Gaul", + title = "How to Create a Custom 2D Physics Engine: The Basics and Impulse Resolution", + howpublished = "\url{http://goo.gl/G0gdWU}" +} diff --git a/docs/rapports/rapport-initial-delabre/rapport.blg b/docs/rapports/rapport-initial-delabre/rapport.blg new file mode 100644 index 0000000..87dd3d7 --- /dev/null +++ b/docs/rapports/rapport-initial-delabre/rapport.blg @@ -0,0 +1,83 @@ +This is BibTeX, Version 0.99d (TeX Live 2015/Debian) +Capacity: max_strings=35307, hash_size=35307, hash_prime=30011 +The top-level auxiliary file: rapport.aux +A level-1 auxiliary file: ./parts/intro.aux +A level-1 auxiliary file: ./parts/life.aux +A level-1 auxiliary file: ./parts/go.aux +A level-1 auxiliary file: ./parts/ptf.aux +A level-1 auxiliary file: ./parts/cmp.aux +A level-1 auxiliary file: ./parts/conclu.aux +The style file: unsrt.bst +Database file #1: rapport.bib +Warning--entry type for "game-theory-wiki" isn't style-file defined +--line 1 of file rapport.bib +Warning--entry type for "gof-hashlife" isn't style-file defined +--line 7 of file rapport.bib +Warning--entry type for "gof-conwaylife" isn't style-file defined +--line 13 of file rapport.bib +Warning--entry type for "gof-wikipedia" isn't style-file defined +--line 19 of file rapport.bib +Warning--entry type for "gof-automata" isn't style-file defined +--line 25 of file rapport.bib +Warning--entry type for "ggo-ffg" isn't style-file defined +--line 31 of file rapport.bib +Warning--entry type for "ggo-aga" isn't style-file defined +--line 37 of file rapport.bib +Warning--entry type for "ggo-ai" isn't style-file defined +--line 43 of file rapport.bib +Warning--entry type for "ggo-compqueens" isn't style-file defined +--line 49 of file rapport.bib +Warning--entry type for "ggo-algofloodfill" isn't style-file defined +--line 55 of file rapport.bib +Warning--entry type for "ptf-euler" isn't style-file defined +--line 61 of file rapport.bib +Warning--entry type for "ptf-rk4" isn't style-file defined +--line 67 of file rapport.bib +Warning--entry type for "ptf-verlet" isn't style-file defined +--line 73 of file rapport.bib +Warning--entry type for "ptf-collision-detection" isn't style-file defined +--line 79 of file rapport.bib +Warning--entry type for "ptf-collision-response" isn't style-file defined +--line 85 of file rapport.bib +You've used 15 entries, + 1791 wiz_defined-function locations, + 505 strings with 4823 characters, +and the built_in function-call counts, 1897 in all, are: += -- 150 +> -- 60 +< -- 0 ++ -- 30 +- -- 15 +* -- 2 +:= -- 296 +add.period$ -- 45 +call.type$ -- 15 +change.case$ -- 15 +chr.to.int$ -- 0 +cite$ -- 15 +duplicate$ -- 75 +empty$ -- 271 +format.name$ -- 15 +if$ -- 451 +int.to.chr$ -- 0 +int.to.str$ -- 15 +missing$ -- 0 +newline$ -- 78 +num.names$ -- 15 +pop$ -- 75 +preamble$ -- 1 +purify$ -- 0 +quote$ -- 0 +skip$ -- 74 +stack$ -- 0 +substring$ -- 0 +swap$ -- 15 +text.length$ -- 0 +text.prefix$ -- 0 +top$ -- 0 +type$ -- 0 +warning$ -- 0 +while$ -- 15 +width$ -- 17 +write$ -- 137 +(There were 15 warnings) diff --git a/docs/rapports/rapport-initial-delabre/rapport.fdb_latexmk b/docs/rapports/rapport-initial-delabre/rapport.fdb_latexmk new file mode 100644 index 0000000..aed7392 --- /dev/null +++ b/docs/rapports/rapport-initial-delabre/rapport.fdb_latexmk @@ -0,0 +1,276 @@ +# Fdb version 3 +["bibtex rapport"] 1456694154 "rapport.aux" "rapport.bbl" "rapport" 1456695565 + "/home/matteo/Développement/se205-1/rapport/./parts/cmp.aux" 1456695565 2227 6033427bf64a30351d37d116985c990b "" + "/home/matteo/Développement/se205-1/rapport/./parts/conclu.aux" 1456695565 2214 a500c0136d4e77eae997997f0250d775 "" + "/home/matteo/Développement/se205-1/rapport/./parts/go.aux" 1456695565 4323 e8b5821611a06a5b5b58645f6e41fa84 "" + "/home/matteo/Développement/se205-1/rapport/./parts/intro.aux" 1456695564 2205 3460af3713a72fde30781b206dd80605 "" + "/home/matteo/Développement/se205-1/rapport/./parts/life.aux" 1456695564 4114 1763a2dc05d152891658de72c33a1560 "" + "/home/matteo/Développement/se205-1/rapport/./parts/ptf.aux" 1456695565 4990 4f4e8e52e5418585daf7e548839fda0d "" + "/usr/share/texlive/texmf-dist/bibtex/bst/base/unsrt.bst" 1292289607 18030 1376b4b231b50c66211e47e42eda2875 "" + "rapport.aux" 1456695565 1562 3608ee794e031d99e8fd86a777bbd855 "" + "rapport.bcf" 0 -1 0 "" + "rapport.bib" 1456596871 2297 e3aaa5de857b3b15d14ddbb417375704 "" + (generated) + "rapport.blg" + "rapport.bbl" +["pdflatex"] 1456695563 "rapport.tex" "/home/matteo/Développement/se205-1/rapport/rapport.pdf" "rapport" 1456695565 + "./parts/cmp.aux" 1456695565 2227 6033427bf64a30351d37d116985c990b "" + "./parts/cmp.tex" 1456676707 2390 4169fb2b74cea52b47a1fe4e51b15526 "" + "./parts/conclu.aux" 1456695565 2214 a500c0136d4e77eae997997f0250d775 "" + "./parts/conclu.tex" 1456677070 671 3276898f607c8af01c0967c6b38c8e23 "" + "./parts/go.aux" 1456695565 4323 e8b5821611a06a5b5b58645f6e41fa84 "" + "./parts/go.tex" 1456608909 10037 0fcec3ea83301a136170628800a427e3 "" + "./parts/intro.aux" 1456695564 2205 3460af3713a72fde30781b206dd80605 "" + "./parts/intro.tex" 1456695560 1106 c7e33459c76392956834e4b948220e29 "" + "./parts/life.aux" 1456695564 4114 1763a2dc05d152891658de72c33a1560 "" + "./parts/life.tex" 1456608892 8492 5f528173dde3f5ad67d613aa49ddcb70 "" + "./parts/ptf.aux" 1456695565 4990 4f4e8e52e5418585daf7e548839fda0d "" + "./parts/ptf.tex" 1456694149 13137 5da030c20fa8d5112f85757c5745469b "" + "/etc/texmf/web2c/texmf.cnf" 1448651457 1101 af7716885e081ab43982cab7b4672c1a "" + "/home/matteo/Développement/se205-1/rapport/rapport.aux" 1456695565 1562 3608ee794e031d99e8fd86a777bbd855 "" + "/home/matteo/texmf/tex/latex/gantt/gantt.sty" 1455303110 10963 93fa521c957ddabedc3b8da95fae8c8d "" + "/home/matteo/texmf/tex/latex/tikz-uml/tikz-uml.sty" 1359744139 211430 eac0f9dc7c1f83dd13dd86c58b009eb9 "" + "/usr/share/texlive/texmf-dist/fonts/map/fontname/texfonts.map" 1272929888 3287 e6b82fe08f5336d4d5ebc73fb1152e87 "" + "/usr/share/texlive/texmf-dist/fonts/tfm/jknappen/ec/ecrm1000.tfm" 1136768653 3584 adb004a0c8e7c46ee66cad73671f37b4 "" + "/usr/share/texlive/texmf-dist/tex/context/base/supp-pdf.mkii" 1337017135 71627 94eb9990bed73c364d7f53f960cc8c5b "" + "/usr/share/texlive/texmf-dist/tex/generic/babel-french/frenchb.ldf" 1435536965 58724 88cbcf90df291ab617b57ef39c964247 "" + "/usr/share/texlive/texmf-dist/tex/generic/babel/babel.def" 1411763270 49725 b40154b767b0073ee42b35911042b793 "" + "/usr/share/texlive/texmf-dist/tex/generic/babel/babel.sty" 1411763270 13212 dc56c11a26f3ea97bcf005eeda274583 "" + "/usr/share/texlive/texmf-dist/tex/generic/ifxetex/ifxetex.sty" 1284331290 1458 43ab4710dc82f3edeabecd0d099626b2 "" + "/usr/share/texlive/texmf-dist/tex/generic/oberdiek/gettitlestring.sty" 1303254447 8237 52810bdb4db2270e717422560a104aea "" + "/usr/share/texlive/texmf-dist/tex/generic/oberdiek/hobsub-generic.sty" 1338332114 189108 8b3553a56c83ff61acecb36b75d817e2 "" + "/usr/share/texlive/texmf-dist/tex/generic/oberdiek/hobsub-hyperref.sty" 1338332114 70752 45fa392800e07da61fa13446ad46b34d "" + "/usr/share/texlive/texmf-dist/tex/generic/pgf/basiclayer/pgfcore.code.tex" 1288312291 1006 b103be0bfc8c1682ff1fa9760697a329 "" + "/usr/share/texlive/texmf-dist/tex/generic/pgf/basiclayer/pgfcorearrows.code.tex" 1393459310 42678 ea82fd948b4303ce6a2c8e25d5e8f8aa "" + "/usr/share/texlive/texmf-dist/tex/generic/pgf/basiclayer/pgfcoreexternal.code.tex" 1393459310 19287 b2041c22301def2360f03c004d16068d "" + "/usr/share/texlive/texmf-dist/tex/generic/pgf/basiclayer/pgfcoregraphicstate.code.tex" 1393459310 6653 6c617c4a5106d9f40e3d70946ba4e0ac "" + "/usr/share/texlive/texmf-dist/tex/generic/pgf/basiclayer/pgfcoreimage.code.tex" 1393459310 7041 a891ad72049e17c4e366c40ca37b0ccb "" + "/usr/share/texlive/texmf-dist/tex/generic/pgf/basiclayer/pgfcorelayers.code.tex" 1393459310 4625 40c07e9f6f2f7c674704b3f2055560ce "" + "/usr/share/texlive/texmf-dist/tex/generic/pgf/basiclayer/pgfcoreobjects.code.tex" 1203877327 2631 7eefa6cdbefd8d4e2bad7262cf1094cd "" + "/usr/share/texlive/texmf-dist/tex/generic/pgf/basiclayer/pgfcorepathconstruct.code.tex" 1393459310 43477 81143b33d9ebafdeead07ede13372427 "" + "/usr/share/texlive/texmf-dist/tex/generic/pgf/basiclayer/pgfcorepathprocessing.code.tex" 1393459310 17436 8d99d4113be311daf23deff86991ee7d "" + "/usr/share/texlive/texmf-dist/tex/generic/pgf/basiclayer/pgfcorepathusage.code.tex" 1393459310 20857 256da99fc70ea570aad1d50fdfd51464 "" + "/usr/share/texlive/texmf-dist/tex/generic/pgf/basiclayer/pgfcorepatterns.code.tex" 1393459310 9641 711f0edc22c180a5caf168b6e8970057 "" + "/usr/share/texlive/texmf-dist/tex/generic/pgf/basiclayer/pgfcorepoints.code.tex" 1393459310 34516 658a71478d21df554bce9d9cd436203a "" + "/usr/share/texlive/texmf-dist/tex/generic/pgf/basiclayer/pgfcorequick.code.tex" 1288312291 3052 e5672c657232fd63b0a9853b0746297c "" + "/usr/share/texlive/texmf-dist/tex/generic/pgf/basiclayer/pgfcorescopes.code.tex" 1393459310 16849 86fed972a2b3ad61208a6422e104bf26 "" + "/usr/share/texlive/texmf-dist/tex/generic/pgf/basiclayer/pgfcoreshade.code.tex" 1393459310 21541 4cd19f8ff7dd74d5aa7d803a6397af84 "" + "/usr/share/texlive/texmf-dist/tex/generic/pgf/basiclayer/pgfcoretransformations.code.tex" 1393459310 17423 a0f09c822b83b65445bc3ac25542dcc6 "" + "/usr/share/texlive/texmf-dist/tex/generic/pgf/basiclayer/pgfcoretransparency.code.tex" 1393459310 8943 2e2495b057f8f0035b5568394d489963 "" + "/usr/share/texlive/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrary3d.code.tex" 1393459310 3281 56ec68164c7e85969124caaa323271c2 "" + "/usr/share/texlive/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryarrows.code.tex" 1203727794 437 cf40f841f40822be6cb995f8b47112fd "" + "/usr/share/texlive/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarybackgrounds.code.tex" 1393459310 4611 b858a4e5bd5442802c91a13027dc25bb "" + "/usr/share/texlive/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarydecorations.code.tex" 1393459310 5484 4bb4a5cbbd05d6f17a261b59dbd014f1 "" + "/usr/share/texlive/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarydecorations.markings.code.tex" 1203727794 782 2479083eef1ef47450770d40ad81f937 "" + "/usr/share/texlive/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryfadings.code.tex" 1288312291 1298 83d7449064b0f0f089f1898a244b6d16 "" + "/usr/share/texlive/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryfit.code.tex" 1393459310 3725 36db4c06798413d051778705f3255eea "" + "/usr/share/texlive/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarypatterns.code.tex" 1203727794 884 60c3d56b80194544f9ecdae97dd5e286 "" + "/usr/share/texlive/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryshadows.code.tex" 1203727794 3001 d54bab2f783098ed890fabbeb437b04f "" + "/usr/share/texlive/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryshapes.arrows.code.tex" 1203727794 527 a8d3e34fbab3dc317cf9b06aa5cdc2e4 "" + "/usr/share/texlive/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryshapes.callouts.code.tex" 1203727794 1158 d6338189706f4587fbc6175c0fb41f17 "" + "/usr/share/texlive/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryshapes.code.tex" 1203727794 607 40dc15d3efcf10f095866a94bd544bc1 "" + "/usr/share/texlive/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryshapes.geometric.code.tex" 1203727794 457 ffe9f8b9d108b5f729fd86c78c63589a "" + "/usr/share/texlive/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryshapes.misc.code.tex" 1203727794 447 e87a0add254801e837fa6c18f61f340f "" + "/usr/share/texlive/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryshapes.multipart.code.tex" 1203727794 1004 86af66805a9d0b62bd41ea0796a64d50 "" + "/usr/share/texlive/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryshapes.symbols.code.tex" 1203727794 590 7e11000a24bbee9ae2a4cd0e5d88e58c "" + "/usr/share/texlive/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarytopaths.code.tex" 1288312291 11599 d694704a88e2f9007c996d3a6a4d629c "" + "/usr/share/texlive/texmf-dist/tex/generic/pgf/frontendlayer/tikz/tikz.code.tex" 1393459310 175287 31eb66e838dd5e10589736193a31943c "" + "/usr/share/texlive/texmf-dist/tex/generic/pgf/libraries/decorations/pgflibrarydecorations.markings.code.tex" 1393459310 5181 c2b736d254ec36204f8fffd5a45bbd41 "" + "/usr/share/texlive/texmf-dist/tex/generic/pgf/libraries/pgflibraryarrows.code.tex" 1393459310 31927 7acd27f90dd95ce67ad32166cd0b95ec "" + "/usr/share/texlive/texmf-dist/tex/generic/pgf/libraries/pgflibraryfadings.code.tex" 1203727794 2647 defb4a59c2a1d36127a1ac6eebb4a5c1 "" + "/usr/share/texlive/texmf-dist/tex/generic/pgf/libraries/pgflibrarypatterns.code.tex" 1288312291 7874 56ca58561783fbca7be095fa7178e656 "" + "/usr/share/texlive/texmf-dist/tex/generic/pgf/libraries/pgflibraryplothandlers.code.tex" 1393459310 32969 dbcfd5a7de6a0f7255c333ef60287d59 "" + "/usr/share/texlive/texmf-dist/tex/generic/pgf/libraries/shapes/pgflibraryshapes.arrows.code.tex" 1288312291 69900 cbd9fafb795a493fb2a3b73713994b78 "" + "/usr/share/texlive/texmf-dist/tex/generic/pgf/libraries/shapes/pgflibraryshapes.callouts.code.tex" 1393459310 28333 0189c4cfb5044e700e6ba65a32295f01 "" + "/usr/share/texlive/texmf-dist/tex/generic/pgf/libraries/shapes/pgflibraryshapes.geometric.code.tex" 1288312291 132566 291d42c3b23fdb5c47e51b36a5fea0c4 "" + "/usr/share/texlive/texmf-dist/tex/generic/pgf/libraries/shapes/pgflibraryshapes.misc.code.tex" 1393459310 37737 ea6cb0b4e615f6048f20ee7153b3cc78 "" + "/usr/share/texlive/texmf-dist/tex/generic/pgf/libraries/shapes/pgflibraryshapes.multipart.code.tex" 1288312291 49891 e74f8181c57d9359c941b6bee48fccc2 "" + "/usr/share/texlive/texmf-dist/tex/generic/pgf/libraries/shapes/pgflibraryshapes.symbols.code.tex" 1393459310 90791 0f3e73cae9286c96d9fcb2161cc223bc "" + "/usr/share/texlive/texmf-dist/tex/generic/pgf/math/pgfmath.code.tex" 1393459310 454 9e9e7c99f4da4f41698be21eaef4938e "" + "/usr/share/texlive/texmf-dist/tex/generic/pgf/math/pgfmathcalc.code.tex" 1393459310 13416 940ea6971d7a65dc440d3479939c66ae "" + "/usr/share/texlive/texmf-dist/tex/generic/pgf/math/pgfmathfloat.code.tex" 1393459310 91879 5b3cc8d94c47a5b742393a410f298724 "" + "/usr/share/texlive/texmf-dist/tex/generic/pgf/math/pgfmathfunctions.base.code.tex" 1393459310 9375 5adc70f722abd29fc250d59e0694b548 "" + "/usr/share/texlive/texmf-dist/tex/generic/pgf/math/pgfmathfunctions.basic.code.tex" 1393459310 21406 80daebd1f9f6a174d8dc77c5bc931bf4 "" + "/usr/share/texlive/texmf-dist/tex/generic/pgf/math/pgfmathfunctions.code.tex" 1393459310 7820 5140d142921f39003e02ccedd072823a "" + "/usr/share/texlive/texmf-dist/tex/generic/pgf/math/pgfmathfunctions.comparison.code.tex" 1288312291 3534 c7f28fbac13616513e513efe93b8569b "" + "/usr/share/texlive/texmf-dist/tex/generic/pgf/math/pgfmathfunctions.integerarithmetics.code.tex" 1393459310 3167 7c9394e79aac27db96a92f9b2792b858 "" + "/usr/share/texlive/texmf-dist/tex/generic/pgf/math/pgfmathfunctions.misc.code.tex" 1393459310 9165 99b6966558714c44c0b5ee44ae261ffc "" + "/usr/share/texlive/texmf-dist/tex/generic/pgf/math/pgfmathfunctions.random.code.tex" 1288312291 6964 d4b5e82dabddda1c728063bb9c8a22ba "" + "/usr/share/texlive/texmf-dist/tex/generic/pgf/math/pgfmathfunctions.round.code.tex" 1288312291 2688 139c6abc86761a6190c2f4bef5d752be "" + "/usr/share/texlive/texmf-dist/tex/generic/pgf/math/pgfmathfunctions.trigonometric.code.tex" 1393459310 91075 1c1d7a7e8f0f737f72aa8becf0b37136 "" + "/usr/share/texlive/texmf-dist/tex/generic/pgf/math/pgfmathparser.code.tex" 1393459310 33289 b041d55e91f7382603e2dca6f9ad188d "" + "/usr/share/texlive/texmf-dist/tex/generic/pgf/math/pgfmathutil.code.tex" 1393459310 7099 f44d505bae6c7c2b933cdd63441db4b9 "" + "/usr/share/texlive/texmf-dist/tex/generic/pgf/modules/pgfmoduledecorations.code.tex" 1393459310 71902 658cc1e13f73daec4225b8fc1c27600b "" + "/usr/share/texlive/texmf-dist/tex/generic/pgf/modules/pgfmodulematrix.code.tex" 1393459310 20934 2328bd2e04520e1ab077ac4ee13b8935 "" + "/usr/share/texlive/texmf-dist/tex/generic/pgf/modules/pgfmoduleplot.code.tex" 1393459310 15785 e0b14c447df00370d2023fd5c9813190 "" + "/usr/share/texlive/texmf-dist/tex/generic/pgf/modules/pgfmoduleshapes.code.tex" 1393459310 42336 b13cf09dc317c76a2b165a8501d871cf "" + "/usr/share/texlive/texmf-dist/tex/generic/pgf/systemlayer/pgf.cfg" 1288312291 978 15af626ebd3d4d790aac19170dac04f2 "" + "/usr/share/texlive/texmf-dist/tex/generic/pgf/systemlayer/pgfsys-common-pdf.def" 1393459310 5437 d91f93ed61ecdc57e119849b2d784a0b "" + "/usr/share/texlive/texmf-dist/tex/generic/pgf/systemlayer/pgfsys-pdftex.def" 1393459310 11969 518d66d5b5e20471ba00709ef9c2b267 "" + "/usr/share/texlive/texmf-dist/tex/generic/pgf/systemlayer/pgfsys.code.tex" 1393459310 34488 3bab2022cdd1acab0cd383d8a0ad641b "" + "/usr/share/texlive/texmf-dist/tex/generic/pgf/systemlayer/pgfsysprotocol.code.tex" 1203877327 1983 b5994ebbcee17f1ba3d29bb1bd696fcf "" + "/usr/share/texlive/texmf-dist/tex/generic/pgf/systemlayer/pgfsyssoftpath.code.tex" 1393459310 7881 d459d6057e13d10ce7a227ae44b7295e "" + "/usr/share/texlive/texmf-dist/tex/generic/pgf/utilities/pgffor.code.tex" 1393459310 22211 d696ef78c12269178882d218b2cf191d "" + "/usr/share/texlive/texmf-dist/tex/generic/pgf/utilities/pgfkeys.code.tex" 1393459310 36194 e194ef4e0b396b531a3891feb4b1cc22 "" + "/usr/share/texlive/texmf-dist/tex/generic/pgf/utilities/pgfkeysfiltered.code.tex" 1393459310 33377 af391d6ad1bfcbe2278e191f48e43ba8 "" + "/usr/share/texlive/texmf-dist/tex/generic/pgf/utilities/pgfrcs.code.tex" 1393459310 2286 b5c392d27790ca52b8f8e510ef5044e0 "" + "/usr/share/texlive/texmf-dist/tex/generic/pgf/utilities/pgfutil-common-lists.tex" 1393459310 6833 114eda2cf1d348e0e7e477a1a4dc1941 "" + "/usr/share/texlive/texmf-dist/tex/generic/pgf/utilities/pgfutil-common.tex" 1393459310 16384 3fa06861c9a3391a75df39466f49655f "" + "/usr/share/texlive/texmf-dist/tex/generic/pgf/utilities/pgfutil-latex.def" 1393459310 4500 b148f531c7670d59c695787be06a508b "" + "/usr/share/texlive/texmf-dist/tex/generic/xkeyval/xkeyval.tex" 1417732693 19231 26434a5656c684f5ffb1f26f98006baa "" + "/usr/share/texlive/texmf-dist/tex/generic/xkeyval/xkvutils.tex" 1403829539 7677 6f5ce7c1124cad7ec57d05b2562bd8fe "" + "/usr/share/texlive/texmf-dist/tex/generic/xstring/xstring.sty" 1269905706 144 0ca8d67b000b795a4d9ec000e0fd09c7 "" + "/usr/share/texlive/texmf-dist/tex/generic/xstring/xstring.tex" 1381789620 54373 fd4487ae3e45d4074bc89aea1d2b6807 "" + "/usr/share/texlive/texmf-dist/tex/latex/base/fontenc.sty" 1428932888 4572 f29f75cfae3acaf4667f1979db655af9 "" + "/usr/share/texlive/texmf-dist/tex/latex/base/ifthen.sty" 1428932888 5159 bb529586d444e85eb00179221b678119 "" + "/usr/share/texlive/texmf-dist/tex/latex/base/inputenc.sty" 1428932888 5619 3f48adceb9004b3fefe24c2d2df7d98e "" + "/usr/share/texlive/texmf-dist/tex/latex/base/omsenc.dfu" 1428932888 2005 572b09e94d01e22ed7d4000c92b6e220 "" + "/usr/share/texlive/texmf-dist/tex/latex/base/ot1enc.dfu" 1428932888 2757 273e079c3d3a9830c5b4fa2a4ce69c51 "" + "/usr/share/texlive/texmf-dist/tex/latex/base/report.cls" 1428932888 23767 74c5551841f58a4efbb8c5d892190037 "" + "/usr/share/texlive/texmf-dist/tex/latex/base/size10.clo" 1428932888 9179 632e23fed01c842f2eaef1dd9953a446 "" + "/usr/share/texlive/texmf-dist/tex/latex/base/t1enc.def" 1428932888 9327 bf6addf718ff386725227c5b52941e7e "" + "/usr/share/texlive/texmf-dist/tex/latex/base/t1enc.dfu" 1428932888 7617 8f111f916836ef9e09db7ecbcd4e01d6 "" + "/usr/share/texlive/texmf-dist/tex/latex/base/utf8.def" 1428932888 6484 2098550b79b15e713b69d9c8845f4437 "" + "/usr/share/texlive/texmf-dist/tex/latex/carlisle/scalefnt.sty" 1137109962 1360 df2086bf924b14b72d6121fe9502fcdb "" + "/usr/share/texlive/texmf-dist/tex/latex/etex-pkg/etex.sty" 1425853889 15831 00a960d3ee6577f0512e2fd6b465c9e8 "" + "/usr/share/texlive/texmf-dist/tex/latex/forloop/forloop.sty" 1158783347 1717 5de015d7c82d914c51b065065ca9fd34 "" + "/usr/share/texlive/texmf-dist/tex/latex/graphics/graphics.sty" 1428932888 14285 20d80486c4ae98139889d8789596c967 "" + "/usr/share/texlive/texmf-dist/tex/latex/graphics/graphicx.sty" 1428932888 8125 557ab9f1bfa80d369fb45a914aa8a3b4 "" + "/usr/share/texlive/texmf-dist/tex/latex/graphics/keyval.sty" 1428932888 2594 d18d5e19aa8239cf867fa670c556d2e9 "" + "/usr/share/texlive/texmf-dist/tex/latex/graphics/trig.sty" 1428932888 3439 44bd4a1da7f27787173f2e99116b0a7f "" + "/usr/share/texlive/texmf-dist/tex/latex/hyperref/hpdftex.def" 1352416072 51837 247bd8424b3835ef78c236dc1e0b4aef "" + "/usr/share/texlive/texmf-dist/tex/latex/hyperref/hyperref.sty" 1352416072 231792 5fc9dc7dd667e773a766ecc63bba7f4b "" + "/usr/share/texlive/texmf-dist/tex/latex/hyperref/nameref.sty" 1351899753 12847 25b617d63258c4f72870c883493a3cf8 "" + "/usr/share/texlive/texmf-dist/tex/latex/hyperref/pd1enc.def" 1352416072 14005 155ac8fad2e5dd7c2cdd130fabd96633 "" + "/usr/share/texlive/texmf-dist/tex/latex/ifmtarg/ifmtarg.sty" 1278810218 438 4c0f57b7cba6e6ca9226b32da26f82e9 "" + "/usr/share/texlive/texmf-dist/tex/latex/latexconfig/color.cfg" 1254097189 802 7b8c8d72c24d795ed7720e4dfd29bff3 "" + "/usr/share/texlive/texmf-dist/tex/latex/latexconfig/epstopdf-sys.cfg" 1279039959 678 4792914a8f45be57bb98413425e4c7af "" + "/usr/share/texlive/texmf-dist/tex/latex/latexconfig/graphics.cfg" 1278958963 3563 d35e897cae3b8c6848f6677b73370b54 "" + "/usr/share/texlive/texmf-dist/tex/latex/latexconfig/hyperref.cfg" 1254097189 235 6031e5765137be07eed51a510b2b8fb7 "" + "/usr/share/texlive/texmf-dist/tex/latex/ms/everyshi.sty" 1177890616 3878 6aa7c08ff2621006e0603349e40a30a8 "" + "/usr/share/texlive/texmf-dist/tex/latex/oberdiek/auxhook.sty" 1303254447 3834 707ef09f31d7d2ea47ba89974755dfe0 "" + "/usr/share/texlive/texmf-dist/tex/latex/oberdiek/epstopdf-base.sty" 1303254447 12029 04d7fdf76e0464c23b5aa3a727952d7c "" + "/usr/share/texlive/texmf-dist/tex/latex/oberdiek/grfext.sty" 1335995445 7075 bd0c34fbf1ae8fd1debd2a554e41b2d5 "" + "/usr/share/texlive/texmf-dist/tex/latex/oberdiek/kvoptions.sty" 1335995445 22417 c74ff4af6a1aa2b65d1924020edbbe11 "" + "/usr/share/texlive/texmf-dist/tex/latex/oberdiek/rerunfilecheck.sty" 1303254447 9581 1158efc648bc09d5064db5703c882159 "" + "/usr/share/texlive/texmf-dist/tex/latex/pdftex-def/pdftex.def" 1306616590 55368 3c8a0d99822330f2dfabc0dfb09ce897 "" + "/usr/share/texlive/texmf-dist/tex/latex/pgf/basiclayer/pgf.sty" 1393459310 1190 4e20f1d26da9f86ba6a50d7ad16c48d2 "" + "/usr/share/texlive/texmf-dist/tex/latex/pgf/basiclayer/pgfcore.sty" 1288312291 410 5bf12ea7330e5f12c445332a4fe9a263 "" + "/usr/share/texlive/texmf-dist/tex/latex/pgf/compatibility/pgfcomp-version-0-65.sty" 1203877327 21115 facf03b7dbe5ea2f5f1dce1ac84b5d05 "" + "/usr/share/texlive/texmf-dist/tex/latex/pgf/compatibility/pgfcomp-version-1-18.sty" 1203727794 1091 d9163d29def82ee90370c8a63667742c "" + "/usr/share/texlive/texmf-dist/tex/latex/pgf/frontendlayer/tikz.sty" 1203877327 339 592cf35cba3d400082b8a9a5d0199d70 "" + "/usr/share/texlive/texmf-dist/tex/latex/pgf/math/pgfmath.sty" 1393459310 306 0796eafca5e159e6ec2167a6d22d81b1 "" + "/usr/share/texlive/texmf-dist/tex/latex/pgf/systemlayer/pgfsys.sty" 1393459310 443 0b2e781830192df35c0fd357cf13e26e "" + "/usr/share/texlive/texmf-dist/tex/latex/pgf/utilities/pgffor.sty" 1393459310 348 8927fde343487e003b01a4c2ca34073b "" + "/usr/share/texlive/texmf-dist/tex/latex/pgf/utilities/pgfkeys.sty" 1203727794 274 4cad6e665cc93ac2ac979039a94fa1e1 "" + "/usr/share/texlive/texmf-dist/tex/latex/pgf/utilities/pgfrcs.sty" 1203877327 325 2bcd023400636339210573e2b3ee298b "" + "/usr/share/texlive/texmf-dist/tex/latex/pgfopts/pgfopts.sty" 1405118212 5540 d5c60cf09c59da351aa4023ed084e4eb "" + "/usr/share/texlive/texmf-dist/tex/latex/tools/calc.sty" 1428932888 10214 78c09985255ed93018b1db2c4e2f6deb "" + "/usr/share/texlive/texmf-dist/tex/latex/url/url.sty" 1388531844 12796 8edb7d69a20b857904dd0ea757c14ec9 "" + "/usr/share/texlive/texmf-dist/tex/latex/wrapfig/wrapfig.sty" 1137111090 26220 3701aebf80ccdef248c0c20dd062fea9 "" + "/usr/share/texlive/texmf-dist/tex/latex/xcolor/xcolor.sty" 1169481954 55224 a43bab84e0ac5e6efcaf9a98bde73a94 "" + "/usr/share/texlive/texmf-dist/tex/latex/xifthen/xifthen.sty" 1240073024 5650 b146a211772e4cfd4ca29af3aac8c3fc "" + "/usr/share/texlive/texmf-dist/tex/latex/xkeyval/xkeyval.sty" 1417732693 4962 9c1069474ff71dbc47d5006555e352d3 "" + "/usr/share/texlive/texmf-dist/web2c/texmf.cnf" 1435377840 31349 7675f8adfbe12aae865d340d35423a49 "" + "/usr/share/texmf/fonts/enc/dvips/lm/lm-ec.enc" 1254938640 2375 baa924870cfb487815765f9094cf3728 "" + "/usr/share/texmf/fonts/enc/dvips/lm/lm-mathit.enc" 1254938640 2405 5dcf2c1b967ee25cc46c58cd52244aed "" + "/usr/share/texmf/fonts/enc/dvips/lm/lm-mathsy.enc" 1254938640 2840 216e6e45ad352e2456e1149f28885bee "" + "/usr/share/texmf/fonts/enc/dvips/lm/lm-rm.enc" 1254938640 2327 9d6df24f9c4f7368395224341a95523a "" + "/usr/share/texmf/fonts/enc/dvips/lm/lm-rmtt.enc" 1254938640 2359 de53213020575850c8f8debc35095765 "" + "/usr/share/texmf/fonts/tfm/public/lm/ec-lmbx10.tfm" 1254938640 12076 b54175e02101bea1addf6b2d0197ed12 "" + "/usr/share/texmf/fonts/tfm/public/lm/ec-lmbx12.tfm" 1254938640 12088 d750ac78274fa7c9f73ba09914c04f8a "" + "/usr/share/texmf/fonts/tfm/public/lm/ec-lmbx9.tfm" 1254938640 12080 8da3d5e88196e4de175949ad7749b42f "" + "/usr/share/texmf/fonts/tfm/public/lm/ec-lmcsc10.tfm" 1254938640 11276 116dd5bea6621ce4a1999f96d876084c "" + "/usr/share/texmf/fonts/tfm/public/lm/ec-lmr10.tfm" 1254938640 12056 7e13df7fe4cbce21b072ba7c4f4deb6e "" + "/usr/share/texmf/fonts/tfm/public/lm/ec-lmr12.tfm" 1254938640 12092 7b1546e2d096cfd5dcbd4049b0b1ec2e "" + "/usr/share/texmf/fonts/tfm/public/lm/ec-lmr17.tfm" 1254938640 12156 ca1ae6a3c8564e89597f1f993fba1608 "" + "/usr/share/texmf/fonts/tfm/public/lm/ec-lmr9.tfm" 1254938640 12084 b7f5e4c003de6f57f07c7e9fee73a37c "" + "/usr/share/texmf/fonts/tfm/public/lm/ec-lmri10.tfm" 1254938640 17148 9556e1b5f936b77a796f68d2d559ba99 "" + "/usr/share/texmf/fonts/tfm/public/lm/ec-lmtk10.tfm" 1254938640 1368 5bfeb1cf8f9f0acdb7436bfaa8e0da4e "" + "/usr/share/texmf/fonts/tfm/public/lm/ec-lmtt10.tfm" 1254938640 1372 2ef2c2b492b3c4cd7879fe083abbb061 "" + "/usr/share/texmf/fonts/tfm/public/lm/ec-lmtt9.tfm" 1254938640 1372 a2ff2d4391a2d6bba15b518acb79e80f "" + "/usr/share/texmf/fonts/tfm/public/lm/lmex10.tfm" 1254938640 992 ce925c9346c7613270a79afbee98c070 "" + "/usr/share/texmf/fonts/tfm/public/lm/lmmi10.tfm" 1254938640 1528 6d36b2385e0ca062a654de6ac59cb34f "" + "/usr/share/texmf/fonts/tfm/public/lm/lmmi12.tfm" 1254938640 1524 753b192b18f2991794f9d41a8228510b "" + "/usr/share/texmf/fonts/tfm/public/lm/lmmi5.tfm" 1254938640 1508 198f5b7b99b5769126de3a533f6fc334 "" + "/usr/share/texmf/fonts/tfm/public/lm/lmmi6.tfm" 1254938640 1512 94a3fd88c6f27dbd9ecb46987e297a4e "" + "/usr/share/texmf/fonts/tfm/public/lm/lmmi7.tfm" 1254938640 1528 d5b028dd23da623848ef0645c96a1ed7 "" + "/usr/share/texmf/fonts/tfm/public/lm/lmmi8.tfm" 1254938640 1520 a3fe5596932db2db2cbda300920dd4e9 "" + "/usr/share/texmf/fonts/tfm/public/lm/lmmi9.tfm" 1254938640 1524 cdf05765c2a8bdb569ea0aa208fb0947 "" + "/usr/share/texmf/fonts/tfm/public/lm/lmsy10.tfm" 1254938640 1308 02cc510f9dd6012e5815d0c0ffbf6869 "" + "/usr/share/texmf/fonts/tfm/public/lm/lmsy5.tfm" 1254938640 1296 54ed1a711e2303d5282575278e3620b0 "" + "/usr/share/texmf/fonts/tfm/public/lm/lmsy6.tfm" 1254938640 1300 b0605d44c16c22d99dc001808e4f24ea "" + "/usr/share/texmf/fonts/tfm/public/lm/lmsy7.tfm" 1254938640 1304 32f22a15acc296b2a4e15698403dcb88 "" + "/usr/share/texmf/fonts/tfm/public/lm/lmsy8.tfm" 1254938640 1304 cdc9a17df9ef0d2dc320eff37bbab1c4 "" + "/usr/share/texmf/fonts/tfm/public/lm/lmsy9.tfm" 1254938640 1300 ca37bc0213808d24f74bf4d32f81f80d "" + "/usr/share/texmf/fonts/tfm/public/lm/rm-lmr10.tfm" 1254938640 11868 4f81e9b6033c032bdaf9884f4d7ef412 "" + "/usr/share/texmf/fonts/tfm/public/lm/rm-lmr12.tfm" 1254938640 11888 6841b91e46b65cf41a49b160e6e74130 "" + "/usr/share/texmf/fonts/tfm/public/lm/rm-lmr5.tfm" 1254938640 11804 aefb10c002e6492c25236524a447f969 "" + "/usr/share/texmf/fonts/tfm/public/lm/rm-lmr6.tfm" 1254938640 11836 e3b6ce3e601aec94f64a536e7f4224d5 "" + "/usr/share/texmf/fonts/tfm/public/lm/rm-lmr7.tfm" 1254938640 11852 5a9022f105fd1ee2797df861e79ae9a0 "" + "/usr/share/texmf/fonts/tfm/public/lm/rm-lmr8.tfm" 1254938640 11864 309fd7f43e4a0ba39f6f7644d76e8edf "" + "/usr/share/texmf/fonts/tfm/public/lm/rm-lmr9.tfm" 1254938640 11884 c93929a6974dce79eabb778f219d7e18 "" + "/usr/share/texmf/fonts/tfm/public/lm/rm-lmtt10.tfm" 1254938640 1340 adaa94f9add991a099a6fc98bbb5f02c "" + "/usr/share/texmf/fonts/tfm/public/lm/rm-lmtt8.tfm" 1254938640 1348 e9ce72e654d76f23fb9e1b8842e0576a "" + "/usr/share/texmf/fonts/tfm/public/lm/rm-lmtt9.tfm" 1254938640 1340 95bafc1340b1c519d1b4b4bcc33f5afc "" + "/usr/share/texmf/fonts/type1/public/lm/lmbx10.pfb" 1254938640 121021 1bf809ce4a594679006bd72263eba59b "" + "/usr/share/texmf/fonts/type1/public/lm/lmbx12.pfb" 1254938640 116908 1fca96723793882c2e0160350c192fc8 "" + "/usr/share/texmf/fonts/type1/public/lm/lmbx9.pfb" 1254938640 126646 439622e6fd57f388c9979d39c4fce535 "" + "/usr/share/texmf/fonts/type1/public/lm/lmcsc10.pfb" 1254938640 116427 4a5b1ccaa7cce719091920a86b58608d "" + "/usr/share/texmf/fonts/type1/public/lm/lmmi10.pfb" 1254938640 30388 702fae6a5f0e6e9c48a1d872b442ffcf "" + "/usr/share/texmf/fonts/type1/public/lm/lmr10.pfb" 1254938640 119235 f35b44530a1d90eb90fe15d9cba67ea0 "" + "/usr/share/texmf/fonts/type1/public/lm/lmr12.pfb" 1254938640 113634 f99c44d58bae0863375faf0e1d74d612 "" + "/usr/share/texmf/fonts/type1/public/lm/lmr17.pfb" 1254938640 119752 1bd8d06e4079df624bf59ce3ad7c9aa6 "" + "/usr/share/texmf/fonts/type1/public/lm/lmr5.pfb" 1254938640 120387 212cad1e763d510fc9c3ce2466274a57 "" + "/usr/share/texmf/fonts/type1/public/lm/lmr7.pfb" 1254938640 121145 68312a933e2c689ed40ec0aba373e279 "" + "/usr/share/texmf/fonts/type1/public/lm/lmr9.pfb" 1254938640 121065 50bbfa703ce7e11638752ef5a6d120c7 "" + "/usr/share/texmf/fonts/type1/public/lm/lmri10.pfb" 1254938640 112593 fda2373ba4420af33949610de4c28fe8 "" + "/usr/share/texmf/fonts/type1/public/lm/lmsy10.pfb" 1254938640 27863 09ce3735688ffde955e72da27c95b61a "" + "/usr/share/texmf/fonts/type1/public/lm/lmsy7.pfb" 1254938640 27941 d1f5d03f61a46c3fcc3a2ba904ddda52 "" + "/usr/share/texmf/fonts/type1/public/lm/lmtk10.pfb" 1254938640 117319 7f8361f845845ce6d5b36cbd9f9cf377 "" + "/usr/share/texmf/fonts/type1/public/lm/lmtt10.pfb" 1254938640 113227 1010e11451afc2822c95dae77c390042 "" + "/usr/share/texmf/fonts/type1/public/lm/lmtt8.pfb" 1254938640 115291 2ae7034c644e971beb573b1e6606f863 "" + "/usr/share/texmf/fonts/type1/public/lm/lmtt9.pfb" 1254938640 108480 ee1de99df36ee0a16b36023b9c9d8a58 "" + "/usr/share/texmf/tex/latex/lm/lmodern.sty" 1256929440 1606 c17281c7cff2bbd7ff0173e1433487ec "" + "/usr/share/texmf/tex/latex/lm/omllmm.fd" 1256929440 888 44447a3a3af84a22454ef89500942d93 "" + "/usr/share/texmf/tex/latex/lm/omslmsy.fd" 1256929440 805 af340a8260c447aa315cfc740ff0152f "" + "/usr/share/texmf/tex/latex/lm/omxlmex.fd" 1256929440 566 a94661f7b66063f191960bb7935b6ba2 "" + "/usr/share/texmf/tex/latex/lm/ot1lmr.fd" 1256929440 1880 bae7b659316f7344a86218ad38b01d91 "" + "/usr/share/texmf/tex/latex/lm/ot1lmtt.fd" 1256929440 2712 a8a977c98484ccc2dbc768e5509e3790 "" + "/usr/share/texmf/tex/latex/lm/t1lmr.fd" 1256929440 1865 afbfccbe7fda9c2dc5078ad7c486bbed "" + "/usr/share/texmf/tex/latex/lm/t1lmtt.fd" 1256929440 2681 354015af3b61e7be30009f084986375a "" + "/usr/share/texmf/web2c/texmf.cnf" 1435377840 31349 7675f8adfbe12aae865d340d35423a49 "" + "/var/lib/texmf/fonts/map/pdftex/updmap/pdftex.map" 1448651651 1779312 b2f993ff39f888114b7dddf8751f0ae0 "" + "/var/lib/texmf/web2c/pdftex/pdflatex.fmt" 1448651758 3845440 b767bcfad02834add06449ca1e913284 "" + "figures/go-ex-1.tex" 1455735441 659 8edc7f23dbe2a10e091cbb1b4fb54c5f "" + "figures/go-ex-2.tex" 1455735438 613 cd5bdb616fb54b341301506f66f67ae1 "" + "figures/go-gantt.tex" 1456592062 314 2c820ac7542278726c87f4e13e0a63d7 "" + "figures/life-ex-1.tex" 1455301670 746 831917a7d8d04a2cc8d6a6479a6ee58e "" + "figures/life-ex-2.tex" 1455734423 609 797c4b3bcd4b022ceba1d1e0961a64d8 "" + "figures/life-ex-3.tex" 1455301725 1534 7580ccfbc12e87d5504b7342262b6745 "" + "figures/life-gantt.tex" 1456604171 223 5246164ec42b8b7ad4f7a3434411b91d "" + "figures/ptf-gantt.tex" 1456592142 524 e9138e522d89548a375885316bd26fc4 "" + "figures/ptf-layering-exploded.tex" 1456437259 715 b7321c74e4e0e361ce58f5557c095c14 "" + "figures/ptf-layering-merged.tex" 1456437241 399 82a5f8ddb5e394e494b8c2cf537e51be "" + "figures/ptf-uml-diagram.tex" 1456585360 683 cd985b9697205f1f70bd0a49038850ca "" + "rapport.aux" 1456695565 1562 3608ee794e031d99e8fd86a777bbd855 "" + "rapport.bbl" 1456694154 1888 2bb2b991db78d50844e1f27c70f4576b "bibtex rapport" + "rapport.out" 1456695565 1251 58154cecf4373faafc4894fed01c616c "" + "rapport.tex" 1456677794 1321 ffecced79b9c5d6bf8b5ab3c3ea49b3f "" + "rapport.toc" 1456695565 2877 87fa0164e6e1c0b61528b527d8b00cb7 "" + (generated) + "parts/cmp.aux" + "rapport.pdf" + "rapport.out" + "./parts/cmp.aux" + "./parts/conclu.aux" + "./parts/go.aux" + "./parts/intro.aux" + "parts/life.aux" + "rapport.aux" + "./parts/life.aux" + "rapport.log" + "rapport.toc" + "./parts/ptf.aux" + "/home/matteo/Développement/se205-1/rapport/rapport.log" + "/home/matteo/Développement/se205-1/rapport/rapport.pdf" diff --git a/docs/rapports/rapport-initial-delabre/rapport.fls b/docs/rapports/rapport-initial-delabre/rapport.fls new file mode 100644 index 0000000..67a34ed --- /dev/null +++ b/docs/rapports/rapport-initial-delabre/rapport.fls @@ -0,0 +1,421 @@ +PWD /home/matteo/Développement/se205-1/rapport +INPUT /etc/texmf/web2c/texmf.cnf +INPUT /usr/share/texmf/web2c/texmf.cnf +INPUT /usr/share/texlive/texmf-dist/web2c/texmf.cnf +INPUT /var/lib/texmf/web2c/pdftex/pdflatex.fmt +INPUT /home/matteo/Développement/se205-1/rapport/rapport.tex +OUTPUT /home/matteo/Développement/se205-1/rapport/rapport.log +INPUT /usr/share/texlive/texmf-dist/tex/latex/base/report.cls +INPUT /usr/share/texlive/texmf-dist/tex/latex/base/report.cls +INPUT /usr/share/texlive/texmf-dist/tex/latex/base/size10.clo +INPUT /usr/share/texlive/texmf-dist/tex/latex/base/size10.clo +INPUT /usr/share/texlive/texmf-dist/tex/latex/base/inputenc.sty +INPUT /usr/share/texlive/texmf-dist/tex/latex/base/inputenc.sty +INPUT /usr/share/texlive/texmf-dist/tex/latex/base/utf8.def +INPUT /usr/share/texlive/texmf-dist/tex/latex/base/utf8.def +INPUT /usr/share/texlive/texmf-dist/tex/latex/base/t1enc.dfu +INPUT /usr/share/texlive/texmf-dist/tex/latex/base/t1enc.dfu +INPUT /usr/share/texlive/texmf-dist/tex/latex/base/ot1enc.dfu +INPUT /usr/share/texlive/texmf-dist/tex/latex/base/ot1enc.dfu +INPUT /usr/share/texlive/texmf-dist/tex/latex/base/omsenc.dfu +INPUT /usr/share/texlive/texmf-dist/tex/latex/base/omsenc.dfu +INPUT /usr/share/texlive/texmf-dist/tex/latex/base/fontenc.sty +INPUT /usr/share/texlive/texmf-dist/tex/latex/base/fontenc.sty +INPUT /usr/share/texlive/texmf-dist/tex/latex/base/t1enc.def +INPUT /usr/share/texlive/texmf-dist/tex/latex/base/t1enc.def +INPUT /usr/share/texlive/texmf-dist/fonts/map/fontname/texfonts.map +INPUT /usr/share/texlive/texmf-dist/fonts/tfm/jknappen/ec/ecrm1000.tfm +INPUT /usr/share/texmf/tex/latex/lm/lmodern.sty +INPUT /usr/share/texmf/tex/latex/lm/lmodern.sty +INPUT /usr/share/texlive/texmf-dist/tex/generic/babel/babel.sty +INPUT /usr/share/texlive/texmf-dist/tex/generic/babel/babel.sty +INPUT /usr/share/texlive/texmf-dist/tex/generic/babel-french/frenchb.ldf +INPUT /usr/share/texlive/texmf-dist/tex/generic/babel-french/frenchb.ldf +INPUT /usr/share/texlive/texmf-dist/tex/generic/babel/babel.def +INPUT /usr/share/texlive/texmf-dist/tex/latex/carlisle/scalefnt.sty +INPUT /usr/share/texlive/texmf-dist/tex/latex/carlisle/scalefnt.sty +INPUT /usr/share/texlive/texmf-dist/tex/latex/graphics/keyval.sty +INPUT /usr/share/texlive/texmf-dist/tex/latex/graphics/keyval.sty +INPUT /usr/share/texlive/texmf-dist/tex/latex/hyperref/hyperref.sty +INPUT /usr/share/texlive/texmf-dist/tex/latex/hyperref/hyperref.sty +INPUT /usr/share/texlive/texmf-dist/tex/generic/oberdiek/hobsub-hyperref.sty +INPUT /usr/share/texlive/texmf-dist/tex/generic/oberdiek/hobsub-hyperref.sty +INPUT /usr/share/texlive/texmf-dist/tex/generic/oberdiek/hobsub-hyperref.sty +INPUT /usr/share/texlive/texmf-dist/tex/generic/oberdiek/hobsub-generic.sty +INPUT /usr/share/texlive/texmf-dist/tex/generic/oberdiek/hobsub-generic.sty +INPUT /usr/share/texlive/texmf-dist/tex/generic/ifxetex/ifxetex.sty +INPUT /usr/share/texlive/texmf-dist/tex/generic/ifxetex/ifxetex.sty +INPUT /usr/share/texlive/texmf-dist/tex/latex/oberdiek/auxhook.sty +INPUT /usr/share/texlive/texmf-dist/tex/latex/oberdiek/auxhook.sty +INPUT /usr/share/texlive/texmf-dist/tex/latex/oberdiek/kvoptions.sty +INPUT /usr/share/texlive/texmf-dist/tex/latex/oberdiek/kvoptions.sty +INPUT /usr/share/texlive/texmf-dist/tex/latex/hyperref/pd1enc.def +INPUT /usr/share/texlive/texmf-dist/tex/latex/hyperref/pd1enc.def +INPUT /usr/share/texlive/texmf-dist/tex/latex/latexconfig/hyperref.cfg +INPUT /usr/share/texlive/texmf-dist/tex/latex/latexconfig/hyperref.cfg +INPUT /usr/share/texlive/texmf-dist/tex/latex/url/url.sty +INPUT /usr/share/texlive/texmf-dist/tex/latex/url/url.sty +INPUT /usr/share/texlive/texmf-dist/tex/latex/hyperref/hpdftex.def +INPUT /usr/share/texlive/texmf-dist/tex/latex/hyperref/hpdftex.def +INPUT /usr/share/texlive/texmf-dist/tex/latex/oberdiek/rerunfilecheck.sty +INPUT /usr/share/texlive/texmf-dist/tex/latex/oberdiek/rerunfilecheck.sty +INPUT /usr/share/texlive/texmf-dist/tex/latex/wrapfig/wrapfig.sty +INPUT /usr/share/texlive/texmf-dist/tex/latex/wrapfig/wrapfig.sty +INPUT /usr/share/texlive/texmf-dist/tex/latex/pgf/frontendlayer/tikz.sty +INPUT /usr/share/texlive/texmf-dist/tex/latex/pgf/frontendlayer/tikz.sty +INPUT /usr/share/texlive/texmf-dist/tex/latex/pgf/basiclayer/pgf.sty +INPUT /usr/share/texlive/texmf-dist/tex/latex/pgf/basiclayer/pgf.sty +INPUT /usr/share/texlive/texmf-dist/tex/latex/pgf/utilities/pgfrcs.sty +INPUT /usr/share/texlive/texmf-dist/tex/latex/pgf/utilities/pgfrcs.sty +INPUT /usr/share/texlive/texmf-dist/tex/generic/pgf/utilities/pgfutil-common.tex +INPUT /usr/share/texlive/texmf-dist/tex/generic/pgf/utilities/pgfutil-common-lists.tex +INPUT /usr/share/texlive/texmf-dist/tex/generic/pgf/utilities/pgfutil-latex.def +INPUT /usr/share/texlive/texmf-dist/tex/latex/ms/everyshi.sty +INPUT /usr/share/texlive/texmf-dist/tex/latex/ms/everyshi.sty +INPUT /usr/share/texlive/texmf-dist/tex/generic/pgf/utilities/pgfrcs.code.tex +INPUT /usr/share/texlive/texmf-dist/tex/generic/pgf/utilities/pgfrcs.code.tex +INPUT /usr/share/texlive/texmf-dist/tex/latex/pgf/basiclayer/pgfcore.sty +INPUT /usr/share/texlive/texmf-dist/tex/latex/pgf/basiclayer/pgfcore.sty +INPUT /usr/share/texlive/texmf-dist/tex/latex/graphics/graphicx.sty +INPUT /usr/share/texlive/texmf-dist/tex/latex/graphics/graphicx.sty +INPUT /usr/share/texlive/texmf-dist/tex/latex/graphics/graphics.sty +INPUT /usr/share/texlive/texmf-dist/tex/latex/graphics/graphics.sty +INPUT /usr/share/texlive/texmf-dist/tex/latex/graphics/trig.sty +INPUT /usr/share/texlive/texmf-dist/tex/latex/graphics/trig.sty +INPUT /usr/share/texlive/texmf-dist/tex/latex/latexconfig/graphics.cfg +INPUT /usr/share/texlive/texmf-dist/tex/latex/latexconfig/graphics.cfg +INPUT /usr/share/texlive/texmf-dist/tex/latex/pdftex-def/pdftex.def +INPUT /usr/share/texlive/texmf-dist/tex/latex/pdftex-def/pdftex.def +INPUT /usr/share/texlive/texmf-dist/tex/latex/pgf/systemlayer/pgfsys.sty +INPUT /usr/share/texlive/texmf-dist/tex/latex/pgf/systemlayer/pgfsys.sty +INPUT /usr/share/texlive/texmf-dist/tex/generic/pgf/systemlayer/pgfsys.code.tex +INPUT /usr/share/texlive/texmf-dist/tex/generic/pgf/systemlayer/pgfsys.code.tex +INPUT /usr/share/texlive/texmf-dist/tex/generic/pgf/utilities/pgfkeys.code.tex +INPUT /usr/share/texlive/texmf-dist/tex/generic/pgf/utilities/pgfkeysfiltered.code.tex +INPUT /usr/share/texlive/texmf-dist/tex/generic/pgf/systemlayer/pgf.cfg +INPUT /usr/share/texlive/texmf-dist/tex/generic/pgf/systemlayer/pgfsys-pdftex.def +INPUT /usr/share/texlive/texmf-dist/tex/generic/pgf/systemlayer/pgfsys-pdftex.def +INPUT /usr/share/texlive/texmf-dist/tex/generic/pgf/systemlayer/pgfsys-common-pdf.def +INPUT /usr/share/texlive/texmf-dist/tex/generic/pgf/systemlayer/pgfsyssoftpath.code.tex +INPUT /usr/share/texlive/texmf-dist/tex/generic/pgf/systemlayer/pgfsyssoftpath.code.tex +INPUT /usr/share/texlive/texmf-dist/tex/generic/pgf/systemlayer/pgfsysprotocol.code.tex +INPUT /usr/share/texlive/texmf-dist/tex/generic/pgf/systemlayer/pgfsysprotocol.code.tex +INPUT /usr/share/texlive/texmf-dist/tex/latex/xcolor/xcolor.sty +INPUT /usr/share/texlive/texmf-dist/tex/latex/xcolor/xcolor.sty +INPUT /usr/share/texlive/texmf-dist/tex/latex/latexconfig/color.cfg +INPUT /usr/share/texlive/texmf-dist/tex/latex/latexconfig/color.cfg +INPUT /usr/share/texlive/texmf-dist/tex/generic/pgf/basiclayer/pgfcore.code.tex +INPUT /usr/share/texlive/texmf-dist/tex/generic/pgf/basiclayer/pgfcore.code.tex +INPUT /usr/share/texlive/texmf-dist/tex/generic/pgf/math/pgfmath.code.tex +INPUT /usr/share/texlive/texmf-dist/tex/generic/pgf/math/pgfmathcalc.code.tex +INPUT /usr/share/texlive/texmf-dist/tex/generic/pgf/math/pgfmathutil.code.tex +INPUT /usr/share/texlive/texmf-dist/tex/generic/pgf/math/pgfmathparser.code.tex +INPUT /usr/share/texlive/texmf-dist/tex/generic/pgf/math/pgfmathfunctions.code.tex +INPUT /usr/share/texlive/texmf-dist/tex/generic/pgf/math/pgfmathfunctions.basic.code.tex +INPUT /usr/share/texlive/texmf-dist/tex/generic/pgf/math/pgfmathfunctions.trigonometric.code.tex +INPUT /usr/share/texlive/texmf-dist/tex/generic/pgf/math/pgfmathfunctions.random.code.tex +INPUT /usr/share/texlive/texmf-dist/tex/generic/pgf/math/pgfmathfunctions.comparison.code.tex +INPUT /usr/share/texlive/texmf-dist/tex/generic/pgf/math/pgfmathfunctions.base.code.tex +INPUT /usr/share/texlive/texmf-dist/tex/generic/pgf/math/pgfmathfunctions.round.code.tex +INPUT /usr/share/texlive/texmf-dist/tex/generic/pgf/math/pgfmathfunctions.misc.code.tex +INPUT /usr/share/texlive/texmf-dist/tex/generic/pgf/math/pgfmathfunctions.integerarithmetics.code.tex +INPUT /usr/share/texlive/texmf-dist/tex/generic/pgf/math/pgfmathfloat.code.tex +INPUT /usr/share/texlive/texmf-dist/tex/generic/pgf/basiclayer/pgfcorepoints.code.tex +INPUT /usr/share/texlive/texmf-dist/tex/generic/pgf/basiclayer/pgfcorepathconstruct.code.tex +INPUT /usr/share/texlive/texmf-dist/tex/generic/pgf/basiclayer/pgfcorepathusage.code.tex +INPUT /usr/share/texlive/texmf-dist/tex/generic/pgf/basiclayer/pgfcorescopes.code.tex +INPUT /usr/share/texlive/texmf-dist/tex/generic/pgf/basiclayer/pgfcoregraphicstate.code.tex +INPUT /usr/share/texlive/texmf-dist/tex/generic/pgf/basiclayer/pgfcoretransformations.code.tex +INPUT /usr/share/texlive/texmf-dist/tex/generic/pgf/basiclayer/pgfcorequick.code.tex +INPUT /usr/share/texlive/texmf-dist/tex/generic/pgf/basiclayer/pgfcoreobjects.code.tex +INPUT /usr/share/texlive/texmf-dist/tex/generic/pgf/basiclayer/pgfcorepathprocessing.code.tex +INPUT /usr/share/texlive/texmf-dist/tex/generic/pgf/basiclayer/pgfcorearrows.code.tex +INPUT /usr/share/texlive/texmf-dist/tex/generic/pgf/basiclayer/pgfcoreshade.code.tex +INPUT /usr/share/texlive/texmf-dist/tex/generic/pgf/basiclayer/pgfcoreimage.code.tex +INPUT /usr/share/texlive/texmf-dist/tex/generic/pgf/basiclayer/pgfcoreexternal.code.tex +INPUT /usr/share/texlive/texmf-dist/tex/generic/pgf/basiclayer/pgfcorelayers.code.tex +INPUT /usr/share/texlive/texmf-dist/tex/generic/pgf/basiclayer/pgfcoretransparency.code.tex +INPUT /usr/share/texlive/texmf-dist/tex/generic/pgf/basiclayer/pgfcorepatterns.code.tex +INPUT /usr/share/texlive/texmf-dist/tex/generic/pgf/modules/pgfmoduleshapes.code.tex +INPUT /usr/share/texlive/texmf-dist/tex/generic/pgf/modules/pgfmoduleplot.code.tex +INPUT /usr/share/texlive/texmf-dist/tex/latex/pgf/compatibility/pgfcomp-version-0-65.sty +INPUT /usr/share/texlive/texmf-dist/tex/latex/pgf/compatibility/pgfcomp-version-0-65.sty +INPUT /usr/share/texlive/texmf-dist/tex/latex/pgf/compatibility/pgfcomp-version-1-18.sty +INPUT /usr/share/texlive/texmf-dist/tex/latex/pgf/compatibility/pgfcomp-version-1-18.sty +INPUT /usr/share/texlive/texmf-dist/tex/latex/pgf/utilities/pgffor.sty +INPUT /usr/share/texlive/texmf-dist/tex/latex/pgf/utilities/pgffor.sty +INPUT /usr/share/texlive/texmf-dist/tex/latex/pgf/utilities/pgfkeys.sty +INPUT /usr/share/texlive/texmf-dist/tex/latex/pgf/utilities/pgfkeys.sty +INPUT /usr/share/texlive/texmf-dist/tex/generic/pgf/utilities/pgfkeys.code.tex +INPUT /usr/share/texlive/texmf-dist/tex/generic/pgf/utilities/pgfkeys.code.tex +INPUT /usr/share/texlive/texmf-dist/tex/latex/pgf/math/pgfmath.sty +INPUT /usr/share/texlive/texmf-dist/tex/latex/pgf/math/pgfmath.sty +INPUT /usr/share/texlive/texmf-dist/tex/generic/pgf/math/pgfmath.code.tex +INPUT /usr/share/texlive/texmf-dist/tex/generic/pgf/math/pgfmath.code.tex +INPUT /usr/share/texlive/texmf-dist/tex/generic/pgf/utilities/pgffor.code.tex +INPUT /usr/share/texlive/texmf-dist/tex/generic/pgf/utilities/pgffor.code.tex +INPUT /usr/share/texlive/texmf-dist/tex/generic/pgf/math/pgfmath.code.tex +INPUT /usr/share/texlive/texmf-dist/tex/generic/pgf/frontendlayer/tikz/tikz.code.tex +INPUT /usr/share/texlive/texmf-dist/tex/generic/pgf/frontendlayer/tikz/tikz.code.tex +INPUT /usr/share/texlive/texmf-dist/tex/generic/pgf/libraries/pgflibraryplothandlers.code.tex +INPUT /usr/share/texlive/texmf-dist/tex/generic/pgf/libraries/pgflibraryplothandlers.code.tex +INPUT /usr/share/texlive/texmf-dist/tex/generic/pgf/modules/pgfmodulematrix.code.tex +INPUT /usr/share/texlive/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarytopaths.code.tex +INPUT /usr/share/texlive/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarytopaths.code.tex +INPUT /usr/share/texlive/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrary3d.code.tex +INPUT /usr/share/texlive/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrary3d.code.tex +INPUT /home/matteo/texmf/tex/latex/gantt/gantt.sty +INPUT /home/matteo/texmf/tex/latex/gantt/gantt.sty +INPUT /usr/share/texlive/texmf-dist/tex/latex/xkeyval/xkeyval.sty +INPUT /usr/share/texlive/texmf-dist/tex/latex/xkeyval/xkeyval.sty +INPUT /usr/share/texlive/texmf-dist/tex/generic/xkeyval/xkeyval.tex +INPUT /usr/share/texlive/texmf-dist/tex/generic/xkeyval/xkvutils.tex +INPUT /usr/share/texlive/texmf-dist/tex/latex/base/ifthen.sty +INPUT /usr/share/texlive/texmf-dist/tex/latex/base/ifthen.sty +INPUT /usr/share/texlive/texmf-dist/tex/latex/tools/calc.sty +INPUT /usr/share/texlive/texmf-dist/tex/latex/tools/calc.sty +INPUT /usr/share/texlive/texmf-dist/tex/latex/forloop/forloop.sty +INPUT /usr/share/texlive/texmf-dist/tex/latex/forloop/forloop.sty +INPUT /usr/share/texlive/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarypatterns.code.tex +INPUT /usr/share/texlive/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarypatterns.code.tex +INPUT /usr/share/texlive/texmf-dist/tex/generic/pgf/libraries/pgflibrarypatterns.code.tex +INPUT /usr/share/texlive/texmf-dist/tex/generic/pgf/libraries/pgflibrarypatterns.code.tex +INPUT /usr/share/texlive/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryarrows.code.tex +INPUT /usr/share/texlive/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryarrows.code.tex +INPUT /usr/share/texlive/texmf-dist/tex/generic/pgf/libraries/pgflibraryarrows.code.tex +INPUT /usr/share/texlive/texmf-dist/tex/generic/pgf/libraries/pgflibraryarrows.code.tex +INPUT /home/matteo/texmf/tex/latex/tikz-uml/tikz-uml.sty +INPUT /home/matteo/texmf/tex/latex/tikz-uml/tikz-uml.sty +INPUT /usr/share/texlive/texmf-dist/tex/generic/xstring/xstring.sty +INPUT /usr/share/texlive/texmf-dist/tex/generic/xstring/xstring.sty +INPUT /usr/share/texlive/texmf-dist/tex/generic/xstring/xstring.tex +INPUT /usr/share/texlive/texmf-dist/tex/latex/pgfopts/pgfopts.sty +INPUT /usr/share/texlive/texmf-dist/tex/latex/pgfopts/pgfopts.sty +INPUT /usr/share/texlive/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarybackgrounds.code.tex +INPUT /usr/share/texlive/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarybackgrounds.code.tex +INPUT /usr/share/texlive/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryshapes.code.tex +INPUT /usr/share/texlive/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryshapes.code.tex +INPUT /usr/share/texlive/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryshapes.geometric.code.tex +INPUT /usr/share/texlive/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryshapes.geometric.code.tex +INPUT /usr/share/texlive/texmf-dist/tex/generic/pgf/libraries/shapes/pgflibraryshapes.geometric.code.tex +INPUT /usr/share/texlive/texmf-dist/tex/generic/pgf/libraries/shapes/pgflibraryshapes.geometric.code.tex +INPUT /usr/share/texlive/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryshapes.misc.code.tex +INPUT /usr/share/texlive/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryshapes.misc.code.tex +INPUT /usr/share/texlive/texmf-dist/tex/generic/pgf/libraries/shapes/pgflibraryshapes.misc.code.tex +INPUT /usr/share/texlive/texmf-dist/tex/generic/pgf/libraries/shapes/pgflibraryshapes.misc.code.tex +INPUT /usr/share/texlive/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryshapes.symbols.code.tex +INPUT /usr/share/texlive/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryshapes.symbols.code.tex +INPUT /usr/share/texlive/texmf-dist/tex/generic/pgf/libraries/shapes/pgflibraryshapes.symbols.code.tex +INPUT /usr/share/texlive/texmf-dist/tex/generic/pgf/libraries/shapes/pgflibraryshapes.symbols.code.tex +INPUT /usr/share/texlive/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryshapes.arrows.code.tex +INPUT /usr/share/texlive/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryshapes.arrows.code.tex +INPUT /usr/share/texlive/texmf-dist/tex/generic/pgf/libraries/shapes/pgflibraryshapes.arrows.code.tex +INPUT /usr/share/texlive/texmf-dist/tex/generic/pgf/libraries/shapes/pgflibraryshapes.arrows.code.tex +INPUT /usr/share/texlive/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryshapes.callouts.code.tex +INPUT /usr/share/texlive/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryshapes.callouts.code.tex +INPUT /usr/share/texlive/texmf-dist/tex/generic/pgf/libraries/shapes/pgflibraryshapes.callouts.code.tex +INPUT /usr/share/texlive/texmf-dist/tex/generic/pgf/libraries/shapes/pgflibraryshapes.callouts.code.tex +INPUT /usr/share/texlive/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryshapes.multipart.code.tex +INPUT /usr/share/texlive/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryshapes.multipart.code.tex +INPUT /usr/share/texlive/texmf-dist/tex/generic/pgf/libraries/shapes/pgflibraryshapes.multipart.code.tex +INPUT /usr/share/texlive/texmf-dist/tex/generic/pgf/libraries/shapes/pgflibraryshapes.multipart.code.tex +INPUT /usr/share/texlive/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryfit.code.tex +INPUT /usr/share/texlive/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryfit.code.tex +INPUT /usr/share/texlive/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryshadows.code.tex +INPUT /usr/share/texlive/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryshadows.code.tex +INPUT /usr/share/texlive/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryfadings.code.tex +INPUT /usr/share/texlive/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryfadings.code.tex +INPUT /usr/share/texlive/texmf-dist/tex/generic/pgf/libraries/pgflibraryfadings.code.tex +INPUT /usr/share/texlive/texmf-dist/tex/generic/pgf/libraries/pgflibraryfadings.code.tex +OUTPUT /home/matteo/Développement/se205-1/rapport/rapport.pdf +INPUT /usr/share/texlive/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarydecorations.markings.code.tex +INPUT /usr/share/texlive/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarydecorations.markings.code.tex +INPUT /usr/share/texlive/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarydecorations.code.tex +INPUT /usr/share/texlive/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarydecorations.code.tex +INPUT /usr/share/texlive/texmf-dist/tex/generic/pgf/modules/pgfmoduledecorations.code.tex +INPUT /usr/share/texlive/texmf-dist/tex/generic/pgf/libraries/decorations/pgflibrarydecorations.markings.code.tex +INPUT /usr/share/texlive/texmf-dist/tex/generic/pgf/libraries/decorations/pgflibrarydecorations.markings.code.tex +INPUT /usr/share/texlive/texmf-dist/tex/latex/xifthen/xifthen.sty +INPUT /usr/share/texlive/texmf-dist/tex/latex/xifthen/xifthen.sty +INPUT /usr/share/texlive/texmf-dist/tex/latex/etex-pkg/etex.sty +INPUT /usr/share/texlive/texmf-dist/tex/latex/etex-pkg/etex.sty +INPUT /usr/share/texlive/texmf-dist/tex/latex/ifmtarg/ifmtarg.sty +INPUT /usr/share/texlive/texmf-dist/tex/latex/ifmtarg/ifmtarg.sty +INPUT /home/matteo/Développement/se205-1/rapport/rapport.aux +INPUT /home/matteo/Développement/se205-1/rapport/rapport.aux +INPUT /home/matteo/Développement/se205-1/rapport/./parts/intro.aux +INPUT /home/matteo/Développement/se205-1/rapport/./parts/intro.aux +INPUT /home/matteo/Développement/se205-1/rapport/./parts/life.aux +INPUT /home/matteo/Développement/se205-1/rapport/./parts/life.aux +INPUT /home/matteo/Développement/se205-1/rapport/./parts/go.aux +INPUT /home/matteo/Développement/se205-1/rapport/./parts/go.aux +INPUT /home/matteo/Développement/se205-1/rapport/./parts/ptf.aux +INPUT /home/matteo/Développement/se205-1/rapport/./parts/ptf.aux +INPUT /home/matteo/Développement/se205-1/rapport/./parts/cmp.aux +INPUT /home/matteo/Développement/se205-1/rapport/./parts/cmp.aux +INPUT /home/matteo/Développement/se205-1/rapport/./parts/conclu.aux +INPUT /home/matteo/Développement/se205-1/rapport/./parts/conclu.aux +OUTPUT /home/matteo/Développement/se205-1/rapport/rapport.aux +INPUT /usr/share/texmf/tex/latex/lm/t1lmr.fd +INPUT /usr/share/texmf/tex/latex/lm/t1lmr.fd +INPUT /usr/share/texmf/fonts/tfm/public/lm/ec-lmr10.tfm +INPUT /usr/share/texlive/texmf-dist/tex/latex/hyperref/nameref.sty +INPUT /usr/share/texlive/texmf-dist/tex/latex/hyperref/nameref.sty +INPUT /usr/share/texlive/texmf-dist/tex/generic/oberdiek/gettitlestring.sty +INPUT /usr/share/texlive/texmf-dist/tex/generic/oberdiek/gettitlestring.sty +INPUT /home/matteo/Développement/se205-1/rapport/rapport.out +INPUT /home/matteo/Développement/se205-1/rapport/rapport.out +INPUT /home/matteo/Développement/se205-1/rapport/rapport.out +INPUT /home/matteo/Développement/se205-1/rapport/rapport.out +INPUT /home/matteo/Développement/se205-1/rapport/rapport.out +INPUT /home/matteo/Développement/se205-1/rapport/rapport.out +OUTPUT /home/matteo/Développement/se205-1/rapport/rapport.out +INPUT /usr/share/texlive/texmf-dist/tex/context/base/supp-pdf.mkii +INPUT /usr/share/texlive/texmf-dist/tex/context/base/supp-pdf.mkii +INPUT /usr/share/texlive/texmf-dist/tex/latex/oberdiek/epstopdf-base.sty +INPUT /usr/share/texlive/texmf-dist/tex/latex/oberdiek/epstopdf-base.sty +INPUT /usr/share/texlive/texmf-dist/tex/latex/oberdiek/grfext.sty +INPUT /usr/share/texlive/texmf-dist/tex/latex/oberdiek/grfext.sty +INPUT /usr/share/texlive/texmf-dist/tex/latex/latexconfig/epstopdf-sys.cfg +INPUT /usr/share/texlive/texmf-dist/tex/latex/latexconfig/epstopdf-sys.cfg +INPUT /usr/share/texmf/fonts/tfm/public/lm/ec-lmr17.tfm +INPUT /usr/share/texmf/fonts/tfm/public/lm/ec-lmr12.tfm +INPUT /usr/share/texmf/tex/latex/lm/ot1lmr.fd +INPUT /usr/share/texmf/tex/latex/lm/ot1lmr.fd +INPUT /usr/share/texmf/fonts/tfm/public/lm/rm-lmr12.tfm +INPUT /usr/share/texmf/fonts/tfm/public/lm/rm-lmr8.tfm +INPUT /usr/share/texmf/fonts/tfm/public/lm/rm-lmr6.tfm +INPUT /usr/share/texmf/tex/latex/lm/omllmm.fd +INPUT /usr/share/texmf/tex/latex/lm/omllmm.fd +INPUT /usr/share/texmf/fonts/tfm/public/lm/lmmi12.tfm +INPUT /usr/share/texmf/fonts/tfm/public/lm/lmmi8.tfm +INPUT /usr/share/texmf/fonts/tfm/public/lm/lmmi6.tfm +INPUT /usr/share/texmf/tex/latex/lm/omslmsy.fd +INPUT /usr/share/texmf/tex/latex/lm/omslmsy.fd +INPUT /usr/share/texmf/fonts/tfm/public/lm/lmsy10.tfm +INPUT /usr/share/texmf/fonts/tfm/public/lm/lmsy8.tfm +INPUT /usr/share/texmf/fonts/tfm/public/lm/lmsy6.tfm +INPUT /usr/share/texmf/tex/latex/lm/omxlmex.fd +INPUT /usr/share/texmf/tex/latex/lm/omxlmex.fd +INPUT /usr/share/texmf/fonts/tfm/public/lm/lmex10.tfm +INPUT /usr/share/texmf/fonts/tfm/public/lm/ec-lmcsc10.tfm +INPUT /var/lib/texmf/fonts/map/pdftex/updmap/pdftex.map +INPUT /usr/share/texmf/fonts/tfm/public/lm/ec-lmr17.tfm +INPUT /usr/share/texmf/fonts/tfm/public/lm/ec-lmbx12.tfm +INPUT /home/matteo/Développement/se205-1/rapport/rapport.toc +INPUT /home/matteo/Développement/se205-1/rapport/rapport.toc +INPUT /usr/share/texmf/fonts/tfm/public/lm/ec-lmbx10.tfm +INPUT /usr/share/texmf/fonts/tfm/public/lm/rm-lmr10.tfm +INPUT /usr/share/texmf/fonts/tfm/public/lm/rm-lmr7.tfm +INPUT /usr/share/texmf/fonts/tfm/public/lm/rm-lmr5.tfm +INPUT /usr/share/texmf/fonts/tfm/public/lm/lmmi10.tfm +INPUT /usr/share/texmf/fonts/tfm/public/lm/lmmi7.tfm +INPUT /usr/share/texmf/fonts/tfm/public/lm/lmmi5.tfm +INPUT /usr/share/texmf/fonts/tfm/public/lm/lmsy10.tfm +INPUT /usr/share/texmf/fonts/tfm/public/lm/lmsy7.tfm +INPUT /usr/share/texmf/fonts/tfm/public/lm/lmsy5.tfm +OUTPUT /home/matteo/Développement/se205-1/rapport/rapport.toc +OUTPUT /home/matteo/Développement/se205-1/rapport/./parts/intro.aux +INPUT /home/matteo/Développement/se205-1/rapport/./parts/intro.tex +INPUT /home/matteo/Développement/se205-1/rapport/./parts/intro.tex +OUTPUT /home/matteo/Développement/se205-1/rapport/./parts/life.aux +INPUT /home/matteo/Développement/se205-1/rapport/./parts/life.tex +INPUT /home/matteo/Développement/se205-1/rapport/./parts/life.tex +INPUT /usr/share/texmf/fonts/tfm/public/lm/ec-lmr17.tfm +INPUT /usr/share/texmf/fonts/tfm/public/lm/ec-lmbx12.tfm +INPUT /usr/share/texmf/fonts/tfm/public/lm/ec-lmr12.tfm +INPUT /usr/share/texmf/fonts/tfm/public/lm/ec-lmbx12.tfm +INPUT ./figures/life-ex-1.tex +INPUT ./figures/life-ex-1.tex +INPUT /usr/share/texmf/fonts/tfm/public/lm/ec-lmcsc10.tfm +INPUT ./figures/life-ex-2.tex +INPUT ./figures/life-ex-2.tex +INPUT ./figures/life-ex-3.tex +INPUT ./figures/life-ex-3.tex +INPUT /usr/share/texmf/tex/latex/lm/t1lmtt.fd +INPUT /usr/share/texmf/tex/latex/lm/t1lmtt.fd +INPUT /usr/share/texmf/fonts/tfm/public/lm/ec-lmtt10.tfm +INPUT /usr/share/texmf/tex/latex/lm/ot1lmtt.fd +INPUT /usr/share/texmf/tex/latex/lm/ot1lmtt.fd +INPUT /usr/share/texmf/fonts/tfm/public/lm/rm-lmtt10.tfm +INPUT /usr/share/texmf/fonts/tfm/public/lm/rm-lmtt8.tfm +INPUT /usr/share/texmf/fonts/tfm/public/lm/rm-lmtt8.tfm +INPUT /usr/share/texmf/fonts/tfm/public/lm/ec-lmbx12.tfm +INPUT /usr/share/texmf/fonts/tfm/public/lm/ec-lmri10.tfm +INPUT ./figures/life-gantt.tex +INPUT ./figures/life-gantt.tex +INPUT /usr/share/texmf/fonts/tfm/public/lm/ec-lmr9.tfm +OUTPUT /home/matteo/Développement/se205-1/rapport/./parts/go.aux +INPUT /home/matteo/Développement/se205-1/rapport/./parts/go.tex +INPUT /home/matteo/Développement/se205-1/rapport/./parts/go.tex +INPUT ./figures/go-ex-1.tex +INPUT ./figures/go-ex-1.tex +INPUT ./figures/go-ex-2.tex +INPUT ./figures/go-ex-2.tex +INPUT ./figures/go-gantt.tex +INPUT ./figures/go-gantt.tex +OUTPUT /home/matteo/Développement/se205-1/rapport/./parts/ptf.aux +INPUT /home/matteo/Développement/se205-1/rapport/./parts/ptf.tex +INPUT /home/matteo/Développement/se205-1/rapport/./parts/ptf.tex +INPUT ./figures/ptf-uml-diagram.tex +INPUT ./figures/ptf-uml-diagram.tex +INPUT /usr/share/texmf/fonts/tfm/public/lm/rm-lmr9.tfm +INPUT /usr/share/texmf/fonts/tfm/public/lm/lmmi9.tfm +INPUT /usr/share/texmf/fonts/tfm/public/lm/lmsy9.tfm +INPUT /usr/share/texmf/fonts/tfm/public/lm/rm-lmtt9.tfm +INPUT /usr/share/texmf/fonts/tfm/public/lm/rm-lmtt8.tfm +INPUT /usr/share/texmf/fonts/tfm/public/lm/ec-lmbx9.tfm +INPUT /usr/share/texmf/fonts/tfm/public/lm/ec-lmtt9.tfm +INPUT /usr/share/texmf/fonts/tfm/public/lm/ec-lmtk10.tfm +INPUT ./figures/ptf-layering-exploded.tex +INPUT ./figures/ptf-layering-exploded.tex +INPUT ./figures/ptf-layering-merged.tex +INPUT ./figures/ptf-layering-merged.tex +INPUT ./figures/ptf-gantt.tex +INPUT ./figures/ptf-gantt.tex +OUTPUT /home/matteo/Développement/se205-1/rapport/./parts/cmp.aux +INPUT /home/matteo/Développement/se205-1/rapport/./parts/cmp.tex +INPUT /home/matteo/Développement/se205-1/rapport/./parts/cmp.tex +OUTPUT /home/matteo/Développement/se205-1/rapport/./parts/conclu.aux +INPUT /home/matteo/Développement/se205-1/rapport/./parts/conclu.tex +INPUT /home/matteo/Développement/se205-1/rapport/./parts/conclu.tex +INPUT /home/matteo/Développement/se205-1/rapport/rapport.bbl +INPUT /home/matteo/Développement/se205-1/rapport/rapport.bbl +INPUT /home/matteo/Développement/se205-1/rapport/rapport.aux +INPUT /home/matteo/Développement/se205-1/rapport/./parts/intro.aux +INPUT /home/matteo/Développement/se205-1/rapport/./parts/intro.aux +INPUT /home/matteo/Développement/se205-1/rapport/./parts/life.aux +INPUT /home/matteo/Développement/se205-1/rapport/./parts/life.aux +INPUT /home/matteo/Développement/se205-1/rapport/./parts/go.aux +INPUT /home/matteo/Développement/se205-1/rapport/./parts/go.aux +INPUT /home/matteo/Développement/se205-1/rapport/./parts/ptf.aux +INPUT /home/matteo/Développement/se205-1/rapport/./parts/ptf.aux +INPUT /home/matteo/Développement/se205-1/rapport/./parts/cmp.aux +INPUT /home/matteo/Développement/se205-1/rapport/./parts/cmp.aux +INPUT /home/matteo/Développement/se205-1/rapport/./parts/conclu.aux +INPUT /home/matteo/Développement/se205-1/rapport/./parts/conclu.aux +INPUT /home/matteo/Développement/se205-1/rapport/rapport.out +INPUT /home/matteo/Développement/se205-1/rapport/rapport.out +INPUT /usr/share/texmf/fonts/enc/dvips/lm/lm-rm.enc +INPUT /usr/share/texmf/fonts/enc/dvips/lm/lm-rmtt.enc +INPUT /usr/share/texmf/fonts/enc/dvips/lm/lm-ec.enc +INPUT /usr/share/texmf/fonts/enc/dvips/lm/lm-mathsy.enc +INPUT /usr/share/texmf/fonts/enc/dvips/lm/lm-mathit.enc +INPUT /usr/share/texmf/fonts/type1/public/lm/lmbx10.pfb +INPUT /usr/share/texmf/fonts/type1/public/lm/lmbx12.pfb +INPUT /usr/share/texmf/fonts/type1/public/lm/lmbx9.pfb +INPUT /usr/share/texmf/fonts/type1/public/lm/lmcsc10.pfb +INPUT /usr/share/texmf/fonts/type1/public/lm/lmmi10.pfb +INPUT /usr/share/texmf/fonts/type1/public/lm/lmr10.pfb +INPUT /usr/share/texmf/fonts/type1/public/lm/lmr12.pfb +INPUT /usr/share/texmf/fonts/type1/public/lm/lmr17.pfb +INPUT /usr/share/texmf/fonts/type1/public/lm/lmr5.pfb +INPUT /usr/share/texmf/fonts/type1/public/lm/lmr7.pfb +INPUT /usr/share/texmf/fonts/type1/public/lm/lmr9.pfb +INPUT /usr/share/texmf/fonts/type1/public/lm/lmri10.pfb +INPUT /usr/share/texmf/fonts/type1/public/lm/lmsy10.pfb +INPUT /usr/share/texmf/fonts/type1/public/lm/lmsy7.pfb +INPUT /usr/share/texmf/fonts/type1/public/lm/lmtk10.pfb +INPUT /usr/share/texmf/fonts/type1/public/lm/lmtt10.pfb +INPUT /usr/share/texmf/fonts/type1/public/lm/lmtt8.pfb +INPUT /usr/share/texmf/fonts/type1/public/lm/lmtt9.pfb diff --git a/docs/rapports/rapport-initial-delabre/rapport.log b/docs/rapports/rapport-initial-delabre/rapport.log new file mode 100644 index 0000000..39cf3fa --- /dev/null +++ b/docs/rapports/rapport-initial-delabre/rapport.log @@ -0,0 +1,1110 @@ +This is pdfTeX, Version 3.14159265-2.6-1.40.16 (TeX Live 2015/Debian) (preloaded format=pdflatex 2015.11.27) 28 FEB 2016 22:39 +entering extended mode + restricted \write18 enabled. + file:line:error style messages enabled. + %&-line parsing enabled. +**rapport.tex +(/home/matteo/Développement/se205-1/rapport/rapport.tex +LaTeX2e <2015/01/01> +Babel <3.9l> and hyphenation patterns for 79 languages loaded. +(/usr/share/texlive/texmf-dist/tex/latex/base/report.cls +Document Class: report 2014/09/29 v1.4h Standard LaTeX document class +(/usr/share/texlive/texmf-dist/tex/latex/base/size10.clo +File: size10.clo 2014/09/29 v1.4h Standard LaTeX file (size option) +) +\c@part=\count79 +\c@chapter=\count80 +\c@section=\count81 +\c@subsection=\count82 +\c@subsubsection=\count83 +\c@paragraph=\count84 +\c@subparagraph=\count85 +\c@figure=\count86 +\c@table=\count87 +\abovecaptionskip=\skip41 +\belowcaptionskip=\skip42 +\bibindent=\dimen102 +) (/usr/share/texlive/texmf-dist/tex/latex/base/inputenc.sty +Package: inputenc 2015/03/17 v1.2c Input encoding file +\inpenc@prehook=\toks14 +\inpenc@posthook=\toks15 + (/usr/share/texlive/texmf-dist/tex/latex/base/utf8.def +File: utf8.def 2014/09/29 v1.1m UTF-8 support for inputenc +Now handling font encoding OML ... +... no UTF-8 mapping file for font encoding OML +Now handling font encoding T1 ... +... processing UTF-8 mapping file for font encoding T1 + (/usr/share/texlive/texmf-dist/tex/latex/base/t1enc.dfu +File: t1enc.dfu 2014/09/29 v1.1m UTF-8 support for inputenc + defining Unicode char U+00A1 (decimal 161) + defining Unicode char U+00A3 (decimal 163) + defining Unicode char U+00AB (decimal 171) + defining Unicode char U+00BB (decimal 187) + defining Unicode char U+00BF (decimal 191) + defining Unicode char U+00C0 (decimal 192) + defining Unicode char U+00C1 (decimal 193) + defining Unicode char U+00C2 (decimal 194) + defining Unicode char U+00C3 (decimal 195) + defining Unicode char U+00C4 (decimal 196) + defining Unicode char U+00C5 (decimal 197) + defining Unicode char U+00C6 (decimal 198) + defining Unicode char U+00C7 (decimal 199) + defining Unicode char U+00C8 (decimal 200) + defining Unicode char U+00C9 (decimal 201) + defining Unicode char U+00CA (decimal 202) + defining Unicode char U+00CB (decimal 203) + defining Unicode char U+00CC (decimal 204) + defining Unicode char U+00CD (decimal 205) + defining Unicode char U+00CE (decimal 206) + defining Unicode char U+00CF (decimal 207) + defining Unicode char U+00D0 (decimal 208) + defining Unicode char U+00D1 (decimal 209) + defining Unicode char U+00D2 (decimal 210) + defining Unicode char U+00D3 (decimal 211) + defining Unicode char U+00D4 (decimal 212) + defining Unicode char U+00D5 (decimal 213) + defining Unicode char U+00D6 (decimal 214) + defining Unicode char U+00D8 (decimal 216) + defining Unicode char U+00D9 (decimal 217) + defining Unicode char U+00DA (decimal 218) + defining Unicode char U+00DB (decimal 219) + defining Unicode char U+00DC (decimal 220) + defining Unicode char U+00DD (decimal 221) + defining Unicode char U+00DE (decimal 222) + defining Unicode char U+00DF (decimal 223) + defining Unicode char U+00E0 (decimal 224) + defining Unicode char U+00E1 (decimal 225) + defining Unicode char U+00E2 (decimal 226) + defining Unicode char U+00E3 (decimal 227) + defining Unicode char U+00E4 (decimal 228) + defining Unicode char U+00E5 (decimal 229) + defining Unicode char U+00E6 (decimal 230) + defining Unicode char U+00E7 (decimal 231) + defining Unicode char U+00E8 (decimal 232) + defining Unicode char U+00E9 (decimal 233) + defining Unicode char U+00EA (decimal 234) + defining Unicode char U+00EB (decimal 235) + defining Unicode char U+00EC (decimal 236) + defining Unicode char U+00ED (decimal 237) + defining Unicode char U+00EE (decimal 238) + defining Unicode char U+00EF (decimal 239) + defining Unicode char U+00F0 (decimal 240) + defining Unicode char U+00F1 (decimal 241) + defining Unicode char U+00F2 (decimal 242) + defining Unicode char U+00F3 (decimal 243) + defining Unicode char U+00F4 (decimal 244) + defining Unicode char U+00F5 (decimal 245) + defining Unicode char U+00F6 (decimal 246) + defining Unicode char U+00F8 (decimal 248) + defining Unicode char U+00F9 (decimal 249) + defining Unicode char U+00FA (decimal 250) + defining Unicode char U+00FB (decimal 251) + defining Unicode char U+00FC (decimal 252) + defining Unicode char U+00FD (decimal 253) + defining Unicode char U+00FE (decimal 254) + defining Unicode char U+00FF (decimal 255) + defining Unicode char U+0102 (decimal 258) + defining Unicode char U+0103 (decimal 259) + defining Unicode char U+0104 (decimal 260) + defining Unicode char U+0105 (decimal 261) + defining Unicode char U+0106 (decimal 262) + defining Unicode char U+0107 (decimal 263) + defining Unicode char U+010C (decimal 268) + defining Unicode char U+010D (decimal 269) + defining Unicode char U+010E (decimal 270) + defining Unicode char U+010F (decimal 271) + defining Unicode char U+0110 (decimal 272) + defining Unicode char U+0111 (decimal 273) + defining Unicode char U+0118 (decimal 280) + defining Unicode char U+0119 (decimal 281) + defining Unicode char U+011A (decimal 282) + defining Unicode char U+011B (decimal 283) + defining Unicode char U+011E (decimal 286) + defining Unicode char U+011F (decimal 287) + defining Unicode char U+0130 (decimal 304) + defining Unicode char U+0131 (decimal 305) + defining Unicode char U+0132 (decimal 306) + defining Unicode char U+0133 (decimal 307) + defining Unicode char U+0139 (decimal 313) + defining Unicode char U+013A (decimal 314) + defining Unicode char U+013D (decimal 317) + defining Unicode char U+013E (decimal 318) + defining Unicode char U+0141 (decimal 321) + defining Unicode char U+0142 (decimal 322) + defining Unicode char U+0143 (decimal 323) + defining Unicode char U+0144 (decimal 324) + defining Unicode char U+0147 (decimal 327) + defining Unicode char U+0148 (decimal 328) + defining Unicode char U+014A (decimal 330) + defining Unicode char U+014B (decimal 331) + defining Unicode char U+0150 (decimal 336) + defining Unicode char U+0151 (decimal 337) + defining Unicode char U+0152 (decimal 338) + defining Unicode char U+0153 (decimal 339) + defining Unicode char U+0154 (decimal 340) + defining Unicode char U+0155 (decimal 341) + defining Unicode char U+0158 (decimal 344) + defining Unicode char U+0159 (decimal 345) + defining Unicode char U+015A (decimal 346) + defining Unicode char U+015B (decimal 347) + defining Unicode char U+015E (decimal 350) + defining Unicode char U+015F (decimal 351) + defining Unicode char U+0160 (decimal 352) + defining Unicode char U+0161 (decimal 353) + defining Unicode char U+0162 (decimal 354) + defining Unicode char U+0163 (decimal 355) + defining Unicode char U+0164 (decimal 356) + defining Unicode char U+0165 (decimal 357) + defining Unicode char U+016E (decimal 366) + defining Unicode char U+016F (decimal 367) + defining Unicode char U+0170 (decimal 368) + defining Unicode char U+0171 (decimal 369) + defining Unicode char U+0178 (decimal 376) + defining Unicode char U+0179 (decimal 377) + defining Unicode char U+017A (decimal 378) + defining Unicode char U+017B (decimal 379) + defining Unicode char U+017C (decimal 380) + defining Unicode char U+017D (decimal 381) + defining Unicode char U+017E (decimal 382) + defining Unicode char U+200C (decimal 8204) + defining Unicode char U+2013 (decimal 8211) + defining Unicode char U+2014 (decimal 8212) + defining Unicode char U+2018 (decimal 8216) + defining Unicode char U+2019 (decimal 8217) + defining Unicode char U+201A (decimal 8218) + defining Unicode char U+201C (decimal 8220) + defining Unicode char U+201D (decimal 8221) + defining Unicode char U+201E (decimal 8222) + defining Unicode char U+2030 (decimal 8240) + defining Unicode char U+2031 (decimal 8241) + defining Unicode char U+2039 (decimal 8249) + defining Unicode char U+203A (decimal 8250) + defining Unicode char U+2423 (decimal 9251) +) +Now handling font encoding OT1 ... +... processing UTF-8 mapping file for font encoding OT1 + (/usr/share/texlive/texmf-dist/tex/latex/base/ot1enc.dfu +File: ot1enc.dfu 2014/09/29 v1.1m UTF-8 support for inputenc + defining Unicode char U+00A1 (decimal 161) + defining Unicode char U+00A3 (decimal 163) + defining Unicode char U+00B8 (decimal 184) + defining Unicode char U+00BF (decimal 191) + defining Unicode char U+00C5 (decimal 197) + defining Unicode char U+00C6 (decimal 198) + defining Unicode char U+00D8 (decimal 216) + defining Unicode char U+00DF (decimal 223) + defining Unicode char U+00E6 (decimal 230) + defining Unicode char U+00EC (decimal 236) + defining Unicode char U+00ED (decimal 237) + defining Unicode char U+00EE (decimal 238) + defining Unicode char U+00EF (decimal 239) + defining Unicode char U+00F8 (decimal 248) + defining Unicode char U+0131 (decimal 305) + defining Unicode char U+0141 (decimal 321) + defining Unicode char U+0142 (decimal 322) + defining Unicode char U+0152 (decimal 338) + defining Unicode char U+0153 (decimal 339) + defining Unicode char U+2013 (decimal 8211) + defining Unicode char U+2014 (decimal 8212) + defining Unicode char U+2018 (decimal 8216) + defining Unicode char U+2019 (decimal 8217) + defining Unicode char U+201C (decimal 8220) + defining Unicode char U+201D (decimal 8221) +) +Now handling font encoding OMS ... +... processing UTF-8 mapping file for font encoding OMS + (/usr/share/texlive/texmf-dist/tex/latex/base/omsenc.dfu +File: omsenc.dfu 2014/09/29 v1.1m UTF-8 support for inputenc + defining Unicode char U+00A7 (decimal 167) + defining Unicode char U+00B6 (decimal 182) + defining Unicode char U+00B7 (decimal 183) + defining Unicode char U+2020 (decimal 8224) + defining Unicode char U+2021 (decimal 8225) + defining Unicode char U+2022 (decimal 8226) +) +Now handling font encoding OMX ... +... no UTF-8 mapping file for font encoding OMX +Now handling font encoding U ... +... no UTF-8 mapping file for font encoding U + defining Unicode char U+00A9 (decimal 169) + defining Unicode char U+00AA (decimal 170) + defining Unicode char U+00AE (decimal 174) + defining Unicode char U+00BA (decimal 186) + defining Unicode char U+02C6 (decimal 710) + defining Unicode char U+02DC (decimal 732) + defining Unicode char U+200C (decimal 8204) + defining Unicode char U+2026 (decimal 8230) + defining Unicode char U+2122 (decimal 8482) + defining Unicode char U+2423 (decimal 9251) +)) (/usr/share/texlive/texmf-dist/tex/latex/base/fontenc.sty +Package: fontenc 2005/09/27 v1.99g Standard LaTeX package + (/usr/share/texlive/texmf-dist/tex/latex/base/t1enc.def +File: t1enc.def 2005/09/27 v1.99g Standard LaTeX file +LaTeX Font Info: Redeclaring font encoding T1 on input line 48. +)) (/usr/share/texmf/tex/latex/lm/lmodern.sty +Package: lmodern 2009/10/30 v1.6 Latin Modern Fonts +LaTeX Font Info: Overwriting symbol font `operators' in version `normal' +(Font) OT1/cmr/m/n --> OT1/lmr/m/n on input line 22. +LaTeX Font Info: Overwriting symbol font `letters' in version `normal' +(Font) OML/cmm/m/it --> OML/lmm/m/it on input line 23. +LaTeX Font Info: Overwriting symbol font `symbols' in version `normal' +(Font) OMS/cmsy/m/n --> OMS/lmsy/m/n on input line 24. +LaTeX Font Info: Overwriting symbol font `largesymbols' in version `normal' +(Font) OMX/cmex/m/n --> OMX/lmex/m/n on input line 25. +LaTeX Font Info: Overwriting symbol font `operators' in version `bold' +(Font) OT1/cmr/bx/n --> OT1/lmr/bx/n on input line 26. +LaTeX Font Info: Overwriting symbol font `letters' in version `bold' +(Font) OML/cmm/b/it --> OML/lmm/b/it on input line 27. +LaTeX Font Info: Overwriting symbol font `symbols' in version `bold' +(Font) OMS/cmsy/b/n --> OMS/lmsy/b/n on input line 28. +LaTeX Font Info: Overwriting symbol font `largesymbols' in version `bold' +(Font) OMX/cmex/m/n --> OMX/lmex/m/n on input line 29. +LaTeX Font Info: Overwriting math alphabet `\mathbf' in version `normal' +(Font) OT1/cmr/bx/n --> OT1/lmr/bx/n on input line 31. +LaTeX Font Info: Overwriting math alphabet `\mathsf' in version `normal' +(Font) OT1/cmss/m/n --> OT1/lmss/m/n on input line 32. +LaTeX Font Info: Overwriting math alphabet `\mathit' in version `normal' +(Font) OT1/cmr/m/it --> OT1/lmr/m/it on input line 33. +LaTeX Font Info: Overwriting math alphabet `\mathtt' in version `normal' +(Font) OT1/cmtt/m/n --> OT1/lmtt/m/n on input line 34. +LaTeX Font Info: Overwriting math alphabet `\mathbf' in version `bold' +(Font) OT1/cmr/bx/n --> OT1/lmr/bx/n on input line 35. +LaTeX Font Info: Overwriting math alphabet `\mathsf' in version `bold' +(Font) OT1/cmss/bx/n --> OT1/lmss/bx/n on input line 36. +LaTeX Font Info: Overwriting math alphabet `\mathit' in version `bold' +(Font) OT1/cmr/bx/it --> OT1/lmr/bx/it on input line 37. +LaTeX Font Info: Overwriting math alphabet `\mathtt' in version `bold' +(Font) OT1/cmtt/m/n --> OT1/lmtt/m/n on input line 38. +) (/usr/share/texlive/texmf-dist/tex/generic/babel/babel.sty +Package: babel 2014/09/25 3.9l The Babel package + (/usr/share/texlive/texmf-dist/tex/generic/babel-french/frenchb.ldf +Language: frenchb 2015/06/26 v3.1g French support from the babel system + (/usr/share/texlive/texmf-dist/tex/generic/babel/babel.def +File: babel.def 2014/09/25 3.9l Babel common definitions +\babel@savecnt=\count88 +\U@D=\dimen103 +) +\l@acadian = a dialect from \language\l@french +\l@canadien = a dialect from \language\l@french +\FBcolonskip=\skip43 +\FBthinskip=\skip44 +\FB@interchartokenstateORI=\count89 +Package babel Info: Making : an active character on input line 353. +Package babel Info: Making ; an active character on input line 354. +Package babel Info: Making ! an active character on input line 355. +Package babel Info: Making ? an active character on input line 356. +\FBguillskip=\skip45 +\FBguill@level=\count90 +\FB@Mht=\dimen104 +\std@mcc=\count91 +\dec@mcc=\count92 +\listindentFB=\skip46 +\labelwidthFB=\skip47 +\leftmarginFB=\skip48 +\parindentFFN=\dimen105 +)) (/usr/share/texlive/texmf-dist/tex/latex/carlisle/scalefnt.sty) (/usr/share/texlive/texmf-dist/tex/latex/graphics/keyval.sty +Package: keyval 2014/10/28 v1.15 key=value parser (DPC) +\KV@toks@=\toks16 +) (/usr/share/texlive/texmf-dist/tex/latex/hyperref/hyperref.sty +Package: hyperref 2012/11/06 v6.83m Hypertext links for LaTeX + (/usr/share/texlive/texmf-dist/tex/generic/oberdiek/hobsub-hyperref.sty +Package: hobsub-hyperref 2012/05/28 v1.13 Bundle oberdiek, subset hyperref (HO) + +(/usr/share/texlive/texmf-dist/tex/generic/oberdiek/hobsub-generic.sty +Package: hobsub-generic 2012/05/28 v1.13 Bundle oberdiek, subset generic (HO) +Package: hobsub 2012/05/28 v1.13 Construct package bundles (HO) +Package: infwarerr 2010/04/08 v1.3 Providing info/warning/error messages (HO) +Package: ltxcmds 2011/11/09 v1.22 LaTeX kernel commands for general use (HO) +Package: ifluatex 2010/03/01 v1.3 Provides the ifluatex switch (HO) +Package ifluatex Info: LuaTeX not detected. +Package: ifvtex 2010/03/01 v1.5 Detect VTeX and its facilities (HO) +Package ifvtex Info: VTeX not detected. +Package: intcalc 2007/09/27 v1.1 Expandable calculations with integers (HO) +Package: ifpdf 2011/01/30 v2.3 Provides the ifpdf switch (HO) +Package ifpdf Info: pdfTeX in PDF mode is detected. +Package: etexcmds 2011/02/16 v1.5 Avoid name clashes with e-TeX commands (HO) +Package etexcmds Info: Could not find \expanded. +(etexcmds) That can mean that you are not using pdfTeX 1.50 or +(etexcmds) that some package has redefined \expanded. +(etexcmds) In the latter case, load this package earlier. +Package: kvsetkeys 2012/04/25 v1.16 Key value parser (HO) +Package: kvdefinekeys 2011/04/07 v1.3 Define keys (HO) +Package: pdftexcmds 2011/11/29 v0.20 Utility functions of pdfTeX for LuaTeX (HO) +Package pdftexcmds Info: LuaTeX not detected. +Package pdftexcmds Info: \pdf@primitive is available. +Package pdftexcmds Info: \pdf@ifprimitive is available. +Package pdftexcmds Info: \pdfdraftmode found. +Package: pdfescape 2011/11/25 v1.13 Implements pdfTeX's escape features (HO) +Package: bigintcalc 2012/04/08 v1.3 Expandable calculations on big integers (HO) +Package: bitset 2011/01/30 v1.1 Handle bit-vector datatype (HO) +Package: uniquecounter 2011/01/30 v1.2 Provide unlimited unique counter (HO) +) +Package hobsub Info: Skipping package `hobsub' (already loaded). +Package: letltxmacro 2010/09/02 v1.4 Let assignment for LaTeX macros (HO) +Package: hopatch 2012/05/28 v1.2 Wrapper for package hooks (HO) +Package: xcolor-patch 2011/01/30 xcolor patch +Package: atveryend 2011/06/30 v1.8 Hooks at the very end of document (HO) +Package atveryend Info: \enddocument detected (standard20110627). +Package: atbegshi 2011/10/05 v1.16 At begin shipout hook (HO) +Package: refcount 2011/10/16 v3.4 Data extraction from label references (HO) +Package: hycolor 2011/01/30 v1.7 Color options for hyperref/bookmark (HO) +) (/usr/share/texlive/texmf-dist/tex/generic/ifxetex/ifxetex.sty +Package: ifxetex 2010/09/12 v0.6 Provides ifxetex conditional +) (/usr/share/texlive/texmf-dist/tex/latex/oberdiek/auxhook.sty +Package: auxhook 2011/03/04 v1.3 Hooks for auxiliary files (HO) +) (/usr/share/texlive/texmf-dist/tex/latex/oberdiek/kvoptions.sty +Package: kvoptions 2011/06/30 v3.11 Key value format for package options (HO) +) +\@linkdim=\dimen106 +\Hy@linkcounter=\count93 +\Hy@pagecounter=\count94 + (/usr/share/texlive/texmf-dist/tex/latex/hyperref/pd1enc.def +File: pd1enc.def 2012/11/06 v6.83m Hyperref: PDFDocEncoding definition (HO) +Now handling font encoding PD1 ... +... no UTF-8 mapping file for font encoding PD1 +) +\Hy@SavedSpaceFactor=\count95 + (/usr/share/texlive/texmf-dist/tex/latex/latexconfig/hyperref.cfg +File: hyperref.cfg 2002/06/06 v1.2 hyperref configuration of TeXLive +) +Package hyperref Info: Hyper figures OFF on input line 4443. +Package hyperref Info: Link nesting OFF on input line 4448. +Package hyperref Info: Hyper index ON on input line 4451. +Package hyperref Info: Plain pages OFF on input line 4458. +Package hyperref Info: Backreferencing OFF on input line 4463. +Package hyperref Info: Implicit mode ON; LaTeX internals redefined. +Package hyperref Info: Bookmarks ON on input line 4688. +\c@Hy@tempcnt=\count96 + (/usr/share/texlive/texmf-dist/tex/latex/url/url.sty +\Urlmuskip=\muskip10 +Package: url 2013/09/16 ver 3.4 Verb mode for urls, etc. +) +LaTeX Info: Redefining \url on input line 5041. +\XeTeXLinkMargin=\dimen107 +\Fld@menulength=\count97 +\Field@Width=\dimen108 +\Fld@charsize=\dimen109 +Package hyperref Info: Hyper figures OFF on input line 6295. +Package hyperref Info: Link nesting OFF on input line 6300. +Package hyperref Info: Hyper index ON on input line 6303. +Package hyperref Info: backreferencing OFF on input line 6310. +Package hyperref Info: Link coloring OFF on input line 6315. +Package hyperref Info: Link coloring with OCG OFF on input line 6320. +Package hyperref Info: PDF/A mode OFF on input line 6325. +LaTeX Info: Redefining \ref on input line 6365. +LaTeX Info: Redefining \pageref on input line 6369. +\Hy@abspage=\count98 +\c@Item=\count99 +\c@Hfootnote=\count100 +) + +Package hyperref Message: Driver (autodetected): hpdftex. + +(/usr/share/texlive/texmf-dist/tex/latex/hyperref/hpdftex.def +File: hpdftex.def 2012/11/06 v6.83m Hyperref driver for pdfTeX +\Fld@listcount=\count101 +\c@bookmark@seq@number=\count102 + (/usr/share/texlive/texmf-dist/tex/latex/oberdiek/rerunfilecheck.sty +Package: rerunfilecheck 2011/04/15 v1.7 Rerun checks for auxiliary files (HO) +Package uniquecounter Info: New unique counter `rerunfilecheck' on input line 282. +) +\Hy@SectionHShift=\skip49 +) (/usr/share/texlive/texmf-dist/tex/latex/wrapfig/wrapfig.sty +\wrapoverhang=\dimen110 +\WF@size=\dimen111 +\c@WF@wrappedlines=\count103 +\WF@box=\box26 +\WF@everypar=\toks17 +Package: wrapfig 2003/01/31 v 3.6 +) (/usr/share/texlive/texmf-dist/tex/latex/pgf/frontendlayer/tikz.sty (/usr/share/texlive/texmf-dist/tex/latex/pgf/basiclayer/pgf.sty (/usr/share/texlive/texmf-dist/tex/latex/pgf/utilities/pgfrcs.sty (/usr/share/texlive/texmf-dist/tex/generic/pgf/utilities/pgfutil-common.tex +\pgfutil@everybye=\toks18 +\pgfutil@tempdima=\dimen112 +\pgfutil@tempdimb=\dimen113 + (/usr/share/texlive/texmf-dist/tex/generic/pgf/utilities/pgfutil-common-lists.tex)) (/usr/share/texlive/texmf-dist/tex/generic/pgf/utilities/pgfutil-latex.def +\pgfutil@abb=\box27 + (/usr/share/texlive/texmf-dist/tex/latex/ms/everyshi.sty +Package: everyshi 2001/05/15 v3.00 EveryShipout Package (MS) +)) (/usr/share/texlive/texmf-dist/tex/generic/pgf/utilities/pgfrcs.code.tex +Package: pgfrcs 2013/12/20 v3.0.0 (rcs-revision 1.28) +)) +Package: pgf 2013/12/18 v3.0.0 (rcs-revision 1.14) + (/usr/share/texlive/texmf-dist/tex/latex/pgf/basiclayer/pgfcore.sty (/usr/share/texlive/texmf-dist/tex/latex/graphics/graphicx.sty +Package: graphicx 2014/10/28 v1.0g Enhanced LaTeX Graphics (DPC,SPQR) + (/usr/share/texlive/texmf-dist/tex/latex/graphics/graphics.sty +Package: graphics 2014/10/28 v1.0p Standard LaTeX Graphics (DPC,SPQR) + +(/usr/share/texlive/texmf-dist/tex/latex/graphics/trig.sty +Package: trig 1999/03/16 v1.09 sin cos tan (DPC) +) (/usr/share/texlive/texmf-dist/tex/latex/latexconfig/graphics.cfg +File: graphics.cfg 2010/04/23 v1.9 graphics configuration of TeX Live +) +Package graphics Info: Driver file: pdftex.def on input line 94. + (/usr/share/texlive/texmf-dist/tex/latex/pdftex-def/pdftex.def +File: pdftex.def 2011/05/27 v0.06d Graphics/color for pdfTeX +\Gread@gobject=\count104 +)) +\Gin@req@height=\dimen114 +\Gin@req@width=\dimen115 +) (/usr/share/texlive/texmf-dist/tex/latex/pgf/systemlayer/pgfsys.sty (/usr/share/texlive/texmf-dist/tex/generic/pgf/systemlayer/pgfsys.code.tex +Package: pgfsys 2013/11/30 v3.0.0 (rcs-revision 1.47) + (/usr/share/texlive/texmf-dist/tex/generic/pgf/utilities/pgfkeys.code.tex +\pgfkeys@pathtoks=\toks19 +\pgfkeys@temptoks=\toks20 + (/usr/share/texlive/texmf-dist/tex/generic/pgf/utilities/pgfkeysfiltered.code.tex +\pgfkeys@tmptoks=\toks21 +)) +\pgf@x=\dimen116 +\pgf@y=\dimen117 +\pgf@xa=\dimen118 +\pgf@ya=\dimen119 +\pgf@xb=\dimen120 +\pgf@yb=\dimen121 +\pgf@xc=\dimen122 +\pgf@yc=\dimen123 +\w@pgf@writea=\write3 +\r@pgf@reada=\read1 +\c@pgf@counta=\count105 +\c@pgf@countb=\count106 +\c@pgf@countc=\count107 +\c@pgf@countd=\count108 +\t@pgf@toka=\toks22 +\t@pgf@tokb=\toks23 +\t@pgf@tokc=\toks24 + (/usr/share/texlive/texmf-dist/tex/generic/pgf/systemlayer/pgf.cfg +File: pgf.cfg 2008/05/14 (rcs-revision 1.7) +) +Driver file for pgf: pgfsys-pdftex.def + (/usr/share/texlive/texmf-dist/tex/generic/pgf/systemlayer/pgfsys-pdftex.def +File: pgfsys-pdftex.def 2013/07/18 (rcs-revision 1.33) + (/usr/share/texlive/texmf-dist/tex/generic/pgf/systemlayer/pgfsys-common-pdf.def +File: pgfsys-common-pdf.def 2013/10/10 (rcs-revision 1.13) +))) (/usr/share/texlive/texmf-dist/tex/generic/pgf/systemlayer/pgfsyssoftpath.code.tex +File: pgfsyssoftpath.code.tex 2013/09/09 (rcs-revision 1.9) +\pgfsyssoftpath@smallbuffer@items=\count109 +\pgfsyssoftpath@bigbuffer@items=\count110 +) (/usr/share/texlive/texmf-dist/tex/generic/pgf/systemlayer/pgfsysprotocol.code.tex +File: pgfsysprotocol.code.tex 2006/10/16 (rcs-revision 1.4) +)) (/usr/share/texlive/texmf-dist/tex/latex/xcolor/xcolor.sty +Package: xcolor 2007/01/21 v2.11 LaTeX color extensions (UK) + +(/usr/share/texlive/texmf-dist/tex/latex/latexconfig/color.cfg +File: color.cfg 2007/01/18 v1.5 color configuration of teTeX/TeXLive +) +Package xcolor Info: Driver file: pdftex.def on input line 225. +Package xcolor Info: Model `cmy' substituted by `cmy0' on input line 1337. +Package xcolor Info: Model `hsb' substituted by `rgb' on input line 1341. +Package xcolor Info: Model `RGB' extended on input line 1353. +Package xcolor Info: Model `HTML' substituted by `rgb' on input line 1355. +Package xcolor Info: Model `Hsb' substituted by `hsb' on input line 1356. +Package xcolor Info: Model `tHsb' substituted by `hsb' on input line 1357. +Package xcolor Info: Model `HSB' substituted by `hsb' on input line 1358. +Package xcolor Info: Model `Gray' substituted by `gray' on input line 1359. +Package xcolor Info: Model `wave' substituted by `hsb' on input line 1360. +) (/usr/share/texlive/texmf-dist/tex/generic/pgf/basiclayer/pgfcore.code.tex +Package: pgfcore 2010/04/11 v3.0.0 (rcs-revision 1.7) + (/usr/share/texlive/texmf-dist/tex/generic/pgf/math/pgfmath.code.tex (/usr/share/texlive/texmf-dist/tex/generic/pgf/math/pgfmathcalc.code.tex (/usr/share/texlive/texmf-dist/tex/generic/pgf/math/pgfmathutil.code.tex) (/usr/share/texlive/texmf-dist/tex/generic/pgf/math/pgfmathparser.code.tex +\pgfmath@dimen=\dimen124 +\pgfmath@count=\count111 +\pgfmath@box=\box28 +\pgfmath@toks=\toks25 +\pgfmath@stack@operand=\toks26 +\pgfmath@stack@operation=\toks27 +) (/usr/share/texlive/texmf-dist/tex/generic/pgf/math/pgfmathfunctions.code.tex (/usr/share/texlive/texmf-dist/tex/generic/pgf/math/pgfmathfunctions.basic.code.tex) (/usr/share/texlive/texmf-dist/tex/generic/pgf/math/pgfmathfunctions.trigonometric.code.tex) (/usr/share/texlive/texmf-dist/tex/generic/pgf/math/pgfmathfunctions.random.code.tex) (/usr/share/texlive/texmf-dist/tex/generic/pgf/math/pgfmathfunctions.comparison.code.tex) (/usr/share/texlive/texmf-dist/tex/generic/pgf/math/pgfmathfunctions.base.code.tex) +(/usr/share/texlive/texmf-dist/tex/generic/pgf/math/pgfmathfunctions.round.code.tex) (/usr/share/texlive/texmf-dist/tex/generic/pgf/math/pgfmathfunctions.misc.code.tex) (/usr/share/texlive/texmf-dist/tex/generic/pgf/math/pgfmathfunctions.integerarithmetics.code.tex))) (/usr/share/texlive/texmf-dist/tex/generic/pgf/math/pgfmathfloat.code.tex +\c@pgfmathroundto@lastzeros=\count112 +)) (/usr/share/texlive/texmf-dist/tex/generic/pgf/basiclayer/pgfcorepoints.code.tex +File: pgfcorepoints.code.tex 2013/10/07 (rcs-revision 1.27) +\pgf@picminx=\dimen125 +\pgf@picmaxx=\dimen126 +\pgf@picminy=\dimen127 +\pgf@picmaxy=\dimen128 +\pgf@pathminx=\dimen129 +\pgf@pathmaxx=\dimen130 +\pgf@pathminy=\dimen131 +\pgf@pathmaxy=\dimen132 +\pgf@xx=\dimen133 +\pgf@xy=\dimen134 +\pgf@yx=\dimen135 +\pgf@yy=\dimen136 +\pgf@zx=\dimen137 +\pgf@zy=\dimen138 +) (/usr/share/texlive/texmf-dist/tex/generic/pgf/basiclayer/pgfcorepathconstruct.code.tex +File: pgfcorepathconstruct.code.tex 2013/10/07 (rcs-revision 1.29) +\pgf@path@lastx=\dimen139 +\pgf@path@lasty=\dimen140 +) (/usr/share/texlive/texmf-dist/tex/generic/pgf/basiclayer/pgfcorepathusage.code.tex +File: pgfcorepathusage.code.tex 2013/12/13 (rcs-revision 1.23) +\pgf@shorten@end@additional=\dimen141 +\pgf@shorten@start@additional=\dimen142 +) (/usr/share/texlive/texmf-dist/tex/generic/pgf/basiclayer/pgfcorescopes.code.tex +File: pgfcorescopes.code.tex 2013/10/09 (rcs-revision 1.44) +\pgfpic=\box29 +\pgf@hbox=\box30 +\pgf@layerbox@main=\box31 +\pgf@picture@serial@count=\count113 +) (/usr/share/texlive/texmf-dist/tex/generic/pgf/basiclayer/pgfcoregraphicstate.code.tex +File: pgfcoregraphicstate.code.tex 2013/09/19 (rcs-revision 1.11) +\pgflinewidth=\dimen143 +) (/usr/share/texlive/texmf-dist/tex/generic/pgf/basiclayer/pgfcoretransformations.code.tex +File: pgfcoretransformations.code.tex 2013/10/10 (rcs-revision 1.17) +\pgf@pt@x=\dimen144 +\pgf@pt@y=\dimen145 +\pgf@pt@temp=\dimen146 +) (/usr/share/texlive/texmf-dist/tex/generic/pgf/basiclayer/pgfcorequick.code.tex +File: pgfcorequick.code.tex 2008/10/09 (rcs-revision 1.3) +) +(/usr/share/texlive/texmf-dist/tex/generic/pgf/basiclayer/pgfcoreobjects.code.tex +File: pgfcoreobjects.code.tex 2006/10/11 (rcs-revision 1.2) +) (/usr/share/texlive/texmf-dist/tex/generic/pgf/basiclayer/pgfcorepathprocessing.code.tex +File: pgfcorepathprocessing.code.tex 2013/09/09 (rcs-revision 1.9) +) (/usr/share/texlive/texmf-dist/tex/generic/pgf/basiclayer/pgfcorearrows.code.tex +File: pgfcorearrows.code.tex 2013/11/07 (rcs-revision 1.40) +\pgfarrowsep=\dimen147 +) (/usr/share/texlive/texmf-dist/tex/generic/pgf/basiclayer/pgfcoreshade.code.tex +File: pgfcoreshade.code.tex 2013/07/15 (rcs-revision 1.15) +\pgf@max=\dimen148 +\pgf@sys@shading@range@num=\count114 +) (/usr/share/texlive/texmf-dist/tex/generic/pgf/basiclayer/pgfcoreimage.code.tex +File: pgfcoreimage.code.tex 2013/07/15 (rcs-revision 1.18) + (/usr/share/texlive/texmf-dist/tex/generic/pgf/basiclayer/pgfcoreexternal.code.tex +File: pgfcoreexternal.code.tex 2013/07/15 (rcs-revision 1.20) +\pgfexternal@startupbox=\box32 +)) (/usr/share/texlive/texmf-dist/tex/generic/pgf/basiclayer/pgfcorelayers.code.tex +File: pgfcorelayers.code.tex 2013/07/18 (rcs-revision 1.7) +) (/usr/share/texlive/texmf-dist/tex/generic/pgf/basiclayer/pgfcoretransparency.code.tex +File: pgfcoretransparency.code.tex 2013/09/30 (rcs-revision 1.5) +) (/usr/share/texlive/texmf-dist/tex/generic/pgf/basiclayer/pgfcorepatterns.code.tex +File: pgfcorepatterns.code.tex 2013/11/07 (rcs-revision 1.5) +))) (/usr/share/texlive/texmf-dist/tex/generic/pgf/modules/pgfmoduleshapes.code.tex +File: pgfmoduleshapes.code.tex 2013/10/31 (rcs-revision 1.34) +\pgfnodeparttextbox=\box33 +) (/usr/share/texlive/texmf-dist/tex/generic/pgf/modules/pgfmoduleplot.code.tex +File: pgfmoduleplot.code.tex 2013/07/31 (rcs-revision 1.12) +) (/usr/share/texlive/texmf-dist/tex/latex/pgf/compatibility/pgfcomp-version-0-65.sty +Package: pgfcomp-version-0-65 2007/07/03 v3.0.0 (rcs-revision 1.7) +\pgf@nodesepstart=\dimen149 +\pgf@nodesepend=\dimen150 +) (/usr/share/texlive/texmf-dist/tex/latex/pgf/compatibility/pgfcomp-version-1-18.sty +Package: pgfcomp-version-1-18 2007/07/23 v3.0.0 (rcs-revision 1.1) +)) (/usr/share/texlive/texmf-dist/tex/latex/pgf/utilities/pgffor.sty (/usr/share/texlive/texmf-dist/tex/latex/pgf/utilities/pgfkeys.sty (/usr/share/texlive/texmf-dist/tex/generic/pgf/utilities/pgfkeys.code.tex)) (/usr/share/texlive/texmf-dist/tex/latex/pgf/math/pgfmath.sty (/usr/share/texlive/texmf-dist/tex/generic/pgf/math/pgfmath.code.tex)) (/usr/share/texlive/texmf-dist/tex/generic/pgf/utilities/pgffor.code.tex +Package: pgffor 2013/12/13 v3.0.0 (rcs-revision 1.25) + (/usr/share/texlive/texmf-dist/tex/generic/pgf/math/pgfmath.code.tex) +\pgffor@iter=\dimen151 +\pgffor@skip=\dimen152 +\pgffor@stack=\toks28 +\pgffor@toks=\toks29 +)) (/usr/share/texlive/texmf-dist/tex/generic/pgf/frontendlayer/tikz/tikz.code.tex +Package: tikz 2013/12/13 v3.0.0 (rcs-revision 1.142) + (/usr/share/texlive/texmf-dist/tex/generic/pgf/libraries/pgflibraryplothandlers.code.tex +File: pgflibraryplothandlers.code.tex 2013/08/31 v3.0.0 (rcs-revision 1.20) +\pgf@plot@mark@count=\count115 +\pgfplotmarksize=\dimen153 +) +\tikz@lastx=\dimen154 +\tikz@lasty=\dimen155 +\tikz@lastxsaved=\dimen156 +\tikz@lastysaved=\dimen157 +\tikzleveldistance=\dimen158 +\tikzsiblingdistance=\dimen159 +\tikz@figbox=\box34 +\tikz@figbox@bg=\box35 +\tikz@tempbox=\box36 +\tikz@tempbox@bg=\box37 +\tikztreelevel=\count116 +\tikznumberofchildren=\count117 +\tikznumberofcurrentchild=\count118 +\tikz@fig@count=\count119 + (/usr/share/texlive/texmf-dist/tex/generic/pgf/modules/pgfmodulematrix.code.tex +File: pgfmodulematrix.code.tex 2013/09/17 (rcs-revision 1.8) +\pgfmatrixcurrentrow=\count120 +\pgfmatrixcurrentcolumn=\count121 +\pgf@matrix@numberofcolumns=\count122 +) +\tikz@expandcount=\count123 + (/usr/share/texlive/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarytopaths.code.tex +File: tikzlibrarytopaths.code.tex 2008/06/17 v3.0.0 (rcs-revision 1.2) +))) +(/usr/share/texlive/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrary3d.code.tex +File: tikzlibrary3d.code.tex 2013/07/17 v3.0.0 (rcs-revision 1.2) +) (/home/matteo/texmf/tex/latex/gantt/gantt.sty +Package: gantt 2011/03/20 Some macros for drawing gantt diagrams using tkiz v.1.3 + (/usr/share/texlive/texmf-dist/tex/latex/xkeyval/xkeyval.sty +Package: xkeyval 2014/12/03 v2.7a package option processing (HA) + (/usr/share/texlive/texmf-dist/tex/generic/xkeyval/xkeyval.tex (/usr/share/texlive/texmf-dist/tex/generic/xkeyval/xkvutils.tex +\XKV@toks=\toks30 +\XKV@tempa@toks=\toks31 +) +\XKV@depth=\count124 +File: xkeyval.tex 2014/12/03 v2.7a key=value parser (HA) +)) (/usr/share/texlive/texmf-dist/tex/latex/base/ifthen.sty +Package: ifthen 2014/09/29 v1.1c Standard LaTeX ifthen package (DPC) +) (/usr/share/texlive/texmf-dist/tex/latex/tools/calc.sty +Package: calc 2014/10/28 v4.3 Infix arithmetic (KKT,FJ) +\calc@Acount=\count125 +\calc@Bcount=\count126 +\calc@Adimen=\dimen160 +\calc@Bdimen=\dimen161 +\calc@Askip=\skip50 +\calc@Bskip=\skip51 +LaTeX Info: Redefining \setlength on input line 80. +LaTeX Info: Redefining \addtolength on input line 81. +\calc@Ccount=\count127 +\calc@Cskip=\skip52 +) (/usr/share/texlive/texmf-dist/tex/latex/forloop/forloop.sty +Package: forloop 2006/09/18 v3.0 For Loops for LaTeX +) (/usr/share/texlive/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarypatterns.code.tex +File: tikzlibrarypatterns.code.tex 2008/01/15 v3.0.0 (rcs-revision 1.2) + (/usr/share/texlive/texmf-dist/tex/generic/pgf/libraries/pgflibrarypatterns.code.tex +File: pgflibrarypatterns.code.tex 2008/03/03 v3.0.0 (rcs-revision 1.13) +)) (/usr/share/texlive/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryarrows.code.tex +File: tikzlibraryarrows.code.tex 2008/01/09 v3.0.0 (rcs-revision 1.1) + (/usr/share/texlive/texmf-dist/tex/generic/pgf/libraries/pgflibraryarrows.code.tex +File: pgflibraryarrows.code.tex 2013/09/23 v3.0.0 (rcs-revision 1.16) +\arrowsize=\dimen162 +)) +\c@ganttnum=\count128 +\c@ganttwidth=\count129 +\ganttlastx=\skip53 +\nextganttlastx=\skip54 +\gantttmpa=\skip55 +\gantttmpb=\skip56 +\ganttunitlength=\skip57 +\titleunitlength=\skip58 +\c@gantttitlenum=\count130 +\pgf@layerbox@background=\box38 +\pgf@layerboxsaved@background=\box39 +\pgf@layerbox@foreground=\box40 +\pgf@layerboxsaved@foreground=\box41 +) (/home/matteo/texmf/tex/latex/tikz-uml/tikz-uml.sty +Package: tikz-uml 2011/01/26 + +(/usr/share/texlive/texmf-dist/tex/generic/xstring/xstring.sty (/usr/share/texlive/texmf-dist/tex/generic/xstring/xstring.tex +\@xs@message=\write4 +\integerpart=\count131 +\decimalpart=\count132 +) +Package: xstring 2013/10/13 v1.7c String manipulations (C Tellechea) +) (/usr/share/texlive/texmf-dist/tex/latex/pgfopts/pgfopts.sty +Package: pgfopts 2014/07/10 v2.1a LaTeX package options with pgfkeys +\pgfopts@list@add@a@toks=\toks32 +\pgfopts@list@add@b@toks=\toks33 +) (/usr/share/texlive/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarybackgrounds.code.tex +File: tikzlibrarybackgrounds.code.tex 2013/07/18 v3.0.0 (rcs-revision 1.3) +) (/usr/share/texlive/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryshapes.code.tex +File: tikzlibraryshapes.code.tex 2008/01/09 v3.0.0 (rcs-revision 1.1) + (/usr/share/texlive/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryshapes.geometric.code.tex +File: tikzlibraryshapes.geometric.code.tex 2008/01/09 v3.0.0 (rcs-revision 1.1) + (/usr/share/texlive/texmf-dist/tex/generic/pgf/libraries/shapes/pgflibraryshapes.geometric.code.tex +File: pgflibraryshapes.geometric.code.tex 2008/06/26 v3.0.0 (rcs-revision 1.1) +)) (/usr/share/texlive/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryshapes.misc.code.tex +File: tikzlibraryshapes.misc.code.tex 2008/01/09 v3.0.0 (rcs-revision 1.1) + (/usr/share/texlive/texmf-dist/tex/generic/pgf/libraries/shapes/pgflibraryshapes.misc.code.tex +File: pgflibraryshapes.misc.code.tex 2013/07/18 v3.0.0 (rcs-revision 1.5) +)) (/usr/share/texlive/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryshapes.symbols.code.tex +File: tikzlibraryshapes.symbols.code.tex 2008/01/09 v3.0.0 (rcs-revision 1.1) + +(/usr/share/texlive/texmf-dist/tex/generic/pgf/libraries/shapes/pgflibraryshapes.symbols.code.tex +File: pgflibraryshapes.symbols.code.tex 2013/09/11 v3.0.0 (rcs-revision 1.6) +)) (/usr/share/texlive/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryshapes.arrows.code.tex +File: tikzlibraryshapes.arrows.code.tex 2008/01/09 v3.0.0 (rcs-revision 1.1) + (/usr/share/texlive/texmf-dist/tex/generic/pgf/libraries/shapes/pgflibraryshapes.arrows.code.tex +File: pgflibraryshapes.arrows.code.tex 2008/06/26 v3.0.0 (rcs-revision 1.1) +)) (/usr/share/texlive/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryshapes.callouts.code.tex (/usr/share/texlive/texmf-dist/tex/generic/pgf/libraries/shapes/pgflibraryshapes.callouts.code.tex)) (/usr/share/texlive/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryshapes.multipart.code.tex +File: tikzlibraryshapes.multipart.code.tex 2008/01/09 v3.0.0 (rcs-revision 1.1) + (/usr/share/texlive/texmf-dist/tex/generic/pgf/libraries/shapes/pgflibraryshapes.multipart.code.tex +File: pgflibraryshapes.multipart.code.tex 2010/01/07 v3.0.0 (rcs-revision 1.2) +\pgfnodepartlowerbox=\box42 +\pgfnodeparttwobox=\box43 +\pgfnodepartthreebox=\box44 +\pgfnodepartfourbox=\box45 +\pgfnodeparttwentybox=\box46 +\pgfnodepartnineteenbox=\box47 +\pgfnodeparteighteenbox=\box48 +\pgfnodepartseventeenbox=\box49 +\pgfnodepartsixteenbox=\box50 +\pgfnodepartfifteenbox=\box51 +\pgfnodepartfourteenbox=\box52 +\pgfnodepartthirteenbox=\box53 +\pgfnodeparttwelvebox=\box54 +\pgfnodepartelevenbox=\box55 +\pgfnodeparttenbox=\box56 +\pgfnodepartninebox=\box57 +\pgfnodeparteightbox=\box58 +\pgfnodepartsevenbox=\box59 +\pgfnodepartsixbox=\box60 +\pgfnodepartfivebox=\box61 +))) (/usr/share/texlive/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryfit.code.tex +File: tikzlibraryfit.code.tex 2013/07/12 v3.0.0 (rcs-revision 1.5) +) (/usr/share/texlive/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryshadows.code.tex +File: tikzlibraryshadows.code.tex 2008/01/13 v3.0.0 (rcs-revision 1.3) + +(/usr/share/texlive/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryfadings.code.tex +File: tikzlibraryfadings.code.tex 2009/11/15 v3.0.0 (rcs-revision 1.2) + (/usr/share/texlive/texmf-dist/tex/generic/pgf/libraries/pgflibraryfadings.code.tex +File: pgflibraryfadings.code.tex 2008/02/07 v3.0.0 (rcs-revision 1.3) +))) (/usr/share/texlive/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarydecorations.markings.code.tex (/usr/share/texlive/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarydecorations.code.tex (/usr/share/texlive/texmf-dist/tex/generic/pgf/modules/pgfmoduledecorations.code.tex +\pgfdecoratedcompleteddistance=\dimen163 +\pgfdecoratedremainingdistance=\dimen164 +\pgfdecoratedinputsegmentcompleteddistance=\dimen165 +\pgfdecoratedinputsegmentremainingdistance=\dimen166 +\pgf@decorate@distancetomove=\dimen167 +\pgf@decorate@repeatstate=\count133 +\pgfdecorationsegmentamplitude=\dimen168 +\pgfdecorationsegmentlength=\dimen169 +) +\tikz@lib@dec@box=\box62 +) (/usr/share/texlive/texmf-dist/tex/generic/pgf/libraries/decorations/pgflibrarydecorations.markings.code.tex)) +\c@tikzumlPackageLayers=\count134 +\pgf@layerbox@package0=\box63 +\pgf@layerboxsaved@package0=\box64 +\pgf@layerbox@package1=\box65 +\pgf@layerboxsaved@package1=\box66 +\pgf@layerbox@package2=\box67 +\pgf@layerboxsaved@package2=\box68 +\pgf@layerbox@package3=\box69 +\pgf@layerboxsaved@package3=\box70 +\c@tikzumlFragmentLayers=\count135 +\pgf@layerbox@fragment0=\box71 +\pgf@layerboxsaved@fragment0=\box72 +\pgf@layerbox@fragment1=\box73 +\pgf@layerboxsaved@fragment1=\box74 +\pgf@layerbox@fragment2=\box75 +\pgf@layerboxsaved@fragment2=\box76 +\pgf@layerbox@fragment3=\box77 +\pgf@layerboxsaved@fragment3=\box78 +\c@tikzumlStateLayers=\count136 +\pgf@layerbox@state0=\box79 +\pgf@layerboxsaved@state0=\box80 +\pgf@layerbox@state1=\box81 +\pgf@layerboxsaved@state1=\box82 +\pgf@layerbox@state2=\box83 +\pgf@layerboxsaved@state2=\box84 +\pgf@layerbox@state3=\box85 +\pgf@layerboxsaved@state3=\box86 +\c@tikzumlComponentLayers=\count137 +\pgf@layerbox@component0=\box87 +\pgf@layerboxsaved@component0=\box88 +\pgf@layerbox@component1=\box89 +\pgf@layerboxsaved@component1=\box90 +\pgf@layerbox@component2=\box91 +\pgf@layerboxsaved@component2=\box92 +\pgf@layerbox@component3=\box93 +\pgf@layerboxsaved@component3=\box94 +\pgf@layerbox@lifelines=\box95 +\pgf@layerboxsaved@lifelines=\box96 +\pgf@layerbox@activity=\box97 +\pgf@layerboxsaved@activity=\box98 +\pgf@layerbox@connections=\box99 +\pgf@layerboxsaved@connections=\box100 +\c@tikzumlPackageClassNum=\count138 +\c@tikzumlPackageSubPackageNum=\count139 +\c@tikzumlRelationNum=\count140 +\c@tikzumlNoteNum=\count141 +\c@pos=\count142 +\c@posT=\count143 +\c@posStereo=\count144 +\c@tikzumlPackageLevel=\count145 +\c@tikzumlSystemUseCaseNum=\count146 +\c@tikzumlSystemLevel=\count147 +\c@tikzumlUseCaseNum=\count148 +\c@tikzumlActorNum=\count149 +\c@tikzumlStateJoinNum=\count150 +\c@tikzumlStateDecisionNum=\count151 +\c@tikzumlStateInitialNum=\count152 +\c@tikzumlStateFinalNum=\count153 +\c@tikzumlStateEnterNum=\count154 +\c@tikzumlStateExitNum=\count155 +\c@tikzumlStateEndNum=\count156 +\c@tikzumlStateHistoryNum=\count157 +\c@tikzumlStateDeepHistoryNum=\count158 +\c@tikzumlStateLevel=\count159 +\c@tikzumlStateSubStateNum=\count160 +\c@tikzumlStateText=\count161 +\c@tikzumlObjectNum=\count162 +\c@tikzumlCallLevel=\count163 +\c@tikzumlCallNum=\count164 +\c@tikzumlFragmentLevel=\count165 +\c@tikzumlFragmentLevelNum=\count166 +\c@tikzumlFragmentNum=\count167 +\c@tikzumlFragmentPartNum=\count168 +\c@tikzumlCallStartFragmentNum=\count169 +\c@tikzumlCallEndFragmentNum=\count170 +\tikzumlCall@xa=\skip59 +\tikzumlCall@xb=\skip60 +\c@tikzumlComponentLevel=\count171 +\c@tikzumlComponentSubComponentNum=\count172 +\c@tikzumlConnectorNum=\count173 +\tikzuml@AC@xa=\skip61 +\tikzuml@AC@ya=\skip62 +\tikzuml@AC@xb=\skip63 +\tikzuml@AC@yb=\skip64 +\tikzuml@AC@xi=\skip65 +\tikzuml@AC@yi=\skip66 +\tikzuml@AC@xic=\skip67 +\tikzuml@AC@yic=\skip68 +\tikzuml@AC@xio=\skip69 +\tikzuml@AC@yio=\skip70 +\tikzuml@AC@AB=\skip71 +\tikzuml@AC@lambda=\skip72 +\tikzuml@AC@xtrc=\skip73 +\tikzuml@AC@ytrc=\skip74 +\tikzuml@AC@xtlc=\skip75 +\tikzuml@AC@ytlc=\skip76 +\tikzuml@AC@xblc=\skip77 +\tikzuml@AC@yblc=\skip78 +\tikzuml@AC@xbrc=\skip79 +\tikzuml@AC@ybrc=\skip80 +\tikzuml@AC@middleArm=\skip81 +) (/usr/share/texlive/texmf-dist/tex/latex/xifthen/xifthen.sty +Package: xifthen 2009/04/17 v1.3 Extended ifthen features + (/usr/share/texlive/texmf-dist/tex/latex/etex-pkg/etex.sty +Package: etex 2015/03/02 v2.1 eTeX basic definition package (PEB,DPC) +\et@xins=\count174 +) (/usr/share/texlive/texmf-dist/tex/latex/ifmtarg/ifmtarg.sty +Package: ifmtarg 2009/09/02 v1.2a check for an empty argument +)) (/home/matteo/Développement/se205-1/rapport/rapport.aux (/home/matteo/Développement/se205-1/rapport/./parts/intro.aux) (/home/matteo/Développement/se205-1/rapport/./parts/life.aux) +(/home/matteo/Développement/se205-1/rapport/./parts/go.aux) (/home/matteo/Développement/se205-1/rapport/./parts/ptf.aux) (/home/matteo/Développement/se205-1/rapport/./parts/cmp.aux) (/home/matteo/Développement/se205-1/rapport/./parts/conclu.aux)) +\openout1 = `rapport.aux'. + +LaTeX Font Info: Checking defaults for OML/cmm/m/it on input line 31. +LaTeX Font Info: ... okay on input line 31. +LaTeX Font Info: Checking defaults for T1/cmr/m/n on input line 31. +LaTeX Font Info: ... okay on input line 31. +LaTeX Font Info: Checking defaults for OT1/cmr/m/n on input line 31. +LaTeX Font Info: ... okay on input line 31. +LaTeX Font Info: Checking defaults for OMS/cmsy/m/n on input line 31. +LaTeX Font Info: ... okay on input line 31. +LaTeX Font Info: Checking defaults for OMX/cmex/m/n on input line 31. +LaTeX Font Info: ... okay on input line 31. +LaTeX Font Info: Checking defaults for U/cmr/m/n on input line 31. +LaTeX Font Info: ... okay on input line 31. +LaTeX Font Info: Checking defaults for PD1/pdf/m/n on input line 31. +LaTeX Font Info: ... okay on input line 31. +LaTeX Font Info: Try loading font information for T1+lmr on input line 31. + (/usr/share/texmf/tex/latex/lm/t1lmr.fd +File: t1lmr.fd 2009/10/30 v1.6 Font defs for Latin Modern +) +LaTeX Info: Redefining \degres on input line 31. +LaTeX Info: Redefining \dots on input line 31. +LaTeX Info: Redefining \up on input line 31. +\AtBeginShipoutBox=\box101 +Package hyperref Info: Link coloring OFF on input line 31. + (/usr/share/texlive/texmf-dist/tex/latex/hyperref/nameref.sty +Package: nameref 2012/10/27 v2.43 Cross-referencing by name of section + (/usr/share/texlive/texmf-dist/tex/generic/oberdiek/gettitlestring.sty +Package: gettitlestring 2010/12/03 v1.4 Cleanup title references (HO) +) +\c@section@level=\count175 +) +LaTeX Info: Redefining \ref on input line 31. +LaTeX Info: Redefining \pageref on input line 31. +LaTeX Info: Redefining \nameref on input line 31. + (/home/matteo/Développement/se205-1/rapport/rapport.out) (/home/matteo/Développement/se205-1/rapport/rapport.out) +\@outlinefile=\write5 +\openout5 = `rapport.out'. + + ABD: EveryShipout initializing macros (/usr/share/texlive/texmf-dist/tex/context/base/supp-pdf.mkii +[Loading MPS to PDF converter (version 2006.09.02).] +\scratchcounter=\count176 +\scratchdimen=\dimen170 +\scratchbox=\box102 +\nofMPsegments=\count177 +\nofMParguments=\count178 +\everyMPshowfont=\toks34 +\MPscratchCnt=\count179 +\MPscratchDim=\dimen171 +\MPnumerator=\count180 +\makeMPintoPDFobject=\count181 +\everyMPtoPDFconversion=\toks35 +) (/usr/share/texlive/texmf-dist/tex/latex/oberdiek/epstopdf-base.sty +Package: epstopdf-base 2010/02/09 v2.5 Base part for package epstopdf + (/usr/share/texlive/texmf-dist/tex/latex/oberdiek/grfext.sty +Package: grfext 2010/08/19 v1.1 Manage graphics extensions (HO) +) +Package grfext Info: Graphics extension search list: +(grfext) [.png,.pdf,.jpg,.mps,.jpeg,.jbig2,.jb2,.PNG,.PDF,.JPG,.JPEG,.JBIG2,.JB2,.eps] +(grfext) \AppendGraphicsExtensions on input line 452. + (/usr/share/texlive/texmf-dist/tex/latex/latexconfig/epstopdf-sys.cfg +File: epstopdf-sys.cfg 2010/07/13 v1.3 Configuration of (r)epstopdf for TeX Live +)) +LaTeX Font Info: Try loading font information for OT1+lmr on input line 38. + (/usr/share/texmf/tex/latex/lm/ot1lmr.fd +File: ot1lmr.fd 2009/10/30 v1.6 Font defs for Latin Modern +) +LaTeX Font Info: Try loading font information for OML+lmm on input line 38. + (/usr/share/texmf/tex/latex/lm/omllmm.fd +File: omllmm.fd 2009/10/30 v1.6 Font defs for Latin Modern +) +LaTeX Font Info: Try loading font information for OMS+lmsy on input line 38. + (/usr/share/texmf/tex/latex/lm/omslmsy.fd +File: omslmsy.fd 2009/10/30 v1.6 Font defs for Latin Modern +) +LaTeX Font Info: Try loading font information for OMX+lmex on input line 38. + (/usr/share/texmf/tex/latex/lm/omxlmex.fd +File: omxlmex.fd 2009/10/30 v1.6 Font defs for Latin Modern +) +LaTeX Font Info: External font `lmex10' loaded for size +(Font) <12> on input line 38. +LaTeX Font Info: External font `lmex10' loaded for size +(Font) <8> on input line 38. +LaTeX Font Info: External font `lmex10' loaded for size +(Font) <6> on input line 38. + [1 + +{/var/lib/texmf/fonts/map/pdftex/updmap/pdftex.map}] (/home/matteo/Développement/se205-1/rapport/rapport.toc +LaTeX Font Info: External font `lmex10' loaded for size +(Font) <10> on input line 4. +LaTeX Font Info: External font `lmex10' loaded for size +(Font) <7> on input line 4. +LaTeX Font Info: External font `lmex10' loaded for size +(Font) <5> on input line 4. +) +\tf@toc=\write6 +\openout6 = `rapport.toc'. + +pdfTeX warning (ext4): destination with the same identifier (name{page.1}) has been already used, duplicate ignored + + \relax +l.46 \include{./parts/intro} + [1 + +] +\openout2 = `./parts/intro.aux'. + + (/home/matteo/Développement/se205-1/rapport/./parts/intro.tex) [2 + + +] +\openout2 = `./parts/life.aux'. + + (/home/matteo/Développement/se205-1/rapport/./parts/life.tex +Jeu 1. +(./figures/life-ex-1.tex) (./figures/life-ex-2.tex) (./figures/life-ex-3.tex) +LaTeX Font Info: Try loading font information for T1+lmtt on input line 87. + (/usr/share/texmf/tex/latex/lm/t1lmtt.fd +File: t1lmtt.fd 2009/10/30 v1.6 Font defs for Latin Modern +) [3 + + + +] [4] +LaTeX Font Info: Try loading font information for OT1+lmtt on input line 127. + (/usr/share/texmf/tex/latex/lm/ot1lmtt.fd +File: ot1lmtt.fd 2009/10/30 v1.6 Font defs for Latin Modern +) [5] [6] (./figures/life-gantt.tex +\ganttx=\count182 +\ganttheight=\count183 +Missing character: There is no ; in font nullfont! +Missing character: There is no ; in font nullfont! +Missing character: There is no ; in font nullfont! +Missing character: There is no ; in font nullfont! +Missing character: There is no ; in font nullfont! +Missing character: There is no ; in font nullfont! +Missing character: There is no ; in font nullfont! +Missing character: There is no ; in font nullfont! +Missing character: There is no ; in font nullfont! +Missing character: There is no ; in font nullfont! +)) [7] +\openout2 = `./parts/go.aux'. + + (/home/matteo/Développement/se205-1/rapport/./parts/go.tex +Jeu 2. +(./figures/go-ex-1.tex) +Underfull \hbox (badness 1540) in paragraph at lines 49--49 +[]\T1/lmr/m/sc/10 Figure \T1/lmr/m/n/10 2.1 ^^U []La chaîne + [] + +[8 + + + +] (./figures/go-ex-2.tex) [9] [10] [11] (./figures/go-gantt.tex +\ganttx=\count184 +\ganttheight=\count185 +Missing character: There is no ; in font nullfont! +Missing character: There is no ; in font nullfont! +Missing character: There is no ; in font nullfont! +Missing character: There is no ; in font nullfont! +Missing character: There is no ; in font nullfont! +Missing character: There is no ; in font nullfont! +Missing character: There is no ; in font nullfont! +Missing character: There is no ; in font nullfont! +Missing character: There is no ; in font nullfont! +Missing character: There is no ; in font nullfont! +)) [12] +\openout2 = `./parts/ptf.aux'. + + (/home/matteo/Développement/se205-1/rapport/./parts/ptf.tex +Jeu 3. +[13 + + + +] [14] (./figures/ptf-uml-diagram.tex +LaTeX Font Info: External font `lmex10' loaded for size +(Font) <9> on input line 10. +) [15] +LaTeX Font Info: Font shape `T1/lmtt/bx/n' in size <10> not available +(Font) Font shape `T1/lmtt/b/n' tried instead on input line 143. + [16] (./figures/ptf-layering-exploded.tex) (./figures/ptf-layering-merged.tex) [17] [18] (./figures/ptf-gantt.tex +\ganttx=\count186 +\ganttheight=\count187 +Missing character: There is no ; in font nullfont! +Missing character: There is no ; in font nullfont! +Missing character: There is no ; in font nullfont! +Missing character: There is no ; in font nullfont! +Missing character: There is no ; in font nullfont! +Missing character: There is no ; in font nullfont! +Missing character: There is no ; in font nullfont! +Missing character: There is no ; in font nullfont! +Missing character: There is no ; in font nullfont! +Missing character: There is no ; in font nullfont! +) + +LaTeX Warning: `!h' float specifier changed to `!ht'. + +) [19] [20] +\openout2 = `./parts/cmp.aux'. + + (/home/matteo/Développement/se205-1/rapport/./parts/cmp.tex) [21 + + + +] +\openout2 = `./parts/conclu.aux'. + + (/home/matteo/Développement/se205-1/rapport/./parts/conclu.tex) [22 + + + +] (/home/matteo/Développement/se205-1/rapport/rapport.bbl) [23 + + + +] +Package atveryend Info: Empty hook `BeforeClearDocument' on input line 60. +Package atveryend Info: Empty hook `AfterLastShipout' on input line 60. + (/home/matteo/Développement/se205-1/rapport/rapport.aux (/home/matteo/Développement/se205-1/rapport/./parts/intro.aux) (/home/matteo/Développement/se205-1/rapport/./parts/life.aux) (/home/matteo/Développement/se205-1/rapport/./parts/go.aux) (/home/matteo/Développement/se205-1/rapport/./parts/ptf.aux) (/home/matteo/Développement/se205-1/rapport/./parts/cmp.aux) (/home/matteo/Développement/se205-1/rapport/./parts/conclu.aux)) +Package atveryend Info: Executing hook `AtVeryEndDocument' on input line 60. +Package atveryend Info: Executing hook `AtEndAfterFileList' on input line 60. +Package rerunfilecheck Info: File `rapport.out' has not changed. +(rerunfilecheck) Checksum: 58154CECF4373FAAFC4894FED01C616C;1251. +Package atveryend Info: Empty hook `AtVeryVeryEnd' on input line 60. + ) +Here is how much of TeX's memory you used: + 22107 strings out of 493085 + 447002 string characters out of 6136916 + 606276 words of memory out of 5000000 + 24921 multiletter control sequences out of 15000+600000 + 81203 words of font info for 61 fonts, out of 8000000 for 9000 + 1141 hyphenation exceptions out of 8191 + 55i,10n,84p,448b,912s stack positions out of 5000i,500n,10000p,200000b,80000s +{/usr/share/texmf/fonts/enc/dvips/lm/lm-rm.enc}{/usr/share/texmf/fonts/enc/dvips/lm/lm-rmtt.enc}{/usr/share/texmf/fonts/enc/dvips/lm/lm-ec.enc}{/usr/share/texmf/fonts/enc/dvips/lm/lm-mathsy.enc}{/usr/share/texmf/fonts/enc/dvips/lm/lm-mathit.enc} +Output written on /home/matteo/Développement/se205-1/rapport/rapport.pdf (24 pages, 435124 bytes). +PDF statistics: + 512 PDF objects out of 1000 (max. 8388607) + 446 compressed objects within 5 object streams + 147 named destinations out of 1000 (max. 500000) + 289 words of extra memory for PDF output out of 10000 (max. 10000000) + diff --git a/docs/rapports/rapport-initial-delabre/rapport.out b/docs/rapports/rapport-initial-delabre/rapport.out new file mode 100644 index 0000000..905619f --- /dev/null +++ b/docs/rapports/rapport-initial-delabre/rapport.out @@ -0,0 +1,22 @@ +\BOOKMARK [0][-]{chapter*.2}{Introduction}{}% 1 +\BOOKMARK [0][-]{chapter.1}{Jeu de la vie}{}% 2 +\BOOKMARK [1][-]{section.1.1}{Principes}{chapter.1}% 3 +\BOOKMARK [1][-]{section.1.2}{Mod\351lisation}{chapter.1}% 4 +\BOOKMARK [1][-]{section.1.3}{Algorithmes}{chapter.1}% 5 +\BOOKMARK [1][-]{section.1.4}{Sp\351cifications}{chapter.1}% 6 +\BOOKMARK [1][-]{section.1.5}{Organisation}{chapter.1}% 7 +\BOOKMARK [0][-]{chapter.2}{Jeu de go}{}% 8 +\BOOKMARK [1][-]{section.2.1}{Principes}{chapter.2}% 9 +\BOOKMARK [1][-]{section.2.2}{Mod\351lisation}{chapter.2}% 10 +\BOOKMARK [1][-]{section.2.3}{Algorithmes}{chapter.2}% 11 +\BOOKMARK [1][-]{section.2.4}{Sp\351cifications}{chapter.2}% 12 +\BOOKMARK [1][-]{section.2.5}{Organisation}{chapter.2}% 13 +\BOOKMARK [0][-]{chapter.3}{Jeu de plateformes coop\351ratif}{}% 14 +\BOOKMARK [1][-]{section.3.1}{Principes}{chapter.3}% 15 +\BOOKMARK [1][-]{section.3.2}{Mod\351lisation}{chapter.3}% 16 +\BOOKMARK [1][-]{section.3.3}{Algorithmes}{chapter.3}% 17 +\BOOKMARK [1][-]{section.3.4}{Sp\351cifications}{chapter.3}% 18 +\BOOKMARK [1][-]{section.3.5}{Organisation}{chapter.3}% 19 +\BOOKMARK [0][-]{chapter*.3}{\311tude comparative}{}% 20 +\BOOKMARK [0][-]{chapter*.4}{Conclusion}{}% 21 +\BOOKMARK [0][-]{section*.5}{Webographie}{}% 22 diff --git a/docs/rapports/rapport-initial-delabre/rapport.pdf b/docs/rapports/rapport-initial-delabre/rapport.pdf new file mode 100644 index 0000000000000000000000000000000000000000..7c4c7cda18cf329dab24fe77dec1719ff0f434d0 GIT binary patch literal 435124 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