update slides
This commit is contained in:
parent
2573308f22
commit
a691f7a058
2 changed files with 134 additions and 1 deletions
|
@ -3,5 +3,8 @@ via les liens suivants :
|
|||
|
||||
| Fichier | Lien Excalidraw |
|
||||
| ------------------: | :------------------------------------------------------------------------ |
|
||||
| othello_othellier | https://excalidraw.com/#json=FgUR71Cb5Oef6-gRQZVHk,wxDKIEaiQq7XByJ3Fe6BWQ |
|
||||
| othello_init | https://excalidraw.com/#json=d8fn6ZiBgDCZ59db4g0mI,-zjtc5jHvQhahb6Nj4vzng |
|
||||
| othello_premiercoup | https://excalidraw.com/#json=8Qrf8cCcZJAbc3aEGH0Ts,1vsG--6hIFzSNFfZ0KOZPw |
|
||||
| othello_impl_hh | https://excalidraw.com/#json=vXWZ8gtrSJxhbVfsYShL5,rcEwGNHajCftNAf8WE6HNQ |
|
||||
| othello_impl_ma | https://excalidraw.com/#json=_h19rWJkN7KVWVU9whOta,NJMrSs_iE6WA_-hIS424-w |
|
||||
|
|
|
@ -22,7 +22,10 @@
|
|||
\usepackage{multicol} % liste sur plusieurs colonnes
|
||||
\usepackage[figurename=]{caption} % nom des images
|
||||
|
||||
\title[IA pour Othello]{Projet - IA pour le jeu d'Othello}
|
||||
\usepackage{minted} % intégration code
|
||||
\usemintedstyle{emacs}
|
||||
|
||||
\title[IA pour Othello]{\href{https://jj.up8.site/AA/ProjetsAA.pdf}{Projet} - IA pour le jeu d'Othello}
|
||||
\author{\href{mailto:anri.kennel@etud.univ-paris8.fr}{Anri Kennel} | L3-A}
|
||||
\institute{Algorithmique avancée $\cdot$ Université Paris 8}
|
||||
\date{Année universitaire 2022-2023}
|
||||
|
@ -37,6 +40,133 @@
|
|||
|
||||
\section{Projet}
|
||||
\begin{frame}{Projet}
|
||||
\begin{columns}[onlytextwidth]
|
||||
\def\rcolumn{50mm} % taille colonne de droite
|
||||
\column{\linewidth-\rcolumn-1mm} % colonne de gauche
|
||||
Jeu d'Othello :
|
||||
\begin{itemize}
|
||||
\item Jeu de plateau 8x8
|
||||
\item<2-> 2 joueurs
|
||||
\item<3-> Prendre en sandwich l'adversaire
|
||||
\end{itemize}
|
||||
\column{\rcolumn} % colonne de droite
|
||||
\only<1>{
|
||||
\begin{figure}
|
||||
\includegraphics[width=\rcolumn]{../imgs/othello_othellier.png}
|
||||
\caption*{Othellier}
|
||||
\end{figure}
|
||||
}
|
||||
\only<2>{
|
||||
\begin{figure}
|
||||
\includegraphics[width=\rcolumn]{../imgs/othello_init.png}
|
||||
\caption*{Début du jeu}
|
||||
\end{figure}
|
||||
}
|
||||
\only<3->{
|
||||
\begin{figure}
|
||||
\includegraphics[width=\rcolumn]{../imgs/othello_premiercoup.png}
|
||||
\caption*{Premier coup}
|
||||
\end{figure}
|
||||
}
|
||||
\end{columns}
|
||||
\end{frame}
|
||||
|
||||
\section{Implémentation}
|
||||
\subsection*{Othello}
|
||||
\begin{frame}{Jeu d'Othello}
|
||||
\only<1>{
|
||||
\begin{figure}
|
||||
\includegraphics[width=0.9\textwidth]{../imgs/othello_impl_hh.png}
|
||||
\caption*{Jeu : \texttt{./othello humain humain}}
|
||||
\end{figure}
|
||||
}
|
||||
\only<2->{
|
||||
\begin{figure}
|
||||
\includegraphics[width=0.9\textwidth]{../imgs/othello_impl_ma.png}
|
||||
\caption*{Jeu : \texttt{./othello minimax alphabeta}}
|
||||
\end{figure}
|
||||
}
|
||||
\end{frame}
|
||||
\begin{frame}[fragile]{Comment ?}
|
||||
\begin{columns}[onlytextwidth]
|
||||
\def\rcolumn{63mm} % taille colonne de droite
|
||||
\column{\linewidth-\rcolumn-1mm} % colonne de gauche
|
||||
\begin{itemize}
|
||||
\item Liste chaînée
|
||||
\item<3-> Coups
|
||||
\item<4-> Propriétés
|
||||
\end{itemize}
|
||||
\column{\rcolumn} % colonne de droite
|
||||
\begin{overprint}
|
||||
\onslide<1>
|
||||
\begin{figure}
|
||||
\vspace{25mm}
|
||||
\begin{minted}[autogobble,linenos,fontsize=\scriptsize,highlightlines={4}]{c}
|
||||
struct joueur {
|
||||
char *nom;
|
||||
int couleur;
|
||||
Liste *liste_jeton;
|
||||
int nb_jeton;
|
||||
};
|
||||
\end{minted}
|
||||
\caption*{Liste des jetons des joueurs}
|
||||
\end{figure}
|
||||
\onslide<2>
|
||||
\begin{figure}
|
||||
\vspace{27mm}
|
||||
\begin{minted}[autogobble,linenos,fontsize=\scriptsize,highlightlines={2}]{c}
|
||||
struct coups {
|
||||
Liste *coups;
|
||||
int taille_liste;
|
||||
};
|
||||
\end{minted}
|
||||
\caption*{Liste pour les coups possibles}
|
||||
\end{figure}
|
||||
\onslide<3>
|
||||
\begin{figure}
|
||||
\vspace{30mm}
|
||||
\begin{minted}[autogobble,linenos,fontsize=\scriptsize]{c}
|
||||
Coups *action_possible_joueur
|
||||
(Jeton *plateau[LONGEUR][LARGEUR],
|
||||
const int couleur);
|
||||
\end{minted}
|
||||
\caption*{Liste pour les coups possibles pour un joueur}
|
||||
\end{figure}
|
||||
\onslide<4>
|
||||
\begin{figure}
|
||||
\vspace{20mm}
|
||||
\begin{minted}[autogobble,linenos,fontsize=\scriptsize]{c}
|
||||
/* Une case est soit vide,
|
||||
* soit occupé par un des joueurs,
|
||||
* noir ou blanc */
|
||||
enum CASE { VIDE = ' ', BLANC = 'B',
|
||||
NOIR = 'N' };
|
||||
|
||||
/* Propriété globale du jeu */
|
||||
enum PLATEAU { LONGEUR = 8, LARGEUR = 8 };
|
||||
|
||||
/* Type de joueurs */
|
||||
enum PLAYER_TYPE { HUMAIN, MINIMAX, ALPHABETA };
|
||||
\end{minted}
|
||||
\caption*{Propriétés du jeu}
|
||||
\end{figure}
|
||||
\end{overprint}
|
||||
\end{columns}
|
||||
\onslide<3>{\hspace{3cm} Pour \textbf{tout} les joueurs}
|
||||
\end{frame}
|
||||
|
||||
\subsection*{Minimax}
|
||||
\begin{frame}{Algorithme minimax}
|
||||
TODO!
|
||||
\end{frame}
|
||||
|
||||
\subsection*{Alpha-bêta}
|
||||
\begin{frame}{Algorithme alpha-bêta}
|
||||
TODO!
|
||||
\end{frame}
|
||||
|
||||
\section{Comparaison}
|
||||
\begin{frame}{Comparaison d'efficacité}
|
||||
TODO!
|
||||
\end{frame}
|
||||
|
||||
|
|
Reference in a new issue