GridAE: Yapay Evrim Uygulamaları için Grid Tabanlı bir Altyapı Erol Şahin Bilgisayar Mühendisliği Bölümü, Orta Doğu Teknik Üniversitesi Ankara, Türkiye 2. ULUSAL GRİD ÇALIŞTAYI, 1-2 Mart 2007, TÜBİTAK, ANKARA
İçerik Giriş Doğal Evrim Yapay Evrim PES: Tek Bilgisayar Kümesi için Paralel Evrim Sistemi GridAE: Yapay Evrim Uygulamaları için Grid Tabanlı bir Altyapı
Giriş Yapay Evrim (YE), mühendislik ve robotbilimden sosyal bilimler ve genetiğe kadar değişen alanlardaki karmaşık problemlerin çözümü için nispeten yeni bir yaklaşımdır. Doğal evrimde kullanılan yöntemlerden esinlenen YE, bir aday çözümler popülasyonu yaratır ve verilen problem için bu çözümlerin iyiliğini (fitness) hesaplar. Adayların iyilik değerlerini temel alarak, çaprazlama ve mutasyon gibi genetik işlemler kullanılarak yeni bir aday çözümler nesli yaratılır.
Giriş Yeni nesil yaratma işlemi, daha iyi çözümleri daha çok kullanarak (survival of the fittest) yeni neslin kötü çözümleri içerme olasılığını azaltır. İşlem yeterince iyi bir çözüm bulununcaya kadar tekrarlanır. Her evrim işlemi çok sayıda iyilik hesaplaması gerektirir. 2. ULUSAL GRİD ÇALIŞTAYI, 1-2 Mart 2007, TÜBİTAK, ANKARA
Doğal Evrim Bir popülasyon çok çeşitli bireylerden oluşur. Bireylerin özellikleri genleri tarafından belirlenir. Daha iyi bireyler ortalamanın üzerinde iyilikte yavru verme eğilimindedirler. Yavrular, daha iyi bireylerin genlerinin çaprazlanmasıyla oluşurlar.
Yapay Evrim Bir çözümler popülasyonu oluştur. Önceden tanımlanmış bir iyilik fonksiyonu kullanarak her bir çözümün kalitesini hesapla. Ortalamanın üzerinde çözümler üretmek için daha iyi çözümleri kullan. Daha iyi çözümlerin çaprazlanmasıyla oluşturulmuş yeni çözümler elde et.
Benzerlik PROBLEM ÇÖZME Problem Aday Çözüm Kalite EVRİM Çevre Birey İyilik (Fitness) İyilik hayatta kalma ve üreme şansı Kalite yeni çözümler üretme şansı Eiben ve Smith in sunumundan alınmıştır. 2. ULUSAL GRİD ÇALIŞTAYI, 1-2 Mart 2007, TÜBİTAK, ANKARA
Uygulama Alanları Mühendislik Bilgisayar Grafiği Tıbbi Görüntüleme Kontrol Sistemleri Robotbilim...
Evrimsel Robotbilim Problem: Robota istenilen görevi yaptıracak bir denetleyici nasıl tasarlanmalı? Elle kullanılan bir denetleyici tasarlamak genellikle zor yada imkansızdır. Değişik denetleyici seçeneklerini değerlendirmek için gerçekçi simülatörler kullanılır.
Evrimsel Robotbilim Algılayıcı verisi Kromozom 010101 100111... Denetleyici Denetleyici Denetleyici parametrelerine çevir Robotlardaki denetleyiciyi Harekete Getirici Çıktı kullan 2. ULUSAL GRİD ÇALIŞTAYI, 1-2 Mart 2007, TÜBİTAK, ANKARA
Gelişen Denetleyiciler Seç Çoğalt Mutasyona uğrat... Nesil n Nesil n+1... Krom.1: 1010001110... Krom.2: 0011110101...... Krom.1: 0101011001... Krom.2: 1100110111...... Popülasyon n Popülasyon n+1
Fizik Tabanlı Simülasyon Avantajlar Gerçek robotlu deneylerden daha hızlı ve güvenilir Gerçekçi Dezavantajlar Yüksek işlem gücü ihtiyacı!
Tek Makine Kısıtlamaları Hesaplama gereken: Bayağı Diferansiyel Denklemleri Çözmek Daha çok çarpışma ile karmaşıklığı arttırmak Tek bilgisayar için gereken yaklaşık zaman: Bir tek evrim için, dakikalar mertebesinde 100 kromozom ve 100 nesil için toplam zaman > bir hafta (tek makinede)
Problem / Çözüm YE nin işlemsel gereksinimleri, bir tek bireyin hesaplamalarındaki berimsel gereksinimlerle orantılıdır. Bu durum büyük bir dar boğaz yaratmakla beraber tüm işlemin paralelleştirilmesi için bir fırsat oluşturuyor.
PES: Bilgisayar Kümeleri için Paralel Evrim Sistemi Geçmiş çalışma: Soysal O., Bahceci E., and Sahin E. PES: A system for parallelized fitness evaluation of evolutionary methods, in Yazici and Sener (eds.), Proc. of the 18 th ISCIS, LNCS 2869, 889-896, Springer-Verlag, 2003.
PES in Mimarisi Sunucu Yapay Evrim Clients İyilik Hesaplaması PES-C Client Birimi Sunucu Birimi PES-S PES-C Client Birimi PES-C Client Birimi
PES in İletişim Modeli PES-S PES-C PES Ağ Adaptörü PES Ağ Adaptörü PVM / MPI PVM / MPI Makina Makina
PES-S Sunucu Birimi Görev Üreticisi En İyi Çözümler PES-S Görev Yöneticisi Yapay Evrim Konfigürasyon Yöneticisi
PES-C Client Birimi PES-C Görev İyilik Simülatör İyilik Hesaplayıcısı
PES de İşlemci Yükü Dengeleme Dinamik simülasyon Değişen sayıda çarpışma Değişken görev karmaşıklığı Değişken işlemci yükü Dörtgenler ve Altıgenler: görevler Dik çizgiler: Yeni nesil başlangıcı
PES de Hata Tahammülü 2. işlemcide hata oluyor 15. saniyedeki ping işleminde tespit ediliyor 19. saniyede görev yeniden başlıyor Kırmızı çizgiler: Ping Mavi çizgiler: Nesil Sayılar: Görev numarası
PES de Verim ve Hızlanma 2. ULUSAL GRİD ÇALIŞTAYI, 1-2 Mart 2007, TÜBİTAK, ANKARA
PES de 128 İşlemci ile Nesil Boşluğu 2. ULUSAL GRİD ÇALIŞTAYI, 1-2 Mart 2007, TÜBİTAK, ANKARA
GridAE: Yapay Evrim Uygulamaları için Grid Tabanlı bir Altyapı 2. ULUSAL GRİD ÇALIŞTAYI, 1-2 Mart 2007, TÜBİTAK, ANKARA Bu çalışma YE uygulamaları için Grid tabanlı bir altyapı geliştirmeyi amaçlamaktadır PES in fikir ve deneyimini Grid üzerine taşıyarak. Bu altyapı evrim hesaplamalarını Grid üzerine dağıtacak YE kullanıcısı için saydam bir arayüz oluşturacak. Altyapının analiz, tasarım, gerçekleştirme ve test etme aşamalarında, evrimsel robotbilim problemleri (örneğin özerk robotlar için denetleyiciler geliştirmek), yol gösterici olarak temel uygulama alanımız olacak.
GridAE Mimarisi Web Arayüzü Uygulama Birimi Yönetici bölümü Uygulama Birimi İşçi bölümü...... Uygulama Birimi İşçi bölümü GridAE-S GridAE-C... GridAE-C Görev Grubu Yönetimi EDG glite
Tesekkurler.. 2. ULUSAL GRİD ÇALIŞTAYI, 1-2 Mart 2007, TÜBİTAK, ANKARA
GridAE Çalışma Birimleri PES Altyapı Görev Grubu Yönetimi GridAE-S GridAE-C Web Arayüzü Evrimsel Robotbilimi Uygulaması Test Etme, Hata Ayıklama & Arıtma
GridAE Takvimi PES tamamlanmış durumda. Görev Grubu Yönetimi alt katmanı, 2006 yazında geliştirildi. SEE-Grid-2 nin GridAE ye desteği, Ocak 2007 de resmen başladı. Proje 10-12 ay sürecek.
Görev Grubu Yönetimi Tamamlandı! Görevleri (GridAE işçi lerini) grup olarak teslim etmek ve yönetmek için kullanılacak İçerdiği komutlar: edg-jobgroup-submit edg-jobgroup-status edg-jobgroup-cancel glite-jobgroup-submit glite-jobgroup-status glite-jobgroup-cancel Bağımsız bir ara katman başka projelerde de kullanılabilir