Init project after finished it and start of the report

This commit is contained in:
2026-10-12 19:48:24 +02:00
commit 2b6d059fb5
13 changed files with 786 additions and 0 deletions
+70
View File
@@ -0,0 +1,70 @@
\documentclass[11pt, a4paper]{article}
% Préambule : packages utiles
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage[french]{babel}
\usepackage{graphicx}
\usepackage{amsmath}
\usepackage{hyperref}
\graphicspath{ {./images/} }
\title{Simulation de population de lapin \\ (Rabbit's hole)}
\author{Aubin DORIVAL F2 Promo 28}
\date{\today}
\begin{document}
\maketitle
\begin{center}
\url{https://git.dukantic.fr/dukantic/Rabbit-s-Hole}
\includegraphics[width=0.7\textwidth]{draw_rabbit.jpg}
\end{center}
\section{Introduction}
Le projet `Rabbit Hole` est une simulation de population de lapin. Elle
essaye de simuler la croissance de la population de lapin en essayant de
suivre certaine règles et en faisant abstraction d'autre choses. Dans
tout le projet j'ai globalement prit les conditions et les probabilités
qui sont dans le sujet de base.
\section{Règles}
Tout d'abord il faut définir les règles à suivre.
\begin{itemize}
\item Taux de gestation à $50\%$ par mois.
\item $3$ à $6$ bébés par gestation de manière uniforme.
\item Les bébés deviennent adulte entre le $5\up{eme}$ et $8\up{eme}$ mois
\item Les adultes meurent avec un taux de $40\%/ans + 10\%/ans$ à partir de 10 ans.
\item Les bébés meurent avec un taux de $65\%/ans \Rightarrow 5\%/mois$ sur 7 mois en moyenne.
\end{itemize}
\begin{center}
\includegraphics[width=\textwidth]{rabbit's_rules.png}
\end{center}
\section{Structure de donnée}
Pour stocker les lapins j'ai choisit de les classées par âge. En effet
toute les règles sont basé sur l'âge alors je peux les compter. Ma
structure de données est donc basé sur cela. J'ai un tableau par sexe
et l'indice du tableau correspond a l'âge. J'ai aussi le nombre de lapine
en gestation. Pour les bébés j'ai exactement la même chose sauf que
l indice représente le mois plutôt que l'année. Pour les nombres j'ai
choisi un entier non-signé de 128 bits (ce qui est pas disponible pour
toute les plateformes) pour évité un maximum les dépassement d'entier.
\begin{verbatim}
#define N_MATURE (16)
#define N_KITTEN (8)
typedef struct rabbit_hole_s {
__uint128_t male_mature[N_MATURE];
__uint128_t female_mature[N_MATURE];
__uint128_t female_litter;
__uint128_t kitten_male[N_KITTEN];
__uint128_t kitten_female[N_KITTEN];
} rabbit_hole_t;
\end{verbatim}
\end{document}