Makine öğrenmesi ile kaçınma hareketlerinin üretilmesi
Generating avoidance motions with machine learning
Yazar: İSMAİL ABDULLAH ÖZOĞUR
Danışman: DR. ÖĞR. ÜYESİ ZÜMRA KAVAFOĞLU
Hacettepe Üniversitesi / Bilişim Enstitüsü / Bilgisayar Grafiği Ana Bilim Dalı
Derece: Yüksek Lisans, 2019
Konu: Bilim ve Teknoloji = Science and Technology

Özet:
Kaçınma hareketleri özellikle video oyunları olmak üzere, sanal insan modellerinin kullanıldığı bilgisayar animasyonu uygulamalarında önemli yer tutmaktadır. Diğer hareketlerde ˘
oldugu gibi gerçekçi kaçınma hareketleri elde etmek için genellikle hareket yakalama teknikleri kullanılmaktadır. Fakat gerçek hayatta bir insanın yapabilecegi sonsuz miktarda hareket vardır ve bunların hepsinin hareket yakalama teknikleri ile elde edilmesi imkansızdır.
Yeteri kadar hareket yakalama verisi elde edilmiş olsa bile çok miktarda hareket içinden uygun olanın seçilmesi kolay degildir.
Çok miktarda hareket yakalama verisi içinden uygun olanını gerçek zamanlı olarak seçmek
için yapılan bazı çalışmalar vardır fakat bunlar genelde çok masraflı işlemler içermektedir
ve çok miktarda sistem kaynağı kullanmaktadır. Bu sebeple, bu tip yöntemlerin çok sayıda
karakter içeren oyunlar için kullanılması zordur.
Yukarıda bahsedilen nedenlerden dolayı, birçok oyunda gelen saldırılardan kaçınmak için
büyük sıçramalar, maksimum miktarda eğilme gibi abartılı hareketler birden fazla saldırıya
karşı kullanılmaktadır. Fakat sanal insan modelinin küçük bir sıyrılma ile kurtulabileceği
saldırılardan yüksek efor gerektiren hareketler ile kaçınması ve sürekli aynı hareketlerin kullanılması gerçekçiliği azaltmaktadır.
Bu çalışmayla hiçbir hareket yakalama verisi kullanılmadan kaçınma hareketlerinin sanal insan modeline derin pekiştirmeli öğrenme ile sıfırdan öğretilmesi amaçlanmaktadır. Öğrenme algoritmasının bileşenleri karakterin hareket için fazla efor harcamaması ve fiziksel kısıtlara uygun davranması gibi kriterler göz önüne alınarak tasarlanmıştır. Böylece öğrenilen hareketlerin gerçekçi olması amaçlanmıştır. Çevrimdışı çalışan öğrenme aşamasında sanal insan modelinin vücudunun rastgele noktalarına yine rastgele bölgelerden küreler fırlatılmış
ve modelin yaptığı hareketlerin küreden kaçınma bakımından başarısına göre ödüller verilmiştir. Çevrimdışı aşamada öğrenilen politika kullanılarak gerçek zamanlı kaçınma hareketleri üretilmiştir. Bu hareketlerin başarımını ölçmek için kullanıcı testleri yapılmış ve
testlerin sonuçları yorumlanmıştır.

Abstract:
Avoidance motion plays an important role in computer animation applications which have virtual human models, especially in video games. Motion capture techniques are often used to achieve realistic avoidance motions. However, there is an unlimited number of motion that a person can perform in real life, which are obviously impossible to be achieved with motion capture techniques. Even if adequate amount of motion capture data is available to emulate human motion, it won't be easy to find the appropriate motion from a large amount of data. There are studies to determine the most appropriate motion within a large pool of motion capture data in real time, but these studies often involve costly processes and use a large amount of system resources. Therefore, such methods are difficult to use for games with a large number of characters. Due to the reasons mentioned above, unrealistic motion such as a big jump and an extreme bending is used against multiple attacks in many games. However, the fact that the virtual human model avoids the attacks in an unrealistic way, which could in fact be easily warded off, and continuously employs the same motion lead the virtual human model to lose touch with reality. This study seeks to teach avoidance motion to virtual human model through deep reinforcement learning without using any motion capture data. The components of the learning algorithm in this study are designed in a way that the virtual model won't spend an unrealistic iii effort and will act according to physical constraints. Therefore, this study aims to teach real life motion to the virtual human model. In the offline learning phase, spheres were thrown from random areas to the random points of the virtual human model. The rewards of reinforcement learning algorithm are set based on the virtual human model's success on guarding off the spheres. Accordingly, real-time avoidance motion was generated through this learned policy at the offline learning phase. In order to measure the virtual human model's performance of avoidance motion, user tests were conducted and their results were interpreted.