This is an old revision of the document!


X si 0

  • Joc X si 0 (Player vs AI)

Descriere generală

  • Dispozitivul simuleaza un joc clasic de X si 0 printr-o matrice de leduri de dimensiune 3×3. Fiecare led este actionat de un buton. Ledurile jucatorului au culoarea albastra iar cele ale computerului sunt rosii. Computerul alege mutarea cea mai convenabila folosind implementarea unui algoritm minimax. Pentru ca jocul sa se termina la egalitate, jucatorul nu trebuie sa faca nicio greseala. Computerul va castiga mereu in cazul in care jucatorul alege o mutare gresita. La sfarsitul jocului, ledurile se vor aprinde in culoarea castigatorului. Exista si un mod AI vs AI. In acest caz, toate jocurile se termina la egalitate.

Schema Bloc

Hardware Design

Lista de piese:

  • Arduino Uno - 1x
  • Breadboard - 1x
  • LED WS2812 - 9x
  • Push Button - 9x
  • Dupont Jumper Cables
  • Wire Cables

Software Design

Descrierea codului aplicaţiei (firmware):

  • Mediu de dezvoltare: Arduino IDE
  • Librării: <FastLED.h>
  • Algoritmi: Minimax
  • Functii: evaluate, findBestMove, minimax

Rezultate Obţinute

Concluzii

Implementarea finala a proiectului contine modul de joc descris initial (Plyer vs AI) alaturi de un mod Demo (AI vs AI). Se poate comuta pe modul demo decomentand linia de cod #define DEMO_MODE. Pentru a diminua timpul de de calcul al fiecarei mutari, prima este random. Pentru restul mutarilor, algoritmul va alege pozitia optima. Jucatorul nu poate invinge AI-ul dar poate face remiza daca nu face nicio greseala.

Download

O arhivă (sau mai multe dacă este cazul) cu fişierele obţinute în urma realizării proiectului: surse, scheme, etc. Un fişier README, un ChangeLog, un script de compilare şi copiere automată pe uC crează întotdeauna o impresie bună ;-).

Fişierele se încarcă pe wiki folosind facilitatea Add Images or other files. Namespace-ul în care se încarcă fişierele este de tipul :pm:prj20??:c? sau :pm:prj20??:c?:nume_student (dacă este cazul). Exemplu: Dumitru Alin, 331CC → :pm:prj2009:cc:dumitru_alin.

Jurnal

Puteți avea și o secțiune de jurnal în care să poată urmări asistentul de proiect progresul proiectului.

Bibliografie/Resurse

Listă cu documente, datasheet-uri, resurse Internet folosite, eventual grupate pe Resurse Software şi Resurse Hardware.

Export to PDF

pm/prj2022/bogdanc/x-si-0.1653564297.txt.gz · Last modified: 2022/05/26 14:24 by david_nicolae.mantu
CC Attribution-Share Alike 3.0 Unported
www.chimeric.de Valid CSS Driven by DokuWiki do yourself a favour and use a real browser - get firefox!! Recent changes RSS feed Valid XHTML 1.0