Projet algorithmique en C - Othello

Matériel

Quelques .pdf

  • Sujet: pdf.
  • Mise en route: pdf.
  • Structures de données possibles: pdf.
  • Introduction aux Makefiles : pdf.
  • Minmax et élagage Alpha-Beta : pdf.
  • Fonction d’évaluation (et apprentissage par algorithmes génétiques) : pdf.

Quelques bouts de code

  • Exemple de compilation séparée pour des opérations simples sur des nombres complexes : complexe_lm.zip.
  • Pour vous éviter d’avoir à recopier les .h contenant les structures, les voici : othello_headers.tar.bz2.
  • Implémentation d’un algorithme génétique simple pour la maximisation de la fonction de Rosenbrock : gacomplet.tar.bz2.

Base de parties

  • Base de parties obtenues depuis le site de M. Buro et l’Internet Othello Server (maintenant disparu) : games80000.gam.gz (archive GZippée).

Exemples de rapports

On peut s’inspirer des rapports suivants (pour le rapport final, surtout) :

Exemples de rapports de L2 Aix-Marseille Université

Faire fi des fautes d’orthographe...

Rendus

Le projet est découpé en 3 périodes, qui se terminent chacune par le rendu d’un rapport et une soutenance sur machine.

Période 1

  • Objectif : jeu d’Othello fonctionnel permettant à 2 joueurs humains de s’affronter, de sauvegarder et charger une partie en cours de jeu, d’annuler un ou plusieurs coups, de rejouer les coups annulés (évidemment, le programme détecte seul les coups illégaux, la fin de partie, les situations où l’un des joueurs doit passer son tour, etc.)
  • Rendu du rapport pour Saint-Charles : 15/02/2013 avant 23:59
  • Rendu du rapport pour Aix : 17/02/2013 avant 23:59

Quelques indications sur le contenu du rapport pour cette première période ici.

Période 2

  • Objectif : le programme peut jouer grâce à l’implémentation d’un algorithme minmax simple et d’une fonction d’évaluation élémentaire (le niveau de jeu doit cependant être réglable).
  • Rendu du rapport pour Saint-Charles : 22/03/2013 avant 23:59
  • Rendu du rapport pour Aix : 24/03/203 avant 23:59

Période 3

  • Objectif : le programme implémente un algorithme alpha-beta et met en oeuvre une fonction d’évaluation évoluée. Le programme est maintenant plus fort qu’Ajax en mode expert.
  • Rendu du rapport pour Saint-Charles : 26/04/2013 avant 23:59
  • Rendu du rapport pour Aix : 21/04/2013 avant 23:59

Calendriers détaillés