diff --git a/Rapport/Rapport.aux b/Rapport/Rapport.aux index beb22a3..0e21439 100644 --- a/Rapport/Rapport.aux +++ b/Rapport/Rapport.aux @@ -25,18 +25,18 @@ \providecommand \oddpage@label [2]{} \babel@aux{french}{} \@writefile{toc}{\contentsline {section}{\numberline {1}Introduction}{2}{section.1}\protected@file@percent } -\@writefile{toc}{\contentsline {section}{\numberline {2}L'algorithme de recherche}{2}{section.2}\protected@file@percent } -\@writefile{toc}{\contentsline {subsection}{\numberline {2.1}Algorithme de base}{2}{subsection.2.1}\protected@file@percent } -\@writefile{lol}{\contentsline {lstlisting}{NegamaxPlayer.txt}{2}{lstlisting.-1}\protected@file@percent } -\@writefile{toc}{\contentsline {subsection}{\numberline {2.2}Algorithme d'élagage}{3}{subsection.2.2}\protected@file@percent } -\@writefile{lol}{\contentsline {lstlisting}{AlphaBetaPlayer.txt}{3}{lstlisting.-2}\protected@file@percent } -\@writefile{toc}{\contentsline {section}{\numberline {3}Mesures}{4}{section.3}\protected@file@percent } -\@writefile{toc}{\contentsline {subsection}{\numberline {3.1}Présentation}{4}{subsection.3.1}\protected@file@percent } -\@writefile{toc}{\contentsline {subsection}{\numberline {3.2}AlphaBeta}{6}{subsection.3.2}\protected@file@percent } -\@writefile{toc}{\contentsline {subsubsection}{\numberline {3.2.1}Profondeur 1}{6}{subsubsection.3.2.1}\protected@file@percent } -\@writefile{toc}{\contentsline {subsubsection}{\numberline {3.2.2}Profondeur 2}{7}{subsubsection.3.2.2}\protected@file@percent } -\@writefile{toc}{\contentsline {subsubsection}{\numberline {3.2.3}Profondeur 3}{8}{subsubsection.3.2.3}\protected@file@percent } -\@writefile{toc}{\contentsline {subsubsection}{\numberline {3.2.4}Profondeur 4}{9}{subsubsection.3.2.4}\protected@file@percent } +\@writefile{toc}{\contentsline {section}{\numberline {2}L'algorithme de recherche}{3}{section.2}\protected@file@percent } +\@writefile{toc}{\contentsline {subsection}{\numberline {2.1}Algorithme de base}{3}{subsection.2.1}\protected@file@percent } +\@writefile{lol}{\contentsline {lstlisting}{NegamaxPlayer.txt}{3}{lstlisting.-1}\protected@file@percent } +\@writefile{toc}{\contentsline {subsection}{\numberline {2.2}Algorithme d'élagage}{4}{subsection.2.2}\protected@file@percent } +\@writefile{lol}{\contentsline {lstlisting}{AlphaBetaPlayer.txt}{4}{lstlisting.-2}\protected@file@percent } +\@writefile{toc}{\contentsline {section}{\numberline {3}Mesures}{5}{section.3}\protected@file@percent } +\@writefile{toc}{\contentsline {subsection}{\numberline {3.1}Présentation}{5}{subsection.3.1}\protected@file@percent } +\@writefile{toc}{\contentsline {subsection}{\numberline {3.2}AlphaBeta}{7}{subsection.3.2}\protected@file@percent } +\@writefile{toc}{\contentsline {subsubsection}{\numberline {3.2.1}Profondeur 1}{7}{subsubsection.3.2.1}\protected@file@percent } +\@writefile{toc}{\contentsline {subsubsection}{\numberline {3.2.2}Profondeur 2}{8}{subsubsection.3.2.2}\protected@file@percent } +\@writefile{toc}{\contentsline {subsubsection}{\numberline {3.2.3}Profondeur 3}{9}{subsubsection.3.2.3}\protected@file@percent } +\@writefile{toc}{\contentsline {subsubsection}{\numberline {3.2.4}Profondeur 4}{10}{subsubsection.3.2.4}\protected@file@percent } \@writefile{toc}{\contentsline {subsubsection}{\numberline {3.2.5}Profondeur 5}{11}{subsubsection.3.2.5}\protected@file@percent } \@writefile{toc}{\contentsline {subsubsection}{\numberline {3.2.6}Conclusion d’Alphabeta}{12}{subsubsection.3.2.6}\protected@file@percent } \@writefile{toc}{\contentsline {subsection}{\numberline {3.3}Negamax}{13}{subsection.3.3}\protected@file@percent } @@ -45,12 +45,11 @@ \@writefile{toc}{\contentsline {subsubsection}{\numberline {3.3.3}Profondeur 3}{15}{subsubsection.3.3.3}\protected@file@percent } \@writefile{toc}{\contentsline {subsubsection}{\numberline {3.3.4}Profondeur 4}{16}{subsubsection.3.3.4}\protected@file@percent } \@writefile{toc}{\contentsline {subsubsection}{\numberline {3.3.5}Profondeur 5}{17}{subsubsection.3.3.5}\protected@file@percent } -\@writefile{toc}{\contentsline {subsubsection}{\numberline {3.3.6}Conclusion de Negamax}{18}{subsubsection.3.3.6}\protected@file@percent } -\@writefile{toc}{\contentsline {subsection}{\numberline {3.4}Negamax vs AlphaBeta}{19}{subsection.3.4}\protected@file@percent } -\@writefile{toc}{\contentsline {subsubsection}{\numberline {3.4.1}Profondeur 2, AlphaBeta premier joueur, Negamax second}{19}{subsubsection.3.4.1}\protected@file@percent } -\@writefile{toc}{\contentsline {subsubsection}{\numberline {3.4.2}Profondeur 2, Negamax premier joueur, AlphaBeta second}{20}{subsubsection.3.4.2}\protected@file@percent } -\@writefile{toc}{\contentsline {subsubsection}{\numberline {3.4.3}Conclusion de AlphaBeta vs Negamax}{20}{subsubsection.3.4.3}\protected@file@percent } -\@writefile{toc}{\contentsline {section}{\numberline {4}Difficultés rencontrés}{21}{section.4}\protected@file@percent } -\@writefile{toc}{\contentsline {section}{\numberline {5}Expérimentations}{21}{section.5}\protected@file@percent } -\@writefile{toc}{\contentsline {section}{\numberline {6}Conclusion}{21}{section.6}\protected@file@percent } -\gdef \@abspage@last{22} +\@writefile{toc}{\contentsline {subsubsection}{\numberline {3.3.6}Conclusion de Negamax}{17}{subsubsection.3.3.6}\protected@file@percent } +\@writefile{toc}{\contentsline {subsection}{\numberline {3.4}Negamax vs AlphaBeta}{18}{subsection.3.4}\protected@file@percent } +\@writefile{toc}{\contentsline {subsubsection}{\numberline {3.4.1}Profondeur 2, AlphaBeta premier joueur, Negamax second}{18}{subsubsection.3.4.1}\protected@file@percent } +\@writefile{toc}{\contentsline {subsubsection}{\numberline {3.4.2}Profondeur 2, Negamax premier joueur, AlphaBeta second}{19}{subsubsection.3.4.2}\protected@file@percent } +\@writefile{toc}{\contentsline {subsubsection}{\numberline {3.4.3}Conclusion de AlphaBeta vs Negamax}{19}{subsubsection.3.4.3}\protected@file@percent } +\@writefile{toc}{\contentsline {section}{\numberline {4}Difficultés rencontrées}{20}{section.4}\protected@file@percent } +\@writefile{toc}{\contentsline {section}{\numberline {5}Expérimentations}{20}{section.5}\protected@file@percent } +\gdef \@abspage@last{21} diff --git a/Rapport/Rapport.log b/Rapport/Rapport.log index 921ed32..11b462b 100644 --- a/Rapport/Rapport.log +++ b/Rapport/Rapport.log @@ -1,12 +1,12 @@ -This is pdfTeX, Version 3.14159265-2.6-1.40.21 (MiKTeX 21.1) (preloaded format=pdflatex 2021.2.8) 28 FEB 2021 23:13 +This is pdfTeX, Version 3.14159265-2.6-1.40.21 (MiKTeX 20.12) (preloaded format=pdflatex 2021.1.12) 1 MAR 2021 08:13 entering extended mode **./Rapport.tex (Rapport.tex -LaTeX2e <2020-10-01> patch level 4 -L3 programming layer <2021-01-09> xparse <2020-03-03> -(C:\Users\anton\AppData\Local\Programs\MiKTeX\tex/latex/base\article.cls +LaTeX2e <2020-10-01> patch level 2 +L3 programming layer <2020-12-07> xparse <2020-03-03> +(C:\Users\Arthur\AppData\Local\Programs\MiKTeX\tex/latex/base\article.cls Document Class: article 2020/04/10 v1.4m Standard LaTeX document class -(C:\Users\anton\AppData\Local\Programs\MiKTeX\tex/latex/base\size12.clo +(C:\Users\Arthur\AppData\Local\Programs\MiKTeX\tex/latex/base\size12.clo File: size12.clo 2020/04/10 v1.4m Standard LaTeX file (size option) ) \c@part=\count177 @@ -21,37 +21,36 @@ File: size12.clo 2020/04/10 v1.4m Standard LaTeX file (size option) \belowcaptionskip=\skip48 \bibindent=\dimen138 ) -(C:\Users\anton\AppData\Local\Programs\MiKTeX\tex/latex/base\inputenc.sty +(C:\Users\Arthur\AppData\Local\Programs\MiKTeX\tex/latex/base\inputenc.sty Package: inputenc 2020/08/01 v1.3d Input encoding file \inpenc@prehook=\toks15 \inpenc@posthook=\toks16 ) -(C:\Users\anton\AppData\Local\Programs\MiKTeX\tex/latex/base\fontenc.sty +(C:\Users\Arthur\AppData\Local\Programs\MiKTeX\tex/latex/base\fontenc.sty Package: fontenc 2020/08/10 v2.0s Standard LaTeX package ) -(C:\Users\anton\AppData\Local\Programs\MiKTeX\tex/generic/babel\babel.sty -Package: babel 2020/12/16 3.52 The Babel package +(C:\Users\Arthur\AppData\Local\Programs\MiKTeX\tex/generic/babel\babel.sty +Package: babel 2020/10/27 3.51 The Babel package -(C:\Users\anton\AppData\Local\Programs\MiKTeX\tex/generic/babel\babel.def -File: babel.def 2020/12/16 3.52 Babel common definitions +(C:\Users\Arthur\AppData\Local\Programs\MiKTeX\tex/generic/babel\babel.def +File: babel.def 2020/10/27 3.51 Babel common definitions \babel@savecnt=\count185 \U@D=\dimen139 \l@babelnohyphens=\language79 -(C:\Users\anton\AppData\Local\Programs\MiKTeX\tex/generic/babel\txtbabel.def) +(C:\Users\Arthur\AppData\Local\Programs\MiKTeX\tex/generic/babel\txtbabel.def) \bbl@readstream=\read2 ) \bbl@dirlevel=\count186 - ************************************* * Local config file bblopts.cfg used * -(C:\Users\anton\AppData\Local\Programs\MiKTeX\tex/latex/arabi\bblopts.cfg +(C:\Users\Arthur\AppData\Local\Programs\MiKTeX\tex/latex/arabi\bblopts.cfg File: bblopts.cfg 2005/09/08 v0.1 add Arabic and Farsi to "declared" options of babel ) -(C:\Users\anton\AppData\Local\Programs\MiKTeX\tex/generic/babel-french\french.l -df +(C:\Users\Arthur\AppData\Local\Programs\MiKTeX\tex/generic/babel-french\french. +ldf Language: french 2020/10/10 v3.5l French support from the babel system Package babel Info: \l@acadian = using hyphenrules for french (babel) (\language22) on input line 91. @@ -78,69 +77,71 @@ Package babel Info: Making ? an active character on input line 433. \parindentFFN=\dimen146 \FBfnindent=\dimen147 )) -(C:\Users\anton\AppData\Local\Programs\MiKTeX\tex/latex/carlisle\scalefnt.sty) -(C:\Users\anton\AppData\Local\Programs\MiKTeX\tex/latex/graphics\keyval.sty +(C:\Users\Arthur\AppData\Local\Programs\MiKTeX\tex/latex/carlisle\scalefnt.sty) +(C:\Users\Arthur\AppData\Local\Programs\MiKTeX\tex/latex/graphics\keyval.sty Package: keyval 2014/10/28 v1.15 key=value parser (DPC) \KV@toks@=\toks18 ) -(C:\Users\anton\AppData\Local\Programs\MiKTeX\tex/latex/hyperref\hyperref.sty +(C:\Users\Arthur\AppData\Local\Programs\MiKTeX\tex/latex/hyperref\hyperref.sty Package: hyperref 2020-05-15 v7.00e Hypertext links for LaTeX -(C:\Users\anton\AppData\Local\Programs\MiKTeX\tex/generic/ltxcmds\ltxcmds.sty +(C:\Users\Arthur\AppData\Local\Programs\MiKTeX\tex/generic/ltxcmds\ltxcmds.sty Package: ltxcmds 2020-05-10 v1.25 LaTeX kernel commands for general use (HO) -) -(C:\Users\anton\AppData\Local\Programs\MiKTeX\tex/generic/iftex\iftex.sty +) (C:\Users\Arthur\AppData\Local\Programs\MiKTeX\tex/generic/iftex\iftex.sty Package: iftex 2020/03/06 v1.0d TeX engine tests ) -(C:\Users\anton\AppData\Local\Programs\MiKTeX\tex/generic/pdftexcmds\pdftexcmds -.sty +(C:\Users\Arthur\AppData\Local\Programs\MiKTeX\tex/generic/pdftexcmds\pdftexcmd +s.sty Package: pdftexcmds 2020-06-27 v0.33 Utility functions of pdfTeX for LuaTeX (HO ) -(C:\Users\anton\AppData\Local\Programs\MiKTeX\tex/generic/infwarerr\infwarerr.s -ty +(C:\Users\Arthur\AppData\Local\Programs\MiKTeX\tex/generic/infwarerr\infwarerr. +sty Package: infwarerr 2019/12/03 v1.5 Providing info/warning/error messages (HO) ) Package pdftexcmds Info: \pdf@primitive is available. Package pdftexcmds Info: \pdf@ifprimitive is available. Package pdftexcmds Info: \pdfdraftmode found. ) -(C:\Users\anton\AppData\Local\Programs\MiKTeX\tex/generic/kvsetkeys\kvsetkeys.s -ty +(C:\Users\Arthur\AppData\Local\Programs\MiKTeX\tex/generic/kvsetkeys\kvsetkeys. +sty Package: kvsetkeys 2019/12/15 v1.18 Key value parser (HO) ) -(C:\Users\anton\AppData\Local\Programs\MiKTeX\tex/generic/kvdefinekeys\kvdefine -keys.sty +(C:\Users\Arthur\AppData\Local\Programs\MiKTeX\tex/generic/kvdefinekeys\kvdefin +ekeys.sty Package: kvdefinekeys 2019-12-19 v1.6 Define keys (HO) ) -(C:\Users\anton\AppData\Local\Programs\MiKTeX\tex/generic/pdfescape\pdfescape.s -ty +(C:\Users\Arthur\AppData\Local\Programs\MiKTeX\tex/generic/pdfescape\pdfescape. +sty Package: pdfescape 2019/12/09 v1.15 Implements pdfTeX's escape features (HO) -) (C:\Users\anton\AppData\Local\Programs\MiKTeX\tex/latex/hycolor\hycolor.sty +) +(C:\Users\Arthur\AppData\Local\Programs\MiKTeX\tex/latex/hycolor\hycolor.sty Package: hycolor 2020-01-27 v1.10 Color options for hyperref/bookmark (HO) ) -(C:\Users\anton\AppData\Local\Programs\MiKTeX\tex/latex/letltxmacro\letltxmacro -.sty +(C:\Users\Arthur\AppData\Local\Programs\MiKTeX\tex/latex/letltxmacro\letltxmacr +o.sty Package: letltxmacro 2019/12/03 v1.6 Let assignment for LaTeX macros (HO) ) -(C:\Users\anton\AppData\Local\Programs\MiKTeX\tex/latex/auxhook\auxhook.sty +(C:\Users\Arthur\AppData\Local\Programs\MiKTeX\tex/latex/auxhook\auxhook.sty Package: auxhook 2019-12-17 v1.6 Hooks for auxiliary files (HO) ) -(C:\Users\anton\AppData\Local\Programs\MiKTeX\tex/latex/kvoptions\kvoptions.sty +(C:\Users\Arthur\AppData\Local\Programs\MiKTeX\tex/latex/kvoptions\kvoptions.st +y Package: kvoptions 2020-10-07 v3.14 Key value format for package options (HO) ) \@linkdim=\dimen148 \Hy@linkcounter=\count194 \Hy@pagecounter=\count195 - (C:\Users\anton\AppData\Local\Programs\MiKTeX\tex/latex/hyperref\pd1enc.def + (C:\Users\Arthur\AppData\Local\Programs\MiKTeX\tex/latex/hyperref\pd1enc.def File: pd1enc.def 2020-05-15 v7.00e Hyperref: PDFDocEncoding definition (HO) Now handling font encoding PD1 ... ... no UTF-8 mapping file for font encoding PD1 ) -(C:\Users\anton\AppData\Local\Programs\MiKTeX\tex/generic/intcalc\intcalc.sty +(C:\Users\Arthur\AppData\Local\Programs\MiKTeX\tex/generic/intcalc\intcalc.sty Package: intcalc 2019/12/15 v1.3 Expandable calculations with integers (HO) ) -(C:\Users\anton\AppData\Local\Programs\MiKTeX\tex/generic/etexcmds\etexcmds.sty +(C:\Users\Arthur\AppData\Local\Programs\MiKTeX\tex/generic/etexcmds\etexcmds.st +y Package: etexcmds 2019/12/15 v1.7 Avoid name clashes with e-TeX commands (HO) ) \Hy@SavedSpaceFactor=\count196 @@ -152,18 +153,18 @@ Package hyperref Info: Backreferencing OFF on input line 4484. Package hyperref Info: Implicit mode ON; LaTeX internals redefined. Package hyperref Info: Bookmarks ON on input line 4717. \c@Hy@tempcnt=\count197 - (C:\Users\anton\AppData\Local\Programs\MiKTeX\tex/latex/url\url.sty + (C:\Users\Arthur\AppData\Local\Programs\MiKTeX\tex/latex/url\url.sty \Urlmuskip=\muskip16 Package: url 2013/09/16 ver 3.4 Verb mode for urls, etc. ) LaTeX Info: Redefining \url on input line 5076. \XeTeXLinkMargin=\dimen149 -(C:\Users\anton\AppData\Local\Programs\MiKTeX\tex/generic/bitset\bitset.sty +(C:\Users\Arthur\AppData\Local\Programs\MiKTeX\tex/generic/bitset\bitset.sty Package: bitset 2019/12/09 v1.3 Handle bit-vector datatype (HO) -(C:\Users\anton\AppData\Local\Programs\MiKTeX\tex/generic/bigintcalc\bigintcalc -.sty +(C:\Users\Arthur\AppData\Local\Programs\MiKTeX\tex/generic/bigintcalc\bigintcal +c.sty Package: bigintcalc 2019/12/15 v1.5 Expandable calculations on big integers (HO ) )) @@ -180,7 +181,7 @@ Package hyperref Info: PDF/A mode OFF on input line 6377. LaTeX Info: Redefining \ref on input line 6417. LaTeX Info: Redefining \pageref on input line 6421. -(C:\Users\anton\AppData\Local\Programs\MiKTeX\tex/latex/base\atbegshi-ltx.sty +(C:\Users\Arthur\AppData\Local\Programs\MiKTeX\tex/latex/base\atbegshi-ltx.sty Package: atbegshi-ltx 2020/08/17 v1.0a Emulation of the original atbegshi packa ge with kernel methods @@ -190,10 +191,10 @@ with kernel methods \c@Hfootnote=\count267 ) Package hyperref Info: Driver (autodetected): hpdftex. -(C:\Users\anton\AppData\Local\Programs\MiKTeX\tex/latex/hyperref\hpdftex.def + (C:\Users\Arthur\AppData\Local\Programs\MiKTeX\tex/latex/hyperref\hpdftex.def File: hpdftex.def 2020-05-15 v7.00e Hyperref driver for pdfTeX -(C:\Users\anton\AppData\Local\Programs\MiKTeX\tex/latex/base\atveryend-ltx.sty +(C:\Users\Arthur\AppData\Local\Programs\MiKTeX\tex/latex/base\atveryend-ltx.sty Package: atveryend-ltx 2020/08/19 v1.0a Emulation of the original atvery packag e with kernel methods @@ -201,12 +202,12 @@ with kernel methods \Fld@listcount=\count268 \c@bookmark@seq@number=\count269 -(C:\Users\anton\AppData\Local\Programs\MiKTeX\tex/latex/rerunfilecheck\rerunfil -echeck.sty +(C:\Users\Arthur\AppData\Local\Programs\MiKTeX\tex/latex/rerunfilecheck\rerunfi +lecheck.sty Package: rerunfilecheck 2019/12/05 v1.9 Rerun checks for auxiliary files (HO) -(C:\Users\anton\AppData\Local\Programs\MiKTeX\tex/generic/uniquecounter\uniquec -ounter.sty +(C:\Users\Arthur\AppData\Local\Programs\MiKTeX\tex/generic/uniquecounter\unique +counter.sty Package: uniquecounter 2019/12/15 v1.4 Provide unlimited unique counter (HO) ) Package uniquecounter Info: New unique counter `rerunfilecheck' on input line 2 @@ -214,28 +215,29 @@ Package uniquecounter Info: New unique counter `rerunfilecheck' on input line 2 ) \Hy@SectionHShift=\skip49 ) -(C:\Users\anton\AppData\Local\Programs\MiKTeX\tex/latex/graphics\graphicx.sty +(C:\Users\Arthur\AppData\Local\Programs\MiKTeX\tex/latex/graphics\graphicx.sty Package: graphicx 2020/09/09 v1.2b Enhanced LaTeX Graphics (DPC,SPQR) -(C:\Users\anton\AppData\Local\Programs\MiKTeX\tex/latex/graphics\graphics.sty +(C:\Users\Arthur\AppData\Local\Programs\MiKTeX\tex/latex/graphics\graphics.sty Package: graphics 2020/08/30 v1.4c Standard LaTeX Graphics (DPC,SPQR) -(C:\Users\anton\AppData\Local\Programs\MiKTeX\tex/latex/graphics\trig.sty +(C:\Users\Arthur\AppData\Local\Programs\MiKTeX\tex/latex/graphics\trig.sty Package: trig 2016/01/03 v1.10 sin cos tan (DPC) ) -(C:\Users\anton\AppData\Local\Programs\MiKTeX\tex/latex/graphics-cfg\graphics.c -fg +(C:\Users\Arthur\AppData\Local\Programs\MiKTeX\tex/latex/graphics-cfg\graphics. +cfg File: graphics.cfg 2016/06/04 v1.11 sample graphics configuration ) Package graphics Info: Driver file: pdftex.def on input line 105. -(C:\Users\anton\AppData\Local\Programs\MiKTeX\tex/latex/graphics-def\pdftex.def +(C:\Users\Arthur\AppData\Local\Programs\MiKTeX\tex/latex/graphics-def\pdftex.de +f File: pdftex.def 2020/10/05 v1.2a Graphics/color driver for pdftex )) \Gin@req@height=\dimen152 \Gin@req@width=\dimen153 ) -(C:\Users\anton\AppData\Local\Programs\MiKTeX\tex/latex/listings\listings.sty +(C:\Users\Arthur\AppData\Local\Programs\MiKTeX\tex/latex/listings\listings.sty \lst@mode=\count270 \lst@gtempboxa=\box47 \lst@token=\toks19 @@ -249,33 +251,34 @@ File: pdftex.def 2020/10/05 v1.2a Graphics/color driver for pdftex \lst@lineno=\count275 \lst@maxwidth=\dimen157 -(C:\Users\anton\AppData\Local\Programs\MiKTeX\tex/latex/listings\lstmisc.sty +(C:\Users\Arthur\AppData\Local\Programs\MiKTeX\tex/latex/listings\lstmisc.sty File: lstmisc.sty 2020/03/24 1.8d (Carsten Heinz) \c@lstnumber=\count276 \lst@skipnumbers=\count277 \lst@framebox=\box48 ) -(C:\Users\anton\AppData\Local\Programs\MiKTeX\tex/latex/listings\listings.cfg +(C:\Users\Arthur\AppData\Local\Programs\MiKTeX\tex/latex/listings\listings.cfg File: listings.cfg 2020/03/24 1.8d listings configuration )) Package: listings 2020/03/24 1.8d (Carsten Heinz) -(C:\Users\anton\AppData\Local\Programs\MiKTeX\tex/latex/algorithm2e\algorithm2e -.sty +(C:\Users\Arthur\AppData\Local\Programs\MiKTeX\tex/latex/algorithm2e\algorithm2 +e.sty Package: algorithm2e 2017/07/18 v5.2 algorithms environments \c@AlgoLine=\count278 - (C:\Users\anton\AppData\Local\Programs\MiKTeX\tex/latex/base\ifthen.sty + (C:\Users\Arthur\AppData\Local\Programs\MiKTeX\tex/latex/base\ifthen.sty Package: ifthen 2014/09/29 v1.1c Standard LaTeX ifthen package (DPC) ) \algocf@hangindent=\skip50 -(C:\Users\anton\AppData\Local\Programs\MiKTeX\tex/latex/ifoddpage\ifoddpage.sty +(C:\Users\Arthur\AppData\Local\Programs\MiKTeX\tex/latex/ifoddpage\ifoddpage.st +y Package: ifoddpage 2016/04/23 v1.1 Conditionals for odd/even page detection \c@checkoddpage=\count279 -) -(C:\Users\anton\AppData\Local\Programs\MiKTeX\tex/latex/latex-tools\xspace.sty +) (C:\Users\Arthur\AppData\Local\Programs\MiKTeX\tex/latex/tools\xspace.sty Package: xspace 2014/10/28 v1.13 Space after command names (DPC,MH) -) (C:\Users\anton\AppData\Local\Programs\MiKTeX\tex/latex/relsize\relsize.sty +) +(C:\Users\Arthur\AppData\Local\Programs\MiKTeX\tex/latex/relsize\relsize.sty Package: relsize 2013/03/29 ver 4.1 ) \skiptotal=\skip51 @@ -314,9 +317,9 @@ Package: relsize 2013/03/29 ver 4.1 \algocf@algoframe=\box55 \algocf@algobox=\box56 ) -(C:\Users\anton\AppData\Local\Programs\MiKTeX\tex/latex/l3backend\l3backend-pdf -tex.def -File: l3backend-pdftex.def 2021-01-09 L3 backend support: PDF output (pdfTeX) +(C:\Users\Arthur\AppData\Local\Programs\MiKTeX\tex/latex/l3backend\l3backend-pd +ftex.def +File: l3backend-pdftex.def 2020-09-24 L3 backend support: PDF output (pdfTeX) \l__kernel_color_stack_int=\count283 \l__pdf_internal_box=\box57 ) (Rapport.aux) @@ -343,14 +346,14 @@ LaTeX Info: Redefining \dots on input line 18. LaTeX Info: Redefining \up on input line 18. Package hyperref Info: Link coloring OFF on input line 18. -(C:\Users\anton\AppData\Local\Programs\MiKTeX\tex/latex/hyperref\nameref.sty +(C:\Users\Arthur\AppData\Local\Programs\MiKTeX\tex/latex/hyperref\nameref.sty Package: nameref 2019/09/16 v2.46 Cross-referencing by name of section -(C:\Users\anton\AppData\Local\Programs\MiKTeX\tex/latex/refcount\refcount.sty +(C:\Users\Arthur\AppData\Local\Programs\MiKTeX\tex/latex/refcount\refcount.sty Package: refcount 2019/12/15 v3.6 Data extraction from label references (HO) ) -(C:\Users\anton\AppData\Local\Programs\MiKTeX\tex/generic/gettitlestring\gettit -lestring.sty +(C:\Users\Arthur\AppData\Local\Programs\MiKTeX\tex/generic/gettitlestring\getti +tlestring.sty Package: gettitlestring 2019/12/15 v1.6 Cleanup title references (HO) ) \c@section@level=\count284 @@ -363,8 +366,8 @@ LaTeX Info: Redefining \nameref on input line 18. \openout3 = `Rapport.out'. -(C:\Users\anton\AppData\Local\Programs\MiKTeX\tex/context/base/mkii\supp-pdf.mk -ii +(C:\Users\Arthur\AppData\Local\Programs\MiKTeX\tex/context/base/mkii\supp-pdf.m +kii [Loading MPS to PDF converter (version 2006.09.02).] \scratchcounter=\count285 \scratchdimen=\dimen164 @@ -378,8 +381,8 @@ ii \makeMPintoPDFobject=\count290 \everyMPtoPDFconversion=\toks21 ) -(C:\Users\anton\AppData\Local\Programs\MiKTeX\tex/latex/epstopdf-pkg\epstopdf-b -ase.sty +(C:\Users\Arthur\AppData\Local\Programs\MiKTeX\tex/latex/epstopdf-pkg\epstopdf- +base.sty Package: epstopdf-base 2020-01-24 v2.11 Base part for package epstopdf Package epstopdf-base Info: Redefining graphics rule for `.eps' on input line 4 85. @@ -391,7 +394,7 @@ LaTeX Font Info: External font `cmex10' loaded for size (Font) <7> on input line 21. [0 -{C:/Users/anton/AppData/Local/MiKTeX/pdftex/config/pdftex.map}] +{C:/Users/Arthur/AppData/Local/MiKTeX/pdftex/config/pdftex.map}] (Rapport.toc LaTeX Font Info: External font `cmex10' loaded for size (Font) <12> on input line 4. @@ -403,13 +406,12 @@ LaTeX Font Info: External font `cmex10' loaded for size \tf@toc=\write4 \openout4 = `Rapport.toc'. - [1] -(C:\Users\anton\AppData\Local\Programs\MiKTeX\tex/latex/listings\lstlang1.sty + [1] [2] +(C:\Users\Arthur\AppData\Local\Programs\MiKTeX\tex/latex/listings\lstlang1.sty File: lstlang1.sty 2020/03/24 1.8d listings language file ) Package hyperref Info: bookmark level for unknown lstlisting defaults to 0 on i -nput line 38. - +nput line 39. (NegamaxPlayer.txt Overfull \hbox (138.62549pt too wide) in paragraph at lines 4--5 [][][][][][][][][][][][][][][][][][][][][][][][][][][][][] @@ -420,7 +422,7 @@ Overfull \hbox (180.91553pt too wide) in paragraph at lines 20--21 [][][][][][][][][][][][][][][][][][][][][][][][][][][][][][] [] -[2]) (AlphaBetaPlayer.txt +) [3] (AlphaBetaPlayer.txt Overfull \hbox (131.57715pt too wide) in paragraph at lines 5--6 [][][][][][][][][][][][][][][][][][][][][][][][][][][][][] [] @@ -445,185 +447,168 @@ Overfull \hbox (166.81885pt too wide) in paragraph at lines 23--24 [][][][][][][][][][][][][][][][][][][][][][][][][] [] -[3]) -Underfull \hbox (badness 10000) in paragraph at lines 48--53 +) [4] +Underfull \hbox (badness 10000) in paragraph at lines 50--55 [] -[4] +[5] File: alphabeta.png Graphic file (type png) -Package pdftex.def Info: alphabeta.png used on input line 58. +Package pdftex.def Info: alphabeta.png used on input line 60. (pdftex.def) Requested size: 390.0pt x 241.1508pt. File: negamax.png Graphic file (type png) -Package pdftex.def Info: negamax.png used on input line 62. +Package pdftex.def Info: negamax.png used on input line 64. (pdftex.def) Requested size: 390.0pt x 241.1508pt. File: prof1alphabeta.png Graphic file (type png) -Package pdftex.def Info: prof1alphabeta.png used on input line 70. +Package pdftex.def Info: prof1alphabeta.png used on input line 72. (pdftex.def) Requested size: 390.0pt x 241.1508pt. - [5 <./alphabeta.png> <./negamax.png>] -Underfull \hbox (badness 10000) in paragraph at lines 73--75 + [6 <./alphabeta.png> <./negamax.png>] +Underfull \hbox (badness 10000) in paragraph at lines 75--77 [] -[6 <./prof1alphabeta.png>] +[7 <./prof1alphabeta.png>] File: prof2alphabeta.png Graphic file (type png) -Package pdftex.def Info: prof2alphabeta.png used on input line 82. +Package pdftex.def Info: prof2alphabeta.png used on input line 84. (pdftex.def) Requested size: 390.0pt x 241.1508pt. -Underfull \hbox (badness 10000) in paragraph at lines 85--88 +Underfull \hbox (badness 10000) in paragraph at lines 87--90 [] -[7 <./prof2alphabeta.png>] +[8 <./prof2alphabeta.png>] File: prof3alphabeta.png Graphic file (type png) -Package pdftex.def Info: prof3alphabeta.png used on input line 95. +Package pdftex.def Info: prof3alphabeta.png used on input line 97. (pdftex.def) Requested size: 390.0pt x 241.1508pt. -Underfull \hbox (badness 10000) in paragraph at lines 98--100 +Underfull \hbox (badness 10000) in paragraph at lines 100--102 [] -[8 <./prof3alphabeta.png>] +[9 <./prof3alphabeta.png>] File: prof4alphabeta.png Graphic file (type png) -Package pdftex.def Info: prof4alphabeta.png used on input line 108. +Package pdftex.def Info: prof4alphabeta.png used on input line 110. (pdftex.def) Requested size: 390.0pt x 241.1508pt. -Underfull \hbox (badness 10000) in paragraph at lines 111--113 +Underfull \hbox (badness 10000) in paragraph at lines 113--115 [] -[9 <./prof4alphabeta.png>] - -File: prof4alphabeta-console.png Graphic file (type png) - -Package pdftex.def Info: prof4alphabeta-console.png used on input line 118. -(pdftex.def) Requested size: 390.0pt x 182.4463pt. - [10 <./prof4alphabeta-console.png>] - +[10 <./prof4alphabeta.png>] + File: prof5alphabeta.png Graphic file (type png) -Package pdftex.def Info: prof5alphabeta.png used on input line 127. +Package pdftex.def Info: prof5alphabeta.png used on input line 125. (pdftex.def) Requested size: 390.0pt x 241.1508pt. -Underfull \hbox (badness 10000) in paragraph at lines 130--133 +Underfull \hbox (badness 10000) in paragraph at lines 128--131 [] -Overfull \hbox (2.61531pt too wide) in paragraph at lines 134--136 +Overfull \hbox (2.61531pt too wide) in paragraph at lines 132--134 []\T1/cmr/m/n/12 Identique au pré-cé-dent gra-phique, la courbe est plu-tôt li- néaire et le nombre [] [11 <./prof5alphabeta.png>] - -File: prof5alphabeta-console.png Graphic file (type png) - -Package pdftex.def Info: prof5alphabeta-console.png used on input line 138. -(pdftex.def) Requested size: 390.0pt x 187.25554pt. - -Underfull \hbox (badness 10000) in paragraph at lines 145--149 +Underfull \hbox (badness 10000) in paragraph at lines 139--143 [] -[12 <./prof5alphabeta-console.png>] - +[12] + File: prof1negamax.png Graphic file (type png) -Package pdftex.def Info: prof1negamax.png used on input line 159. +Package pdftex.def Info: prof1negamax.png used on input line 153. (pdftex.def) Requested size: 390.0pt x 241.1508pt. [13 <./prof1negamax.png>] - + File: prof2negamax.png Graphic file (type png) -Package pdftex.def Info: prof2negamax.png used on input line 171. +Package pdftex.def Info: prof2negamax.png used on input line 165. (pdftex.def) Requested size: 390.0pt x 241.1508pt. [14 <./prof2negamax.png>] - + File: prof3negamax.png Graphic file (type png) -Package pdftex.def Info: prof3negamax.png used on input line 185. +Package pdftex.def Info: prof3negamax.png used on input line 179. (pdftex.def) Requested size: 390.0pt x 241.1508pt. -Underfull \hbox (badness 10000) in paragraph at lines 188--190 +Underfull \hbox (badness 10000) in paragraph at lines 182--184 [] [15 <./prof3negamax.png>] - + File: prof4negamax.png Graphic file (type png) -Package pdftex.def Info: prof4negamax.png used on input line 198. +Package pdftex.def Info: prof4negamax.png used on input line 192. (pdftex.def) Requested size: 390.0pt x 241.15366pt. - [16 <./prof4negamax.png>] - -File: prof4negamax-console.png Graphic file (type png) - -Package pdftex.def Info: prof4negamax-console.png used on input line 205. -(pdftex.def) Requested size: 390.0pt x 203.08464pt. - [17 <./prof4negamax-console.png>] [18] - + [16 <./prof4negamax.png>] [17] + File: prof2alphaVSnegamax.png Graphic file (type png) -Package pdftex.def Info: prof2alphaVSnegamax.png used on input line 228. +Package pdftex.def Info: prof2alphaVSnegamax.png used on input line 219. (pdftex.def) Requested size: 390.0pt x 241.1508pt. - [19 <./prof2alphaVSnegamax.png>] - + [18 <./prof2alphaVSnegamax.png>] + File: prof2negamaxVSalpha.png Graphic file (type png) -Package pdftex.def Info: prof2negamaxVSalpha.png used on input line 238. +Package pdftex.def Info: prof2negamaxVSalpha.png used on input line 229. (pdftex.def) Requested size: 390.0pt x 241.1508pt. - [20 <./prof2negamaxVSalpha.png>] + [19 <./prof2negamaxVSalpha.png>] +Underfull \hbox (badness 10000) in paragraph at lines 242--243 + + [] + + Underfull \hbox (badness 10000) in paragraph at lines 251--252 [] - -Underfull \hbox (badness 10000) in paragraph at lines 260--261 - - [] - -[21] (Rapport.aux) +[20] (Rapport.aux) Package rerunfilecheck Info: File `Rapport.out' has not changed. -(rerunfilecheck) Checksum: EDFE9D99E5E23084C392C6E02A66C3BB;1908. +(rerunfilecheck) Checksum: 13812EF8931324EFED36E3EC415C52B4;1863. ) Here is how much of TeX's memory you used: - 9987 strings out of 479618 - 152591 string characters out of 2865027 - 703366 words of memory out of 3000000 - 26892 multiletter control sequences out of 15000+200000 - 414266 words of font info for 49 fonts, out of 3000000 for 9000 + 9928 strings out of 479697 + 151484 string characters out of 2866658 + 691355 words of memory out of 3000000 + 26757 multiletter control sequences out of 15000+200000 + 415031 words of font info for 50 fonts, out of 3000000 for 9000 1141 hyphenation exceptions out of 8191 - 71i,6n,74p,396b,1916s stack positions out of 5000i,500n,10000p,200000b,50000s - -Output written on Rapport.pdf (22 pages, 775955 bytes). + 66i,6n,72p,396b,1197s stack positions out of 5000i,500n,10000p,200000b,50000s + +Output written on Rapport.pdf (21 pages, 751571 bytes). PDF statistics: - 650 PDF objects out of 1000 (max. 8388607) - 109 named destinations out of 1000 (max. 500000) - 297 words of extra memory for PDF output out of 10000 (max. 10000000) + 637 PDF objects out of 1000 (max. 8388607) + 107 named destinations out of 1000 (max. 500000) + 274 words of extra memory for PDF output out of 10000 (max. 10000000) diff --git a/Rapport/Rapport.out b/Rapport/Rapport.out index e7e934b..acb00e5 100644 --- a/Rapport/Rapport.out +++ b/Rapport/Rapport.out @@ -22,6 +22,5 @@ \BOOKMARK [3][-]{subsubsection.3.4.1}{Profondeur 2, AlphaBeta premier joueur, Negamax second}{subsection.3.4}% 22 \BOOKMARK [3][-]{subsubsection.3.4.2}{Profondeur 2, Negamax premier joueur, AlphaBeta second}{subsection.3.4}% 23 \BOOKMARK [3][-]{subsubsection.3.4.3}{Conclusion de AlphaBeta vs Negamax}{subsection.3.4}% 24 -\BOOKMARK [1][-]{section.4}{Difficult\351s rencontr\351s}{}% 25 +\BOOKMARK [1][-]{section.4}{Difficult\351s rencontr\351es}{}% 25 \BOOKMARK [1][-]{section.5}{Exp\351rimentations}{}% 26 -\BOOKMARK [1][-]{section.6}{Conclusion}{}% 27 diff --git a/Rapport/Rapport.pdf b/Rapport/Rapport.pdf index 0611125..d6a5d51 100644 Binary files a/Rapport/Rapport.pdf and b/Rapport/Rapport.pdf differ diff --git a/Rapport/Rapport.synctex.gz b/Rapport/Rapport.synctex.gz index 93ab15d..cf4b8f4 100644 Binary files a/Rapport/Rapport.synctex.gz and b/Rapport/Rapport.synctex.gz differ diff --git a/Rapport/Rapport.tex b/Rapport/Rapport.tex index c862c3e..0f3b25b 100644 --- a/Rapport/Rapport.tex +++ b/Rapport/Rapport.tex @@ -29,6 +29,7 @@ Le but de notre projet était de concevoir un algorithme de recherche performant sur un jeu d' \textit{Othello}. Le jeu est le plus abstrait possible, la partie nous intéressant étant la réalisation d'un algorithme de recherche efficace. Il est ainsi impossible de jouer au jeu, on ne peut que regarder le résultat d'une partie entre deux joueurs artificiels.\\ Une fois le jeu et l'algorithme de recherche implémentés, nous serons en mesure d'analyser ce dernier pour définir ses paramètres de fonctionnement optimaux. Nous aborderons dans un premier temps l'implémentation du jeu, puis celle de l'algorithme et enfin la présentation et l'analyse des mesures observées. +\newpage \section{L'algorithme de recherche} \subsection{Algorithme de base} @@ -36,22 +37,23 @@ Une fois le jeu et l'algorithme de recherche implémentés, nous serons en mesur Nous avons utilisé un algorithme Negamax pour résoudre le problème. \lstinputlisting[language=Java]{NegamaxPlayer.txt} +\newpage \subsection{Algorithme d'élagage} \lstinputlisting[language=Java]{AlphaBetaPlayer.txt} - +\newpage \section{Mesures} \subsection{Présentation} Les graphiques qui vont suivre ont été conçus à l’aide des algorithmes AlphaBeta et Negamax.\\ Ils sont l’objet de comparaisons entre les algorithmes, en fonction de leur type ou du joueur concerné (premier ou second joueur).\\ -Ils traduisent la complexité de l’algorithmes (le nombre de nÅ“uds traversés) au fur et à mesure des tours de la partie.\\ +Ils traduisent la complexité de l’algorithme (le nombre de nÅ“uds traversés) au fur et à mesure des tours de la partie.\\ Le premier joueur est associé à la courbe rouge et le deuxième à la bleue.\\ La profondeur de recherche des deux joueurs sera toujours la même.\\ -Tout les tests incluant un temps ont été fait sur la même machine et en même temps: Raspberry pi 3 avec un processeur Quad Core 1.2GHz 64bit sous Raspbian OS 32 bits sans Bureau. +Tous les tests incluant un temps ont été fait sur la même machine et en même temps : Raspberry pi 3 avec un processeur Quad Core 1.2GHz 64bit sous Raspbian OS 32 bits sans Bureau. \newpage \begin{figure}[!h] @@ -70,7 +72,7 @@ Tout les tests incluant un temps ont été fait sur la même machine et en même \includegraphics[width=\textwidth]{prof1alphabeta.png} \end{figure} -Le joueur 1 obtient assez vite (tour 5) un avantage (il possède plus de possibilités) qui augmente au fur et à mesure des tours. A son maximum (tour 20) cet avantage est 47\% plus important par rapport au second joueur.\\ +Le joueur 1 obtient assez vite (tour 5) un avantage (il possède plus de possibilités) qui augmente au fur et à mesure des tours. À son maximum (tour 20) cet avantage est 47\% plus important par rapport au second joueur.\\ Cependant, c'est le second joueur qui gagne la partie.\\ L’augmentation de la complexité est plutôt linéaire.\\ @@ -87,7 +89,7 @@ Le nombre de tours est largement inférieur par rapport au précédent graphique Mais malgré cet avantage, la victoire est pour le joueur 1.\\ La courbe est linéaire, comme sur le graphique précédent.\\ -Être le premier à jouer semble donner un avantage, et le nombre de possibilités du joueur 2 plus important n’est pas suffisant pour le résorber. La profondeur ne semble pas forcément augmenter le nombre de possibilités. +Être le premier à jouer semble donner un avantage et le nombre de possibilités du joueur 2 plus important n’est pas suffisant pour le résorber. La profondeur ne semble pas forcément augmenter le nombre de possibilités. \newpage \subsubsection{Profondeur 3} @@ -113,10 +115,6 @@ C'est le premier joueur qui remporte la partie.\\ Comme précédemment, la courbe est plutôt linéaire. Le nombre de tours est similaire à l'algorithme de profondeur inférieur.\\ Sans avantage, le joueur 2 ne semble pas pouvoir renverser la tendance et doit s'incliner. -\newpage -\begin{figure}[!h] - \includegraphics[width=\textwidth]{prof4alphabeta-console.png} -\end{figure} Le temps de résolution de cet algorithme est de 1 minute et 38 secondes pour un total de 1 661 nÅ“uds visités (pour les deux joueurs). @@ -128,18 +126,14 @@ Le temps de résolution de cet algorithme est de 1 minute et 38 secondes pour un \end{figure} Au tour 5 environ, le premier joueur obtient un léger avantage qui se résorbe au tour 22.\\ -Ensuite, c'est le second joueur qui gagne un petit avantage qui se maintient jusqu'à la fin de la partie .\\ +Ensuite, c'est le second joueur qui gagne un petit avantage qui se maintient jusqu'à la fin de la partie.\\ Malgré l'avantage du joueur 2 à la fin, c'est le joueur 1 qui l'emporte.\\ Identique au précédent graphique, la courbe est plutôt linéaire et le nombre de tours n'augmente pas.\\ L'avantage du second joueur sur la fin de la partie ne semble pas suffisant pour l'emporter. -\newpage -\begin{figure}[!h] - \includegraphics[width=\textwidth]{prof5alphabeta-console.png} -\end{figure} Pour 1 702 nÅ“uds visités, l’algorithme dure 7 minutes et 47 secondes. - +\newpage \subsubsection{Conclusion d’Alphabeta} L'ordre n'est pas un avantage. @@ -147,7 +141,7 @@ Le second joueur surpasse des fois le premier joueur, alors qu'il n'a pas de ré De plus, le second joueur possède un avantage de 79\% au maximum par rapport au premier joueur avec l'algorithme Alphabeta de profondeur 2. Et malgré cet avantage, c'est le joueur 1 qui remporte la partie. Il semblerait que le nombre de possibilités n'influe pas sur la victoire avec cet algorithme, malgré ce qu'on pourrait logiquement penser.\\ -L’augmentation de la profondeur de l’algorithme AlphaBeta n’augmente pas forcément la complexité de ce dernier. Cependant, l’augmentation de la complexité en fonction du nombre de tour est relativement linéaire.\\ +L’augmentation de la profondeur de l’algorithme AlphaBeta n’augmente pas forcément la complexité de ce dernier. Cependant, l’augmentation de la complexité en fonction du nombre de tours est relativement linéaire.\\ Le temps de résolution des algorithmes pour des petites profondeurs (1, 2, 3) est de quelques secondes, mais augmente drastiquement avec la profondeur, AlphaBeta de profondeur 5 s’exécute durant plusieurs minutes. \newpage @@ -159,7 +153,7 @@ Le temps de résolution des algorithmes pour des petites profondeurs (1, 2, 3) e \includegraphics[width=\textwidth]{prof1negamax.png} \end{figure} -Aucun des joueurs n’a d’avantage particulier.\\ +Aucun des joueurs n’a davantage particulier.\\ La complexité est environ 30 fois plus importante qu’AlphaBeta.\\ Le joueur 2 est le gagnant. Avec cet algorithme, aussi, il semblerait que l'ordre ne soit pas un avantage.\\ L’augmentation de la complexité est moins importante au début et à la fin de partie, mais est assez linéaire. @@ -173,7 +167,7 @@ L’augmentation de la complexité est moins importante au début et à la fin d La complexité est 20 fois plus importante qu’avec la profondeur précédente.\\ La forme de la courbe est similaire au graphique précédent.\\ -Aucun joueur n’a d’avantage majeur au cours de la partie. Le second joueur a un avantage qui commence au tour 19 jusqu'à ka fin de la partie. Cet avantage atteint au maximum 37\% par rapport au joueur 1. \\ +Aucun joueur n’a davantage majeur au cours de la partie. Le second joueur a un avantage qui commence au tour 19 jusqu'à la fin de la partie. Cet avantage atteint au maximum 37\% par rapport au joueur 1. \\ Cependant, c’est le premier joueur qui l’emporte, alors qu’il n’avait pas un grand avantage. La complexité est bien plus importante qu'avec le précédent algorithme, mais le nombre de tours est plus petit. @@ -200,18 +194,15 @@ La complexité est bien plus grande qu'avec le précédent graphique, mais le no La complexité est environ 10 fois supérieur à Negamax de profondeur 3. Le premier joueur possède un avantage au tour 10 qui augmente jusqu’au tour 22 et se réduit ensuite jusqu’à la fin de la partie.\\ Malgré cet avantage, c’est le second joueur qui remporte la partie. -\newpage -\begin{figure}[!h] - \includegraphics[width=\textwidth]{prof4negamax-console.png} -\end{figure} + Pour le parcours des 536 329 836 nÅ“uds, l’algorithme met 70 minutes et 57 secondes. - +\newpage \subsubsection{Profondeur 5} Nous avons estimé la complexité de Negamax de profondeur 5 à au moins 8.2 milliards de nÅ“uds.\\ -Nous avons é de le lancer, mais après 28 heures d’exécution sur le Raspberry Pi celui-ci n’étais pas terminé, de plus la complexité stockée comme attribut de la classe Player est stocké sur un entier signé 32 bits dont la limite positive est $2^{31} - 1$ soit inférieur à 8 milliards. -\newpage +Nous avons décidé de le lancer, mais après 28 heures d’exécution sur le Raspberry Pi celui-ci n’étais pas terminé, de plus la complexité stockée comme attribut de la classe Player est stocké sur un entier signé 32 bits dont la limite positive est $2^{31} - 1$ soit inférieur à 8 milliards. + \subsubsection{Conclusion de Negamax} L’augmentation de la complexité en fonction de la profondeur de l’algorithme est exponentielle.\\ @@ -242,13 +233,13 @@ Identiquement au graphique précédent, le premier joueur utilisant l'algorithme \subsubsection{Conclusion de AlphaBeta vs Negamax} -L'algorithme Negamax parcours beaucoup plus de noeud, il prend rapidement un très gros avantage. +L'algorithme Negamax parcours beaucoup plus de noeuds, il prend rapidement un très gros avantage. Cet algorithme est plus efficace qu'AlphaBeta, mais il est plus long à exécuter. \newpage -\section{Difficultés rencontrés} +\section{Difficultés rencontrées} -Nous avons rencontré quelques difficultés durant la réalisation du jeu, notamment dû à des incompréhensions des règles du jeu:\\ +Nous avons rencontré quelques difficultés durant la réalisation du jeu, notamment dû à des incompréhensions des règles du jeu :\\ \begin{itemize} \item Lors du clonage toutes les cases même inoccupées étaient modifiées. @@ -262,7 +253,4 @@ Nous avons mis en place un writer afin de pouvoir exporter plus facilement les d Le flux s'ouvre au lancement du programme et se ferme à sa fermeture ce qui fait que les fichiers de log resteront vides pendant le fonctionnement du programme, ce qui rend impossible la lecture de la complexité durant le fonctionnement du programme notamment pour le negamax de profondeur 5 ou plus qui demande beaucoup de performances et de temps de calcul. -\section{Conclusion} - - \end{document} \ No newline at end of file diff --git a/Rapport/Rapport.toc b/Rapport/Rapport.toc index b6d1b69..eb3720e 100644 --- a/Rapport/Rapport.toc +++ b/Rapport/Rapport.toc @@ -1,15 +1,15 @@ \babel@toc {french}{} \contentsline {section}{\numberline {1}Introduction}{2}{section.1}% -\contentsline {section}{\numberline {2}L'algorithme de recherche}{2}{section.2}% -\contentsline {subsection}{\numberline {2.1}Algorithme de base}{2}{subsection.2.1}% -\contentsline {subsection}{\numberline {2.2}Algorithme d'élagage}{3}{subsection.2.2}% -\contentsline {section}{\numberline {3}Mesures}{4}{section.3}% -\contentsline {subsection}{\numberline {3.1}Présentation}{4}{subsection.3.1}% -\contentsline {subsection}{\numberline {3.2}AlphaBeta}{6}{subsection.3.2}% -\contentsline {subsubsection}{\numberline {3.2.1}Profondeur 1}{6}{subsubsection.3.2.1}% -\contentsline {subsubsection}{\numberline {3.2.2}Profondeur 2}{7}{subsubsection.3.2.2}% -\contentsline {subsubsection}{\numberline {3.2.3}Profondeur 3}{8}{subsubsection.3.2.3}% -\contentsline {subsubsection}{\numberline {3.2.4}Profondeur 4}{9}{subsubsection.3.2.4}% +\contentsline {section}{\numberline {2}L'algorithme de recherche}{3}{section.2}% +\contentsline {subsection}{\numberline {2.1}Algorithme de base}{3}{subsection.2.1}% +\contentsline {subsection}{\numberline {2.2}Algorithme d'élagage}{4}{subsection.2.2}% +\contentsline {section}{\numberline {3}Mesures}{5}{section.3}% +\contentsline {subsection}{\numberline {3.1}Présentation}{5}{subsection.3.1}% +\contentsline {subsection}{\numberline {3.2}AlphaBeta}{7}{subsection.3.2}% +\contentsline {subsubsection}{\numberline {3.2.1}Profondeur 1}{7}{subsubsection.3.2.1}% +\contentsline {subsubsection}{\numberline {3.2.2}Profondeur 2}{8}{subsubsection.3.2.2}% +\contentsline {subsubsection}{\numberline {3.2.3}Profondeur 3}{9}{subsubsection.3.2.3}% +\contentsline {subsubsection}{\numberline {3.2.4}Profondeur 4}{10}{subsubsection.3.2.4}% \contentsline {subsubsection}{\numberline {3.2.5}Profondeur 5}{11}{subsubsection.3.2.5}% \contentsline {subsubsection}{\numberline {3.2.6}Conclusion d’Alphabeta}{12}{subsubsection.3.2.6}% \contentsline {subsection}{\numberline {3.3}Negamax}{13}{subsection.3.3}% @@ -18,11 +18,10 @@ \contentsline {subsubsection}{\numberline {3.3.3}Profondeur 3}{15}{subsubsection.3.3.3}% \contentsline {subsubsection}{\numberline {3.3.4}Profondeur 4}{16}{subsubsection.3.3.4}% \contentsline {subsubsection}{\numberline {3.3.5}Profondeur 5}{17}{subsubsection.3.3.5}% -\contentsline {subsubsection}{\numberline {3.3.6}Conclusion de Negamax}{18}{subsubsection.3.3.6}% -\contentsline {subsection}{\numberline {3.4}Negamax vs AlphaBeta}{19}{subsection.3.4}% -\contentsline {subsubsection}{\numberline {3.4.1}Profondeur 2, AlphaBeta premier joueur, Negamax second}{19}{subsubsection.3.4.1}% -\contentsline {subsubsection}{\numberline {3.4.2}Profondeur 2, Negamax premier joueur, AlphaBeta second}{20}{subsubsection.3.4.2}% -\contentsline {subsubsection}{\numberline {3.4.3}Conclusion de AlphaBeta vs Negamax}{20}{subsubsection.3.4.3}% -\contentsline {section}{\numberline {4}Difficultés rencontrés}{21}{section.4}% -\contentsline {section}{\numberline {5}Expérimentations}{21}{section.5}% -\contentsline {section}{\numberline {6}Conclusion}{21}{section.6}% +\contentsline {subsubsection}{\numberline {3.3.6}Conclusion de Negamax}{17}{subsubsection.3.3.6}% +\contentsline {subsection}{\numberline {3.4}Negamax vs AlphaBeta}{18}{subsection.3.4}% +\contentsline {subsubsection}{\numberline {3.4.1}Profondeur 2, AlphaBeta premier joueur, Negamax second}{18}{subsubsection.3.4.1}% +\contentsline {subsubsection}{\numberline {3.4.2}Profondeur 2, Negamax premier joueur, AlphaBeta second}{19}{subsubsection.3.4.2}% +\contentsline {subsubsection}{\numberline {3.4.3}Conclusion de AlphaBeta vs Negamax}{19}{subsubsection.3.4.3}% +\contentsline {section}{\numberline {4}Difficultés rencontrées}{20}{section.4}% +\contentsline {section}{\numberline {5}Expérimentations}{20}{section.5}%