Generalized game-testing using reinforcement learning
Pekiştirmeli öğrenme kullanarak genelleştirilmiş oyun testi
- Tez No: 840959
- Danışmanlar: DOÇ. DR. SANEM SARIEL UZER, DR. ÖĞR. ÜYESİ HÜSEYİN KUTAY TİNÇ
- Tez Türü: Yüksek Lisans
- Konular: Bilgisayar Mühendisliği Bilimleri-Bilgisayar ve Kontrol, Bilim ve Teknoloji, Computer Engineering and Computer Science and Control, Science and Technology
- Anahtar Kelimeler: Belirtilmemiş.
- Yıl: 2023
- Dil: İngilizce
- Üniversite: İstanbul Teknik Üniversitesi
- Enstitü: Lisansüstü Eğitim Enstitüsü
- Ana Bilim Dalı: Oyun ve Etkileşim Teknolojileri Ana Bilim Dalı
- Bilim Dalı: Oyun ve Etkileşim Teknolojileri Bilim Dalı
- Sayfa Sayısı: 87
Özet
Oyun sektörü ortaya çıktığı ilk zamandan bu yana hem karlı bir endüstri olduğunu kanıtlayan hem de düzenli olarak kendini geliştiren bir sektör olarak eğlence ve teknoloji sektörleri arasında önemli bir yer edinmiştir. Kazandığı bu konumun doğal bir sonucu olarak da oyun sektörünün tüketicileri olan oyuncuların zamanla oyunlardan beklentileri artmış, oyunların hem kompleks bir yapıya sahip olmasını hem de kaliteli bir ürün olarak piyasaya sürülmesini beklemelerine yol açmıştır. Bu beklentileri karşılamak adına da oyun geliştiricileri oyunlarda -oyuncuların da güncel tercihlerini dikkate alarak- yenilikçi oyun tasarımı prensipleri geliştirmişler ve yeni teknolojiler ile teknikler geliştirerek sektörü ileri konumlara taşımaya çalışmışlardır. Geliştirdikleri bu yeniliklerin uygunluğunun da kontrol edilmesi gerektiğinden dolayı, hali hazırda oyun geliştirme sürecinin önemli bir parçası olan, oyun testi süreci büyük bir önem arz eder hale gelmiştir. Oyun testi süreci, genelde insan oyuncular tarafından gerçekleştirilen hem oyunlardaki mekaniklerin hissiyatı, hikayenin oyuncular üzerindeki etkileri gibi bütüncül oyuncu deneyimini hem de oyunlardaki hatalar, grafiksel bozukluklar, sistemsel yük gibi teknik özellikleri ölçmek amacıyla yapılan kapsamlı bir süreçtir. Sürecin bu kapsamlı yapısını ve son derece kaynak isteyen yoğun bir süreç olmasını ele alınca oyun testine yönelik iş yükünü hafifletmek adına bu tezde, yeni bir yöntem öne sürülmüştür. Bu yöntem, genellenebilir bir ortam sistemini, pekiştirmeli öğrenme (RL) modelleri ile bütünleştirerek, belirli koşullar sağlandığı durumda herhangi bir oyun ile bir RL modeli arasında sorunsuz iletişimi sağlamaya çalışır. Sistem, oyun geliştiricilerinden de yararlanarak oyun testi sürecini optimize eder. Geliştiricilerin, durum ve ödül değerleri gibi temel bilgileri derlemeleri ve genellenebilir ortam sistemine iletmeleri beklenmektedir. Daha sonra bu veriler, RL modeli içinde işlenerek kullanılır; bu da RL modelinin geliştiricilerin amaçlarına uygun bir şekilde oyunu öğrenmesini ve oyun testi için değerli veri üretmesini sağlar. Bu yöntem, aynı zamanda oyunları öğrenirken yapay zeka etmenlerinin farklı durumlarda farklı eylemler denediği faydalı yönünden de yararlanır. Oyun testi, farklı oyun durumlarında farklı eylemler uygulayarak çeşitli senaryoların oluşturulmasını gerektirir. Bu senaryolar gözlemlenir ve gerektiğinde oyun geliştirme sürecinde bu gözlemlere dayalı olarak eylemler yapılır. Bu iki durum göze alındığında, oyun testi süreci ile oyun oynayan yapay zeka etmenlerinin eğitimleri sırasında gösterdikleri davranış yapısı arasında büyük bir benzerlik görülmektedir. Bu benzerlikten dolayı, yapay zeka etmenlerinin eğitimi bittikten sonra test sürecinde gösterdikleri eylemlerin yanı sıra eğitim sırasında gösterdikleri eylemler de oyun testi içeriği olarak kullanılabilir. Araştırmanın deneysel aşamasında, aynı oyunun altı farklı sürümü kullanılmıştır. Bu sürümler, genellenebilir ortam sisteminin işlevlerini test etmek ve RL model davranış desenlerine etkileri gözlemlemek için özenle tasarlanmıştır. Bu sürümler aşağıdaki şekilde özetlenebilir: - Basit yan hareketli oyun: Bu sürümün amacı, genellenebilir ortam sistemi, oyun sürümü ve RL modeli arasındaki sorunsuz iletişimi test etmektir. Oyuncuyu hedef bir noktaya yönlendirmek için tasarlanmış basit bir ödül sistemi, üç eylemden oluşan bir eylem alanı ve durum bilgisi olarak bir görüntü içerir. - Keşif odaklı yan hareketli oyun: Oyuncunun oyun alanını keşfetmeye teşvik etmek için tasarlanmış bu sürüm kapsamlı bir ödül sistemi içerir. Dört eylemden oluşan bir eylem alanına sahiptir ve durum bilgisi olarak bir görüntü kullanır. - Renklendirilmiş keşif odaklı yan hareketli oyun: Oyunun bu sürümü, Keşif odaklı yan hareketli oyun sürümünün bir türevi olarak hizmet eder ve tek değişiklik oyun dokularının değiştirilmesidir. RL modellerinin eğitimine dokuların değişiminin etkisini araştırmak amaçlanmıştır. - Hedef odaklı yan hareketli oyun: Keşif odaklı yan hareketli oyun sürümü ile aynı eylem alanı ve durum bilgisini paylaşan bu sürüm, ödül sistemi değişikliklerinin etkilerini gözlemlemeyi amaçlar. Oyuncuyu belirli hedeflere ve bir hedefe yönlendiren ayrıntılı bir ödül sistemi ve bir hedef kullanır. - Görüntü kullanmayarak keşif odaklı yan hareketli oyun: Keşif odaklı yan hareketli oyun sürümü ile aynı eylem alanı ve ödül sistemi yapısına sahip olan bu sürüm, bir durum dizisi kullanmanın RL model davranışı üzerindeki etkisini incelemeyi amaçlar. - Görüntü ve dizi kullanarak keşif odaklı yan hareketli oyun: Keşif odaklı yan hareketli oyun sürümü ile aynı eylem alanı ve ödül sistemi yapısına sahip olan bu sürüm, RL model davranışı üzerinde maksimum etki sağlamayı amaçlar. Bunu ayrıntılı bir durum dizisi ve bir durum görüntüsü kullanarak başarılır. - Arcade oyunu: Genellenebilir ortam sisteminin bambaşka bir oyunda nasıl bir performans sergileyeceğini göstermeyi amaçlamaktadır. Hem keşif hem de hedef odaklı bir yapıya sahiptir. Orta karmaşıklık derecesinde bir ödül sistemi, beş eylemden oluşan bir eylem alanı barındırır. Durum bilgisi olarak hem dizi hem de görüntü kullanır. RL etmeni ile oyun yapısı arasındaki iletişim yapısı incelenerek değerli bilgiler elde edilmiştir. Genellenebilir ortam sisteminin olumlu ve verimli sonuçlar elde etmede kritik bir rol oynadığı açık hale gelmiştir. Ancak yöntemde, özellikle oyun geliştiricilerin üzerindeki iş yükünün azaltılması ve dış faktörlerden kaynaklanan sorunların çözülmesi açısından geliştirilmesi gereken alanların da yer aldığı gözlemlenmiştir. Genellenebilir ortam sisteminin içine entegre edilen günlükleme sistemi, oyun testi alanında yararlı bir kullanım olduğunu kanıtlamıştır. Her bölümde biriken toplam ödülü kullanarak daha yakından incelenmeye değer bölümleri seçme konusunda verimli bir rehberlik sağlamaktadır. Ayrıca, bu sistemin sağladığı ek bilgiler, farklı oyun senaryolarında seçilern eylemlerin daha iyi anlaşılmasına büyük katkı sağlamıştır. Önerilen yaklaşım, oyun testi alanında büyük potansiyele sahiptir. Yapay zeka etmenlerinin davranışlarını, dinamik ödül sistemi ve dizilerle görüntülerden türetilen kapsamlı durum bilgilerini kullanarak belirli kriterlere göre ayarlamalarına olanak tanımıştır. Aynı zamanda, beklenildiği üzere hem eğitim hem de test aşamalarında sürekli olarak oyun testine yönelik başarılı gözlemlerin ortaya çıkması dikkat çekmiştir, yapay zeka etmenleri oyunun zayıf noktalarını başarıyla kullanırken beklenmeyen özellikleri ve hataları keşfetmiştir. Gözlenen başarılı sonuçlara rağmen, hem görsel hem dizi kullanan versiyonun eğitim hızında büyük bir düşüş ve eğitimi sırasında donanıma yönelik yüksek derece sistemsel yükle karşılaşılmıştır. Tezin hedeflerine göre değerlendirildiğinde, genel anlamda, geliştirilen yöntemin oyun testi sürecinde başarılı sonuçlar elde ettiği ve gelecekte umut verici bir gelişme potansiyeline sahip olduğu sonucuna varılabilir. Sistemin performansını daha da artırıcı çalışmalar, oyun testinin genel uygulanabilirliğine yönelik olumlu sonuçlar doğurabilir.
Özet (Çeviri)
The gaming industry has experienced significant growth and evolution, becoming a prominent sector in entertainment and technology. This growth has led to increased consumer expectations regarding the quality and complexity of games, prompting developers to explore innovative solutions to meet these demands. To meet these demands, one of the pivotal approaches adopted by game developers is the game testing process. Game testing is an incredibly resource-intensive procedure, demanding comprehensive evaluation of all aspects of a game through actual gameplay. To address this challenge and alleviate the associated workload, this thesis proposes an innovative approach to game testing. This method integrates a generic environment framework with reinforcement learning (RL) models, facilitating seamless communication between any game and an RL model under specific conditions. The framework optimizes the game testing process by capitalizing on the efforts of game developers. It relies on developers to compile and transmit essential information, such as state and reward data, to the generic environment. Subsequently, this data is processed and harnessed within the RL model, allowing it to learn and play the game in accordance with developers' intentions, while simultaneously generating valuable data for game testing purposes. This method also capitalizes on the beneficial aspect of game-playing AI agents trying out various actions in different states as they learn to play games. Game testing entails the creation of diverse scenarios by implementing different actions in various in-game situations. These scenarios are observed, and, when necessary, actions are taken in the game development process based on these observations. Therefore, as the situation where game-playing agents experience various scenarios closely resembles game testing, we can utilize not only the actions performed by agents during testing but also their behaviors during training as part of the game-testing content. The experimental phase of the study involved the deployment of six distinct builds of the same game, each serving as a means to test the functionalities of the generic environment and observe their impact on the behavioral patterns of RL models. These builds were thoughtfully crafted to uncover various aspects of RL model behavior and the diverse methods of representing game states. These builds can be summarized as follows: - Basic side-scroller: This build's purpose is to test the seamless communication between the generic environment framework, the game build, and the RL model. It features a simple reward system designed to guide the player to a target point, an action space consisting of three actions, and employs a state image as the state information. Exploration-oriented side-scroller:} Designed to encourage the player to explore the entire game area, this build incorporates a comprehensive reward system. It boasts an action space comprising four actions and utilizes a state image as the state information. - Exploration-oriented side-scroller with colored textures: This build serves as a variant of the exploration-oriented side-scroller build, with the only alteration being the modification of game textures. Its purpose is to investigate the impact of texture changes on the training of RL models. - Goal-oriented side-scroller: Sharing the same action space and state information as the exploration-oriented side-scroller build, this build primarily aims to observe the effects of reward system modifications. It employs a detailed reward system to guide the player toward specific objectives and a goal. - Exploration-oriented side-scroller using no image: With an identical action space and reward system structure as the exploration-oriented side-scroller build, this build seeks to examine how using a state array as state information influences the RL model's behavior. - Exploration-oriented side-scroller using image and array: Being similar to the exploration-oriented side-scroller build in action space and reward system structure, this build aims to maximize its impact on the RL model's behavior. It achieves this by employing both a detailed state array and a state image as state information. - Arcade: This build aims to demonstrate how the generic environment framework will perform in a completely different game. It has both exploratory and goal-oriented structures. It features a moderately complex reward system and an action space consisting of five actions. It uses both arrays and images as state information. The investigation into the communication system between the RL agent and the game build yielded valuable insights. It became evident that the generic environment framework played a crucial role in achieving positive and efficient outcomes. Nevertheless, the research also pinpointed areas ripe for enhancement, particularly concerning the reduction of the workload on game developers and the resolution of issues stemming from external factors. The logging system integrated into the generic environment has proven to be a valuable asset in the realm of game testing. It leverages the total reward accrued in each episode, efficiently guiding the selection of episodes meriting closer scrutiny. Furthermore, the supplementary information provided by this system offers exceptionally insightful data, greatly enhancing our comprehension of the actions taken in various gaming scenarios. Our proposed approach holds significant potential in the realm of game testing. It enables AI agents to adjust their behaviors by utilizing dynamic rewards and extensive state information from arrays and images to meet specific criteria. Moreover, successful game-testing outcomes have been consistently observed throughout both the training and testing phases, where agents adeptly exploit game vulnerabilities and uncover unforeseen features and bugs. In spite of the apparent successful outcomes, the implementation involving both a state image and a state array exhibited a notable reduction in training speed and encountered a substantial level of system load attributed to hardware constraints during the training process. When evaluated in accordance with the objectives of the thesis, it can be concluded that, overall, the proposed method has achieved successful outcomes in the game testing process and holds promise for future development potential. Further endeavors aimed at enhancing system performance may yield positive results concerning the broader applicability of game testing.
Benzer Tezler
- Stratejik düşünme temelli oyunların erken eleştirel düşünme eğilimine etkisi
The effect of strategic thinking-based games on early critical thinking tendency
GAMZEGÜL TETİK
Doktora
Türkçe
2022
Eğitim ve ÖğretimGazi ÜniversitesiTemel Eğitim Ana Bilim Dalı
PROF. DR. ADALET KANDIR
- Sustainability of fiscal policy: The case of Turkey
Maliye politikasının sürdürülebilirliği: Türkiye örneği
ENGİN SAN
Yüksek Lisans
İngilizce
2002
EkonomiOrta Doğu Teknik Üniversitesiİktisat Ana Bilim Dalı
PROF. DR. ERCAN UYGUR
PROF. DR. ERİNÇ YELDAN
- Hemşire liderliğinde çocuk sağlığına koordineli 'fiziksel aktivite programının' okul öncesi çocukların fiziksel aktivite düzeylerine etkisi: non-randomize çalışma
The effect of 'coordined physical activity program on child health under nurse leadership' on physical activity levels of preschool children: non-randomized study
MERVE SEFA ADIGÜZEL
Yüksek Lisans
Türkçe
2024
Sağlık EğitimiSelçuk ÜniversitesiHalk Sağlığı Hemşireliği Ana Bilim Dalı
PROF. DR. DENİZ TANYER
- A sample-path approach to time-average Markov decision processes
Başlık çevirisi yok
MELİKE BAYKAL GÜRSOY
Doktora
İngilizce
1988
Bilgisayar Mühendisliği Bilimleri-Bilgisayar ve KontrolUniversity of PennsylvaniaDR. KEITH W. ROSS
- Topolojik oyunlar ve bazı ilgili konular
Topological games and some related topics
SERVET SOYARSLAN
Doktora
Türkçe
2021
MatematikGazi ÜniversitesiMatematik Ana Bilim Dalı
PROF. DR. ÇETİN VURAL
PROF. DR. SÜLEYMAN ÖNAL