Yapay Zeka Uygulamaları

MBlock ile Yapay Zeka tabanlı Labirent Oyunu

Labirentler, dünyanın bütün ülkelerinde yarışmalarda kullanılan bir aktivitedir. Araştırmalara göre labirentler, insanın sol beyninin aktif olarak çalışmasını sağlamaktadır. Labirent çözen kişi sondan başa veya içerden dışarıya ya da baştan sona veya dışarıdan içeriye doğru hareket ederek karmaşık bir labirenti çözebilir. Çıkmaz yollar bizim için engel ama hedef çıkmaz yollara uğramadan çıkışa varmaktır. Günümüzde kullanılan jiroskopların oluşturulma nedeni olan labirentler , denge sağlama veya sabitleme yapılarını baz alarak oluşturulmuştur.

Bu uygulamamızda bir labirent yapısı oluşturulacaktır. Yön yapıları ile bu labirentten hedefe ulaşmayı sağlayacağız. Oyun mantığında oluşturulmuş yapımız ile kendimizi motive edecek olup, beynimizin sol tarafının çalışmasını sağlayarak, daha zinde kalmayı sağlayacağız.

mBlock 5 programımızı açıyoruz. ”Kuklalar” yapısını tıklıyoruz ve alt tarafta bulunan +uzantı butonuna tıklıyoruz.

Makine öğrenimi eklentisini “Ekle” seçeneğine tıklayarak ekliyoruz.

Artık programımıza makine öğrenmesini yaparak kodları ekleyebileceğimiz menümüzü eklemiş olduk. ”Eğitim Modeli” menüsü ile biz makine öğrenmesini yaptıktan sonra kodlarını burada göreceğiz. ”Eğitim Modeli” yapısına tıklıyoruz. Karşımıza makine öğrenmesi ve eğitimleri gerçekleştirdiğimiz yapı gelmektedir.

Burada en sol tarafta bizim webcam görüntümüz yer almaktadır. Orta alandaki örnekler kısmında
ise girdi olarak verilecek yapılar yer almaktadır. Eğer 3 üç tane model bizim için yeterli olmazsa yeni bir model için ‘Yeni bir model oluştur’ a tıklayarak başka model eklenmesi sağlanacaktır. Örnek ismini üst taraftaki boşluğa yazacağız. Kare alan bizim webcam görüntüsünün ön izlemesini içerecektir. Webcam alanına görüntüyü göstereceğiz ve ‘Öğren’ e tıklayarak makinemizin bizim görüntümüzü öğrenmesi sağlanacaktır. Burada önemli olan ne kadar çok örnek görüntü öğretilirse sonuçlarımız o kadar daha doğru oluşacaktır. Etkinliğimiz için 4 adet örnek oluşturacağız. Bunlar yönleri içerecek şekilde:
‘SOL’, ‘SAĞ’, ‘YUKARI’, ‘AŞAĞI’ dır. Bu ifadeleri eğiterek yönlerin kullanımı ile kuklamızı hedefe ulaştırmak için programın akışında sağlanacaktır.

Şimdi eğitime başlayalım;

NOT: Burada dikkat edeceğimiz nokta kağıdı tuttuğumuz yön baz alınmıştır. İsterseniz yazı olarak da yönleri öğretebilirsiniz.

Kameramızın sağ ve solu ters gösterdiği dikkatinizi çekmiş olacaktır. Bu sorun değil biz kameraya kağıdı gösterdiğimiz yöne doğru labirentte hareket ettireceğiz.

Artık programımıza makine öğrenmesini yapacak ve arka planda görüntümüzü işleyerek bizlere
çıktı üretecek olan kodları ekleyebileceğimiz menümüzü eklemiş olduk. Şimdi yapmamız gereken şey alt taraftaki kodları kullanarak ekrandan görüntü almayı ve sonuç değerini oluşturmayı sağlamaktır.

Öncelikle Algoritmamızı oluşturuyoruz.

• Kukla kamerayı açarak görüntü alır.
• Görüntüyü arka planda işler.
• Eğer Kukla Hedefe Ulaşmamışsa;
• Eğer “SOL” yönü seçilmiş ise
• Kukla Sola Doğru 1 Adım İlerleyecek
• Eğer “SAĞ” yönü seçilmiş ise
• Kukla Sağa Doğru 1 Adım İlerleyecek
• Eğer “YUKARI” yönü seçilmiş ise
• Kukla Yukarı Doğru 1 Adım İlerleyecek
• Eğer “AŞAĞI” yönü seçilmiş ise
• Kukla Aşağı Doğru 1 Adım İlerleyecek
• Eğer Kukla Hedefe Ulaşmışsa;
• Tebrikler Kazandınız!
• Eğer Kukla Çizgilere Değmişse;
• Başlangıç Noktasına Geri Dön!

Öncelikle arka planımızı oluşturacağız, sonra da arka planımızı çizeceğiz. Bunun için “Arka plan” sekmesine tıklayacağız. Kostümler menüsünü kullanacağız. Bu kısımdan çizgi aracını kullanarak labirentimizi oluşturuyoruz.

Aşağıdaki gibi çizim alanında arka planımızı oluşturduktan sonra sahnemizin arkasına eklendiğini
göreceğiz. Burada düzgün bir çizim yapmak oyunumuz için hedefe ulaşmada kolaylık sağlayacaktır.

Şimdi kuklamızı düzenlemeye geldik. İsterseniz kuklayı farklı bir kukla ile değiştirebilirsiniz. Bu uygulama için panda kuklamızla devam edeceğiz. Kuklalarımızın yollarımızdan rahatça geçebilmesi için boyutunun küçültülmesi gerekir.

Kuklamızın başlangıç noktasını labirentimizin giriş noktası olarak ayarlıyoruz. Siyah çizgiler değmememiz gereken engelleri oluşturmaktadır. Başlangıç noktası çıkış noktamız, Bitiş noktası ise varmak istediğimiz hedef olarak belirlenmiştir. Sizler isterseniz bu alana herhangi bir kukla veya cisim ekleyebilirsiniz. Yön tuşlarından hangisinin bilgisi gelirse o yönde hareket edecek olan kuklamızı hedefe ulaştırmamız gerekecektir. Süre bilgisinin de alındığı yapımızda en kısa sürede bitirmek bizler için eğlenceli olacaktır.

 

Kuklalarımızın boyutunu ayarladıktan sonra başlangıç noktamıza koyuyoruz. Böylelikle tasarımlarımız bitmiş oluyor. Şimdi kodlamamıza geçeceğiz. Kod blokları aşağıdaki şekildedir:

Değişkenler kod bloğundan “süre” isminde bir değişken oluşturmamız gerekiyor. 

Böylece bu uygulamamızı da tamamlamış oluyoruz. Artık oluşturduğumuz bu yapay zeka tabanlı labirent oyununu oynayabilirsiniz. Herkese iyi eğlenceler…

Ekran Çıktısı

 

 

Etiketler

İlgili Makaleler

Bir cevap yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir

Başa dön tuşu