Jeu d’Othello

17
Jeu d’Othello Projet d’Algorithmique et Programmation Revue Finale Amadou KANE – Maxence MOHR

description

Jeu d’Othello. Revue Finale. Projet d’Algorithmique et Programmation. Amadou KANE – Maxence MOHR. Introduction. Jeu de plateau à deux joueurs : Noirs VS Blancs Othello (Marque déposée) / Reversi (Libre). Objectifs : Appliquer nos connaissances en C et Algorithmique - PowerPoint PPT Presentation

Transcript of Jeu d’Othello

Page 1: Jeu d’Othello

Jeu d’Othello

Projet d’Algorithmique et Programmation

Revue Finale

Amadou KANE – Maxence MOHR

Page 2: Jeu d’Othello

Introduction

• Jeu de plateau à deux joueurs : Noirs VS Blancs

• Othello (Marque déposée) / Reversi (Libre)

Jeu d’Othello – Revue finale - Amadou KANE – Maxence MOHR

Objectifs :• Appliquer nos connaissances en C et

Algorithmique• Mode humain VS humain et humain VS IA

Page 3: Jeu d’Othello

Plan de cet exposé

1. Analyse du sujet et boucles– Boucle « coup »– Boucle « retournement »– Joueur IA

2. Réalisation et Bilan– Difficultés rencontrées– Bilan

Jeu d’Othello – Revue finale - Amadou KANE – Maxence MOHR

Page 4: Jeu d’Othello

Partie 1 : Analyse et boucles

Jeu d’Othello – Revue finale - Amadou KANE – Maxence MOHR

Page 5: Jeu d’Othello

Partie 1 - Analyse du sujet

• Boucle principale : gère le jeu de façon générale

• Boucle affichage : Othellier + Infos de partie• Boucle coup : chercher les coups possibles• Boucle retournement : retourne les pions une

fois le coup joué• Mode IA : Plusieurs niveaux de difficultés

Jeu d’Othello – Revue finale - Amadou KANE – Maxence MOHR

Page 6: Jeu d’Othello

Partie 1 - Principe de la fonction « coup »

Jeu d’Othello – Revue finale - Amadou KANE – Maxence MOHR

Page 7: Jeu d’Othello

Partie 1 - Principe de la fonction « retournement »

Jeu d’Othello – Revue finale - Amadou KANE – Maxence MOHR

Page 8: Jeu d’Othello

Partie 1 - Le mode IA

• Maximisation : le mode facile-> Stratégie non recommandée pour gagner à l’Othello car dangereux.-> Ne prends pas en compte le joueur humain…

• MiniMax :-> Voit plusieurs coups en avance, en prenant en compte le joueur adverse.

Principe ici pour trois traits à l’avance: 1. l’ordinateur essaye de maximiser ses gains2. Le joueur humain minimise les gains de l’IA3. L’ordinateur maximise à nouveau ses gains

Jeu d’Othello – Revue finale - Amadou KANE – Maxence MOHR

Page 9: Jeu d’Othello

Partie 1 - Le mode IA : le MiniMaxArguments : tableau de jeu, tableau de possibilités, joueur, profondeur Val1=-1000Copie du tableau de jeu (ctabjeu)Copie du tableau de possibilités (ctabpossibl)Pour i de 0 à 7

Pour j de 0 à 7Si case possibleRetourne la case jouée sur ctabjeuOn prend l’autre joueur (simulation)On recherche les coups possiblesSi prof <= LVal = minimax(ctabjeu, ctabpossibl, joueur, prof++)Si val > val1Val1=valX=iY=jComparaison des tableaux de jeuCalcul des valeurs des cases retournéesFIN -> Renvoie valeur, x, y

Jeu d’Othello – Revue finale - Amadou KANE – Maxence MOHR

Page 10: Jeu d’Othello

Partie 1 - Le mode IA : le MiniMax

Jeu d’Othello – Revue finale - Amadou KANE – Maxence MOHR

Page 11: Jeu d’Othello

Partie 2 : La réalisation et bilan

Jeu d’Othello – Revue finale - Amadou KANE – Maxence MOHR

Page 12: Jeu d’Othello

Partie 2 - Difficultés rencontrées

1. Othellier et représentation des tableauxRaison : manque de conditions

2. MiniMax (fonction joueur IA)Raison : Adaptation du code pas évidente

3. Périodes de « creux »Raison : Vacances de Noël, Projet Ouverture, partiels, etc.

Jeu d’Othello – Revue finale - Amadou KANE – Maxence MOHR

Page 13: Jeu d’Othello

Partie 2 - Bilan du projet

• Analyse : OK• Boucle Principale : OK• Boucle Affichage : OK• Boucle Coup : OK, mais a du être débuggée• Boucle Retournement : OK, mais a du être

débuggée• IA Maximisation : OK• Boucle MiniMax : En cours de tests

Jeu d’Othello – Revue finale - Amadou KANE – Maxence MOHR

Page 14: Jeu d’Othello

Conclusion

• Applications de nos connaissances sur un cas complet et intéressant

• Jeu agréable et facile à comprendre que nous apprécions

• Non terminé : Le MiniMax reste à tester correctement

• Le travail à deux est très intéressant, nous avons appris à travailler à deux (points de vue différents)

• Beaucoup de plaisir à le coder, et à y jouer !!

Jeu d’Othello – Revue finale - Amadou KANE – Maxence MOHR

Page 15: Jeu d’Othello

Références et logiciels utilisés

• Références :Fédération Française d’Othello

http://www.ffothello.org

• Logiciels utilisés :Kate/Notepad++ pour la programmationGCC/MinGW pour la compilationMS Word 2007 pour le rapportMS Powerpoint 2007 pour cette présentationMS Project 2010 pour le planning prévisionnelThe GIMP et MS Paint pour les images

Page 16: Jeu d’Othello

Merci de votre écoute

Jeu d’Othello – Revue finale - Amadou KANE – Maxence MOHR

Page 17: Jeu d’Othello

Démonstration

Lancer l’exécutable du jeu

Ouvrir le dossier source du jeuInvite de commande

Rapport Final (Word)

Rapport d’analyse (Word)

Démonstration :

Rapports :

Jeu d’Othello – Revue finale - Amadou KANE – Maxence MOHR