Implimentarea algoritmului A , în cadrul jocului Snake

Proiect
8/10 (1 vot)
Domeniu: Calculatoare
Conține 1 fișier: pdf
Pagini : 24 în total
Cuvinte : 6472
Mărime: 1.21MB (arhivat)
Publicat de: Ion C.
Puncte necesare: 8
Profesor îndrumător / Prezentat Profesorului: Andrievschi-Bagrin Veronica
Chisinau, R. Moldova

Cuprins

  1. Introducere 5
  2. 1 Considerații teoretice . 6
  3. 1.1 Importanța temei . 7
  4. 1.2 Prezentarea algoritmului . 7
  5. 1.3 Metode similare cu algoritmul A* 10
  6. 2 Realizarea sistemului ... 13
  7. 2.1 Descrierea la nivel de cod pe module ... 14
  8. 2.2 Descrierea modulului de back-end 14
  9. 2.3 Descrierea modulului de front-end ... 18
  10. 2.4 Descrierea modulului de convertire .. 19
  11. 3 Testarea proiectului realizat . 20
  12. Concluzii . 23
  13. Bibliografie . 24

Extras din proiect

Rezumat

Proiectul Snake, ce are la bază ideea de implimentare a algoritmului A*, cunoscut ca și A star, are ca obiect determinarea drumului de cost minim, iar scopul acestuia se rezumă la realizarea unei cercetări științifice, în baza analizei empirice, pentru a reliefa eficiența metodei expuse anterior, în tangență cu capacitățile de joc ale unui utilizator și, în comparație, cu procedeele de identificare a căii de cost minim, căutarea în înălțime și lățime.

Structura lucrării de an prezente, cuprinde introducerea, trei capitole, concluzii, în raport cu tema dată, bibliografie din 9 surse, 24 de pagini text de bază, un tabel și un grafic al timpului de execuție și 16 figuri.

Primul capitol conține analiza dateliată a domeniului de studiu, fiind prezentate considerații teoretice, cu referire la elementele-cheie ale produsului final, importanța temei studiate, prezentarea algoritmului central al programului. În plus, ultimul subcapitol prezintă o cercetare minuțioasă a modelului central A*, în raport cu Djikstra și Best-First-Search, care sunt, la rândul lor, procedee de identificare a drumului minim.

Al doilea capitol, cuprinde descrierea comportamentală și structurală a sistemului, fiind reliefată imaginea, din punct de vedere general, asupra sistemului realizat. Și nu în ultimul rând, în cadrul acestui capitol, sunt incluse pasajele descriptive despre etapele de modelare a proiectului, de la concept - la rezultat.

Capitolul trei înglobează evaluarea, din punct de vedere tehnic a proiectului, care subliniază analiza empirică, prin raportare la datele utilizatorului și rezultatele obținute, în joc, prin intermediul celor 3 algoritmi. Pentru veridicitatea informației expuse, sunt anexate figuri specifice, ce demonstrează corectitudinea testării efectuate, iar pentru o idee mai complexă, este atașat un tabel cu valori ce corespunde graficului timpului de execuție pentru cazurile specifice.

În realizarea produsului final, se utilizează limbajele de programare cu sursă deschisă ce oferă o libertate în folosirea lor în procesul de producție. Instrumentul de dezvoltare software este Intellij Idea, întrucât oferă o gamă largă de funcționalități, ce sporește productivitatea și eficiența în scrierea codului sursă a proiectului.

Introducere

În epoca contemporană, la etapa actuală, pasul de dezvoltare al tehnologiei este atât de avansat, încât zilnic atinge noi apogeuri, realizând tot mai dificilă atât acomodarea omului cu acestea, cât și timpul necesar. S-ar părea că problema centrală este timpul, insuficiența celor 24 de ore în cadrul unei zile, însă dacă numărul de ore ar fi egal cu 30, situația nu s-ar schimba radical.

Faptul menționat anterior, ne sugerează că nu timpul este o problemă, ci gestionarea corectă a acestuia. Aceasta însă este o ramură problematică pentru unii dintre noi, datorată erorii de planificare, care apare în cazul subestimării duratei unei sarcini, până la finalizarea ei completă.

Unul din factorii a căror finalitate nu poate fi prezisă sunt înglobați în mediul online, și anume în cadrul jocurilor video. Fiecare dintre noi avem momente în care ne aprofundăm în procesul de decurgere al jocului, încât uităm de linia timpului real și scurgerea acestuia. Adesea, aceasta se datorează atingerii unui scop, fie el trecerea unui nivel, stabilirea unui record de timp sau îndeplinirea unei sarcini propuse de joc.

În scopul eficientizării timpului necesar pentru obținerea unei reușite, s-a decis realizarea unui hybrid, ceea ce presupune implimentarea unui algoritm în baza unui joc cunoscut, care reprezintă și tema proiectului de curs :

“Implimentarea algoritmului A*, în cadrul jocului Snake”

Snake a fost ales din motivul faptului că este o aplicație arhicunoscută, unde fiecare din noi am petrecut ceva timp, de fiecare dată, pentru a obține un scor mai mare, însă mare ne era dezamăgirea când drumul spre punctul de mărire ( mâncare ), era blocat de noi înșine. Cu o rezolvare a acestei probleme, venim noi, prin implimentarea unui algoritm de identificare a drumului de cost minim dintr-un punct, în altul, și obținerea unui scor maxim posibil, pentru mărimea dată a problemei.

În calitate de algoritm, a fost implimentat A*, cunoscut ca și A star, un procedeu euristic, a cărui scop central este rezolvarea unei probleme nu doar mai rapid, ci și mai eficient, în tangență cu metodele tradiționale, prin care sacrificam optimizarea, acuratețea, precizia, cât și rapiditatea.

În realizarea produsului final, se utilizează limbajele de programare cu sursă deschisă ce oferă o libertate în folosirea lor în procesul de producție. Instrumentul de dezvoltare software este Intellij Idea, întrucât oferă o gamă largă de funcționalități, ce sporește productivitatea și eficiența în scrierea codului sursă a proiectului.

Bibliografie

1. Amil Patel, Introduction to A*, accesat 02.12.2021, [Resură electronică] - Regim de acces: http://theory.stanford.edu/~amitp/GameProgramming/AStarComparison.html

2. Red Blob Games, Introduction to the A* Algorithm, accesat 02.12.2021, [Resură electronică] - Regim de acces: https://www.redblobgames.com/pathfinding/a-star/introduction.html

3. Wikipedia, A* search algorithm, accesat 04.12.2012, [Resură electronică] - Regim de acces: https://en.wikipedia.org/wiki/A*_search_algorithm

4. JavaTpoint, documentație algoritmi de căutare, accesat 04.12.2012, [Resură electronică] - Regim de acces: https://www.javatpoint.com/ai-informed-search-algorithms

5. Simplilearn, A* Algorithm Concepts and Implimentantion, accesat 04.12.2012, [Resură electronică] - Regim de acces: https://www.simplilearn.com/tutorials/artificial-intelligence-tutorial/a-star-algorithm#what_is_an_a_algorithm

6. Avidant Bhagat, Satvik Agarwal, Josh Pollock, Steven Austin, A* search and Djikstra Algorithm, accesat 05.12.2012, [Resură electronică] - Regim de acces: https://cse442-17f.github.io/A-Star-Search-and-Dijkstras-Algorithm/

7. Wikipedia, Snake ( video game genre ), accesat 05.12.2012, [Resură electronică] - Regim de acces: https://en.wikipedia.org/wiki/Snake_(video_game_genre)

8. Christophere Claramunt, Geometric A-Star Algorithm, accesat 05.12.2012, [Resură electronică] - Regim de acces: https://cutt.ly/WY4JEtE

9. Selvakumar AA, Implementation of A* Algorithm to Autonomous Robots-A Simulation Study, accesat 05.12.2012, [Resură electronică] - Regim de acces: https://cutt.ly/DY4J1yq

Preview document

Implimentarea algoritmului A , în cadrul jocului Snake - Pagina 1
Implimentarea algoritmului A , în cadrul jocului Snake - Pagina 2
Implimentarea algoritmului A , în cadrul jocului Snake - Pagina 3
Implimentarea algoritmului A , în cadrul jocului Snake - Pagina 4
Implimentarea algoritmului A , în cadrul jocului Snake - Pagina 5
Implimentarea algoritmului A , în cadrul jocului Snake - Pagina 6
Implimentarea algoritmului A , în cadrul jocului Snake - Pagina 7
Implimentarea algoritmului A , în cadrul jocului Snake - Pagina 8
Implimentarea algoritmului A , în cadrul jocului Snake - Pagina 9
Implimentarea algoritmului A , în cadrul jocului Snake - Pagina 10
Implimentarea algoritmului A , în cadrul jocului Snake - Pagina 11
Implimentarea algoritmului A , în cadrul jocului Snake - Pagina 12
Implimentarea algoritmului A , în cadrul jocului Snake - Pagina 13
Implimentarea algoritmului A , în cadrul jocului Snake - Pagina 14
Implimentarea algoritmului A , în cadrul jocului Snake - Pagina 15
Implimentarea algoritmului A , în cadrul jocului Snake - Pagina 16
Implimentarea algoritmului A , în cadrul jocului Snake - Pagina 17
Implimentarea algoritmului A , în cadrul jocului Snake - Pagina 18
Implimentarea algoritmului A , în cadrul jocului Snake - Pagina 19
Implimentarea algoritmului A , în cadrul jocului Snake - Pagina 20
Implimentarea algoritmului A , în cadrul jocului Snake - Pagina 21
Implimentarea algoritmului A , în cadrul jocului Snake - Pagina 22
Implimentarea algoritmului A , în cadrul jocului Snake - Pagina 23
Implimentarea algoritmului A , în cadrul jocului Snake - Pagina 24

Conținut arhivă zip

  • Implimentarea algoritmului A , in cadrul jocului Snake.pdf

Ai nevoie de altceva?