Knowledge base: Warsaw University of Technology

Settings and your account

Back

The control with the use of artificial intelligence methods on the example of the game Super Mario Bros

Aleksander Francis Kowalski

Abstract

The aim of the work was to review solutions which with the use the methods of artificial intelligence which learn how to control the hero of the game Super Mario Bros and then choose one of the existing solutions and improve it by creating an innovative type of control solution. The chosen solution is based on the Deep Q Network method. It is one of the methods of Reinforcement Learning combined with a deep neural network. The whole solution was strengthened with an additional recurrent network, finally creating Deep Reccurent Q Network. The neural network model is based on three layers of convolutional neural networks, one layer of the recurrent network and the final layer of the fully connected network, the output of which is the action taken by the hero of the game. With the help of the amplification function, we can determine the correctness of network learning. The increase in the enchacement function determines the correct direction of changes in the network weights, and thus the network learning. The whole solution meets the problem of proper movements of the game's hero. In the world of the game, we will meet with hostile beings who can deprive us of life, as well as objects that improve our hero, or they give extra points. The created solution has to learn all objects of the game and adequately to the state of the game make decisions that bring the player closer to the final goal, which is the end of the level. Each player's move is linked with receiving a reward or penalty for the action taken. Learning consists in maximizing the rewards received by the game environment and minimizing the loss function, i.e. discrepancies between the predictive network and the target network. The implementation of an additional recursive network and a number of changes to the solution parameters have produced satisfactory results. In comparison to other solutions that do not use the recursive network, the implemented solution brought the expected results faster. From the very beginning, you can clearly see the increase in the enhacement function and the sum of the rewards gained in a given time by the movements made. Finally, the network has passed a large part of the first level of the game. However, the implementation of an additional recursive network has heavily strained the graphics card of the computer and thus extended the learning time.
Diploma type
Engineer's / Bachelor of Science
Diploma type
Engineer's thesis
Author
Aleksander Francis Kowalski (FM) Aleksander Francis Kowalski,, Faculty of Mechatronics (FM)
Title in Polish
Sterowanie przy wykorzystaniu metod sztucznej inteligencji na przykładzie gry Super Mario Bros
Supervisor
Anna Sztyber (FM/IACR) Anna Sztyber,, The Institute of Automatic Control and Robotics (FM/IACR)Faculty of Mechatronics (FM)
Certifying unit
Faculty of Mechatronics (FM)
Affiliation unit
The Institute of Automatic Control and Robotics (FM/IACR)
Study subject / specialization
, Automatyka i Robotyka (Automation and Robotics)
Language
(pl) Polish
Status
Finished
Defense Date
31-07-2019
Issue date (year)
2019
Reviewers
Anna Sztyber (FM/IACR) Anna Sztyber,, The Institute of Automatic Control and Robotics (FM/IACR)Faculty of Mechatronics (FM) Barbara Siemiątkowska (FM/IACR) Barbara Siemiątkowska,, The Institute of Automatic Control and Robotics (FM/IACR)Faculty of Mechatronics (FM)
Keywords in Polish
sieć neuronowa, Mario, sztuczna inteligencja, DQN, sieć rekurencyjna, Python, Tensorflow, DRQN, sieć konwolucyjna, sterowanie
Keywords in English
neural network, Mario, artifical intelligence, DQN, reccurent network, Python, Tensorflow, DRQN, convolutional network, control
Abstract in Polish
Celem pracy było przejrzenie rozwiązań, które przy wykorzystaniu metod sztucznej inteligencji uczą się sterować bohaterem gry Super Mario Bros a następnie wybór jednego z istniejących rozwiązań i udoskonalenie go tworząc nowatorski typ rozwiązania sterowania. Wybrane rozwiązanie bazuje na metodzie Deep Q Network. Jest to jedna z metod uczenia ze wzmocnieniem (ang. Reinforcement Learning) w połączeniu z głęboką siecią neuronową. Całość została wzmocniona dodatkową siecią rekurencyjną (ang. Reccurent Neural Network) finalnie tworząc Deep Reccurent Q Network. Model sieci neuronowej opiera się na trzech warstwach konwolucyjnych sieci neuronowych, jednej warstwie sieci rekurencyjnej oraz finalnej warstwie sieci w pełni połączonej, której wyjściem jest podjęta akcja bohatera gry. Przy pomocy funkcji wzmocnienia możemy określić prawidłowość nauki sieci. Wzrost funkcji wzmocnienia określa prawidłowy kierunek zmian wag sieci, a tym samym nauki sieci. Całe rozwiązanie spotyka się z problemem prawidłowych ruchów bohatera gry. W świecie gry spotkamy się z wrogimi istotami, które mogą nas pozbawić życia, jak i obiekty, które ulepszają naszego bohatera, czy dają dodatkowe punkty. Stworzone rozwiązanie ma za zadanie nauczyć się wszystkich obiektów gry i adekwatnie do stanu gry podejmować decyzje, które zbliżą gracza do finalnego celu, czyli końca poziomu. Każdy ruch gracza łączy się z otrzymaniem nagrody lub kary za wykonaną akcję. Uczenie się polega na maksymalizowaniu otrzymanych nagród przez środowisko gry oraz minimalizowaniu funkcji straty, czyli rozbieżności pomiędzy siecią predykcyjną oraz siecią docelową. Implementacja dodatkowej sieci rekurencyjnej oraz szereg zmian parametrów rozwiązania przyniosły zadowalające efekty. W porównaniu do innych rozwiązań nieużywających sieci rekurencyjnej zaimplementowane rozwiązanie szybciej przyniosło oczekiwane efekty. Wyraźnie widać już od samego początku wzrost funkcji wzmocnienia oraz sumy zdobywanych nagród w określonym czasie przez wykonane ruchy. Finalnie sieć przeszła dużą część pierwszego poziomu gry. Jednakże tym samym zaimplementowanie dodatkowej sieci rekurencyjnej mocno obciążyło kartę graficzną komputera i tym samym wydłużyło czas nauki.
File
  • File: 1
    praca-inz-mario.pdf
Request a WCAG compliant version
Local fields
Identyfikator pracy APD: 35332

Uniform Resource Identifier
https://repo.pw.edu.pl/info/bachelor/WUTa51d3dfdf51e4e9688e3e8242bf852ae/
URN
urn:pw-repo:WUTa51d3dfdf51e4e9688e3e8242bf852ae

Confirmation
Are you sure?
Report incorrect data on this page