Hyppää sisältöön
    • Suomeksi
    • På svenska
    • In English
  • Suomeksi
  • In English
  • Kirjaudu
Näytä aineisto 
  •   Etusivu
  • LUTPub
  • Kandidaatin tutkintojen opinnäytetyöt
  • Näytä aineisto
  •   Etusivu
  • LUTPub
  • Kandidaatin tutkintojen opinnäytetyöt
  • Näytä aineisto
JavaScript is disabled for your browser. Some features of this site may not work without it.

Artificial architect : developing a self-made AI for 2D game level design : the indie level designer AI

Jalkanen, Konsta (2024)

Katso/Avaa
LUT_Kandi_2024_Konsta_Jalkanen.pdf (535.0Kb)
Lataukset: 


Kandidaatintyö

Jalkanen, Konsta
2024

School of Engineering Science, Tietotekniikka

Kaikki oikeudet pidätetään.
Näytä kaikki kuvailutiedot
Julkaisun pysyvä osoite on
https://urn.fi/URN:NBN:fi-fe2024101179946

Tiivistelmä

This bachelor’s thesis is an experimental study in which the research focus is on a self-made AI and its usage as a level generator. These AIs made in this thesis use only a few free tools such as code language, code editor, and standard libraries.

The AIs were made with Python using Visual Studio Code as a code editor. The code libraries used in this thesis are Math, Random, Os, and Pygame and their usage is kept to a minimum.

The AIs utilize evolutionary computing to improve with three training methods: fixed, difficulty-changing, and cooperative training. The AIs used two different architectures which differ by size and layer structure. The first version which uses one-dimension layers performed best with cooperative training while the second version which uses two-dimensional layers performed best with fixed training. Singular AI couldn’t produce more than one map thus making them useless for actual level design.

The limits of this thesis were mostly due to the available computational power thus each AI was trained for 50000 iterations. The work was done using a minimal amount of tools and libraries to ensure they are self-made AIs.
 
Tämä opinnäytetyö on tutkimus siitä että onko itsetehty tekoäly kykeneväinen tasosuunnitteluun videopeleihin. Tässä opinnäytetyössä käytetyt tekoälyt on toteuttettu vain käyttämällä muutamia ilmaisia työkaluja kuten ohjelmointi kieltä, ohjelmointi editoria, ja perinteisiä kirjastoja.
Tekoälyt on kirjoitettu Python koodikielellä Visual Studio Code ohjelmointi editorissa. Tässä opinnäytetyössä käytetyt koodikirjastot ovat Math, Random, Os, ja Pygame ja näitä käytetään mahdollisimman vähän. Tekoälyt kehittyvät evoluutio laskentaan pohjautuvalla menetelmällä ja ne on koulutettu kolmella eri tavalla: kiintellä, muuttuva vaikeusasteella, ja yhteistyö harjoitusmenetelmä.

Tekoälyt pohjautuvat kahteen eri opinnätetyössä tehtyyn arkkitehtuuriin, jotka eroavat koon ja rakenteen pohjalta. Ensimmäinen versio koostuu yksiulotteisesta kerroksista ja toimi parhaiten yhteistyö harjoitusmenetelmässä. Toinen versio rakentuu kaksiulotteisista kerroksista ja toimii parhaiten kiinteässä harjoittelussa. Yksittäinen tekoäly ei ollut kykeneväinen tuottamaan yhtä karttaa enempää, minkä takia ne ovat lähtökohtaisesti käyttökelvottomia tasosuunnitteluun.

Tämän opinnäytetyön tekoälyt ovat harjoittelleet vain 50,000 harroituskerralla, mikä johtuu laskentatehon vähäisyyden vuoksi. Työssä käytettiin mahdollisimman vähän ulkopuolisia työkaluja, jotta tehdyt tekoälyt olisivat mahdollisimman paljon itse tehty.
 
Kokoelmat
  • Kandidaatin tutkintojen opinnäytetyöt [6227]
LUT-yliopisto
PL 20
53851 Lappeenranta
Ota yhteyttä | Tietosuoja | Saavutettavuusseloste
 

 

Tämä kokoelma

JulkaisuajatTekijätNimekkeetKoulutusohjelmaAvainsanatSyöttöajatYhteisöt ja kokoelmat

Omat tiedot

Kirjaudu sisäänRekisteröidy
LUT-yliopisto
PL 20
53851 Lappeenranta
Ota yhteyttä | Tietosuoja | Saavutettavuusseloste