HN’de Yayınlandı: Foosbar – Otonom Langırt Robotu
(github.com/misprit7)- Foosbar, bir taraftaki oyuncuyu robotla kontrol eden ve diğer tarafta bir insanın oynadığı tam otonom bir langırt masası projesidir
- Robot tarafı, motor kontrolüyle savunma, pas ve şut yapabilir; geliştirici, langırt antrenmanındaki tekrar edilebilirliği otomasyon hedefi olarak görüyor
- Depo
software,frontend,firmwareolmak üzere 3 bileşene ayrılmıştır; gerçek çalıştırma kodu ağırlıklı olarak motor kontrolüne yöneliksoftwareiçindedir frontend, masayı uzaktan oyun kumandasıyla kontrol etmeye yarayan 3D web uygulamasıdır;firmwareise skor gösterimi için e-paper ekran ve Teensy 4.1’e yönelik koddu, ancak tamamen uygulanmamış eski bir bileşendir- Proje kodu, geliştiricinin ortamına oldukça özel olduğundan olduğu gibi çalıştırılma olasılığı düşüktür; benzer denemeler için daha çok referans materyali niteliğindedir
Foosbar ne yapıyor?
- Foosbar, geliştiricisinin “doğrulayamam ama makul biçimde dünyanın en iyi langırt robotu” diye adlandırdığı otonom bir langırt masasıdır
- Masanın bir tarafını robot kontrol eder, karşı tarafta ise insan oynar
- Robot kontrol tarafı şu hareketleri yapabilir
-
Savunma
-
Pas
- Şut
- Proje tanıtım videosu YouTube videosu olarak sunuluyor
-
Geliştirme motivasyonu
- Geliştirici langırtı çok seviyor; ancak bir programcı olarak, aynı işi tekrarlayıp verimliliği azar azar artırmaya dayalı antrenman biçiminin otomasyona uygun olduğunu düşünüyor
- Foosbar, bu tür tekrarlı antrenmanı otomatikleştirme girişimi olarak ortaya çıktı
- Geliştirici, bu projenin oyunun keyifli kısmını makineleştirerek kendisinin başka işler yapabilmesini sağladığını ifade ediyor
Proje yapısı
- Depo 3 ana bileşene ayrılıyor
software: motorları doğrudan kontrol eden ana kodfrontend: masayı uzaktan oyun kumandasıyla kontrol etmeye yarayan 3D web uygulamasıfirmware: Teensy 4.1 ve e-paper ekranla skoru göstermeyi amaçlayan kod
firmwareartık güncel çekirdek bileşenlerden biri değil; geliştirici bunu hiçbir zaman tamamen uygulamadığını belirtiyor- Tüm yapı, geliştiricinin belirli donanım ortamına göre uyarlanmış durumda; depodaki kod, benzer bir proje denemek isteyenler için daha çok referans niteliğinde
Derleme ve çalıştırma
softwareiçin uWebSockets derlenmeli ve CMake’in bulabileceği şekilde kurulmalıdır- Geliştirici,
make && sudo cp ./uSockets/uSockets.a /usr/local/lib/libusockets.ayöntemiyle kurduğunu yazıyor - Qualisys realtime SDK da benzer şekilde kurulmalıdır
- Geliştirici,
- Gereksinimler kurulduktan sonra
softwarederlemesi için şu akış kullanılırcd softwaremkdir build && cd buildcmake ..make./foosbar
firmwarestandart birpioprojesidir vecd firmwaresonrasındapio run -t uploadile yüklenirfrontend,cd frontendsonrasındanpx viteile çalıştırılır
1 yorum
Hacker News yorumları
Gerçekten harika! Bence sıradaki adım, masanın iki tarafını da robot kontrolüne geçirmek ve bir langırt yapay zeka çevrim içi turnuvası düzenlemek
Her hafta farklı yapay zekaların kapışmasını izlemek için girerdim
Yapımı da harika, video da eğlenceli. Eskiden ofiste fiziksel olarak çalıştığımız günlerde langırt masasında inanılmaz zaman geçirdiğim günleri özledim
O zamanlar rozetle masaya etiket okutunca birkaç kızılötesi sensörle skoru sayan; pano, ELO, sezon ve turnuva modları olan otomatik bir skor takip sistemi yapmıştık. İstatistikler ve canlı skor akışı da otomatik güncellenirdi; güzel günlerdi
Endüstriyel motion capture kameralarına binlerce-on binlerce dolar harcamak yerine orta bütçeli bir görsel sistem tercih edilseydi nasıl görünürdü, gerçekten merak ediyorum
Örneğin 2-4 global shutter kamera kullanıp, ilk demodakine benzer bir görsel filtre çalıştırdıktan sonra Kalman filtresi/durum kestiricisiyle topun konumunu hesaplamak gibi. “Satın alabileceğin ya da sponsorun verebileceği şeyi kendin yapma” ilkesini izlemelerini anlıyorum ama bu probleme yönelik daha ucuz çözümleri ya da denemeleri de görmek isterdim
Kanalın adının From Scratch olması biraz ironik tabii
Proje fikri gerçekten iyi. Çeşitli şeyleri CNC’leştirmek epey eğlenceli ama bir noktadan sonra 3D yazıcı, CNC router, CNC freze, CNC taşlama makinesi vb. şeylerin sıfırdan yapılmasını herkes görmüş gibi geliyor
Bu ise yeni ve hoşuma gitti
Bu çocuğun ileride büyük işler yapacağını düşünüyorum
Kendi odasında böyle problemlerle uğraşıyorsa, ileride ondan neler bekleyebiliriz diye düşündüm
“Oyunda hissettiğim tüm eğlenceyi başarıyla makineleştirip ortadan kaldırdı; böylece hayatta daha önemli ve derin biçimde tatmin edici işlerin peşinden gitme özgürlüğü kazandım”
Devamındaki bağlantı [1], bu kişinin kendi alanında kesinlikle oldukça iyi olduğunu gösteriyor :) Yazı ve video da güzel, proje de müthiş
[1] https://github.com/misprit7/computerraria
Kaleci konumunda her zaman 3 oyuncu mu var? Eskiden tek kalecili dizilişle, yani 1-2-5-3 ile oynadığımı hatırlıyorum; gerçi epey zaman geçti
Geleneksel masalarda kavisli köşeler, topun köşede ölü kalmaması için gerekli. Ama 3 kalecili düzende kavisli köşe olmasa da topu her zaman alabiliyorsun
ITSF Dünya Kupası videosunda iki tarafta da yalnızca bir kaleci olduğunu görebilirsin: https://m.youtube.com/watch?v=3vnrAIOWDwo&pp=ygUOaXRzZiB3b3J...
ABD’de langırtın yükselişini ve sonra düşüşünü anlatan epey ilginç bir belgesel de vardı; doğru hatırlıyorsam Tornado masalarını yapan şirketle yakından bağlantılıydı. Eskiden YouTube’da izlemiştim ama şimdi bulamıyorum. “Foosballers” olabilir ama emin değilim
En azından International Table Soccer Federation’ın resmî masalarında tek kaleci var ve köşeler yükseltilmiş
https://www.tablesoccer.org/tables/leonhart.php
41 sayfalık kural kitabına dalmadan önce bu tavşan deliğinden hemen çıkmam gerek
https://www.tablesoccer.org/rules/documents/Standard_Matchpl...
Günümüzde rekabetçi langırtın bir kısmı arkada 3’lü diziliş kullandığı için daha az yaygın ama en az bir istisna var. Karma öğrenci birliği mezun buluşması için araştırmıştım; klasik rampalı masaları bulmak çok zordu. Sunta oldukları için kolay bozulmuşlardı. Rampa kullanan bir şirket, sonradan eklenen dik köşe rampaları yerine daha yumuşak bir eğim kullanıyor
Gerçekten harika. Evde pratik yapmak için bir tane isterdim
Peki bu robot trash talk da yapabiliyor mu? Langırtı seven biri olarak, rakibin moralini bozmak kültürün derinlerine işlemiş durumda (bkz. Community) ve en üst seviyede kazanmak için bunun büyük bir parçası var; sıradaki adım bu olmalı. Ciddi bir langırt oyuncusu, düzgün trash talk için ilk gerçek AGI’yi bile yapabilir gibi geliyor
Langırt, masa tenisi gibi olimpik bir spor ya da satranç gibi kültürel saygı gören bir masa oyunu değil; ama günümüzde robotlar satrançta beni kolayca yense de son teknoloji robot langırt masası hâlâ yenebileceğim bir şey gibi görünüyor
Videonun geneli bilerek kuru bir mizaha sahipti; bu süreçte kardeşini dağıttığı sahne özellikle komikti. Kardeşi de bunu iyi karşıladı
Sonunda sadece videoyu yayımlamak istediğim için yapmadım ama yapsaydım komik olurdu
Epey havalı. Bu kişi ünlü bir YouTuber falan mı? Şirketlerin böyle üst seviye parçalar gönderecek kadar başarılı sponsor bulunmasına şaşırdım
Yüzünü bir yerden tanıyorum diyordum; Terraria adlı oyunun içinde tam bir CPU yapan kişiymiş
https://www.youtube.com/watch?v=zXPiqk0-zDY