Simüle edilmiş robotların birden fazla resimle gökyüzüne karşı büyümesine tanık olun: Pekiştirmeli öğrenmede evrimsel stratejilerin uygulanması hakkında

Leifeng.com Yapay Zeka Teknolojisi Yorumu: Bu makale otoro.net'in teknik blog dizilerinden biridir.Evrim Stratejilerindeki birçok kavramı popüler ve görsel bir şekilde açıklamaktadır. Bu makale, spor salonu ortamı arayüzü tarafından tanımlanan çeşitli sürekli kontrol güçlendirme öğrenme görevlerini gerçekleştirmek üzere ileri beslemeli sinir ağı akıllı aracılarına yönelik stratejiler bulmak için evrim stratejilerinin nasıl kullanılacağını açıklamaktadır. Önceki makale için bkz. "Evrimsel Stratejiye Giriş: Optimizasyon Sorunlarına Başka Bir Bakış Açısı." Lei Feng.com AI Technology Review tarafından derlenmiştir.

Kod portalı: GitHub

Son makalede, gradyanları açıkça hesaplamadan fonksiyon parametrelerini optimize etmek için kullanılabilecek bazı evrim stratejileri (ES) algoritmalarını tanıttım. Bu algoritmalar, Takviyeli Öğrenme (RL) problemlerini çözmek için kullanılabilir. dolayısıyla Sinir ağı aracısının uygun model parametrelerini bulmasına yardımcı olun . Bu yazıda nasıl yapılacağını keşfedeceğim Evrim stratejisinin belirli pekiştirmeli öğrenme problemlerine uygulanması Ve daha istikrarlı ve sağlam bir strateji bulmamıza yardımcı olacak bazı yöntemleri vurgulayın.

Pekiştirmeli öğrenmenin evrimsel stratejisi

Takviye öğrenme algoritmasının her zaman adımında akıllı aracıya bir ödül sinyali vermesi gerekmesine rağmen, evrim stratejisi algoritması yalnızca belirli bir ortamdaki kullanıma sunma aşaması bittikten sonra temsilci tarafından elde edilen nihai kümülatif ödülle ilgilenir. Pek çok soruda, ajanın kazanıp kazanmadığı, robot kolunun nesneyi alıp almadığı veya ajanın hayatta kalıp kalmadığı gibi sadece görevin sonunda sonucu biliyoruz. Bu yönlerdeki problemler, evrimsel stratejilerin daha iyi olabileceğidir. Geleneksel pekiştirmeli öğrenmenin amacı. Aşağıda, temsilcinin sunum aşamasını yalnızca kümülatif ödülleri önemsediğimiz bir OpenAI Gym ortamında özetleyen bir sözde kod parçası bulunmaktadır:

def rollout (aracı, env):

obs = env.reset

done = False

total_reward = 0

bitmemişken:

a = agent.get_action (obs)

gözlem, ödül, bitti = ortam. adım (a)

total_reward + = ödül

total_reward döndür

Kullanıma sunumu bir amaç işlevi olarak tanımlayabiliriz, çünkü amaç işlevi akıllı aracının model parametrelerini en uygun puana eşleyebilir ve daha sonra, önceki makalede açıklandığı gibi, bir dizi uygun model bulmak için bir evrim stratejisi çözücü kullanabilir. parametre:

env = gym.make ('worlddomination-v0')

# favori ES'mizi kullanın

çözücü = EvolutionStrategy

True iken:

# ES'den parametre seti vermesini isteyin

çözümler = çözücü.ask

# sonuçları tutmak için dizi oluşturun

fitlist = np.zeros (çözücü.popsize)

# verilen her çözüm için değerlendirme yapın

aralıktaki i için (çözücü.popsize):

# Aracıyı bir çözümle başlat

aracı = Aracı (çözümler )

# bu temsilciyle kullanıma sunma ortamı

uygunluk listesi = kullanıma sunma (aracı, ortam)

# puan sonuçlarını ES'ye geri ver

solver.tell (fitness_list)

# ES'den en iyi parametreleri ve uygunluğu alın

bestsol, bestfit = çözücü.result

# görevimizin çözülüp çözülmediğine bakın

en uygunsa > GEREKSİNİM:

kırmak

Deterministik ve Stokastik Politikalar

Temsilcimiz, çevre tarafından kendisine verilen gözlemleri girdi olarak alır ve daha sonra ortamın sunumu sırasında her adımda bir eylem çıktılar. Ajanı gerektiği gibi modelleyebilir ve tekrarlayan sinir ağlarında sabit kodlanmış kurallar, karar ağaçları, doğrusal fonksiyonlar ve yöntemler kullanabiliriz. Bu makalede, aracının gözlemlerini (vektör x) karşılık gelen eylemlerle (vektör y) doğrudan eşlemek için iki gizli katmana sahip basit bir ileri besleme ağı kullanıyorum:

Fh ve fout aktivasyon fonksiyonları tanh, sigmoid, relu veya kullanmak istediğiniz diğer fonksiyonlar olabilir. Benim için tanh kullanmayı seviyorum. Çıktı katmanı için, bazen fout'un doğrusal olmayan dönüşümü olmayan bir transfer fonksiyonu olduğunu umabiliriz. Tüm ağırlıkları ve önyargı terimlerini bir W vektörüne bağlarsak, yukarıdaki sinir ağının deterministik bir fonksiyon y = F (x, W) olduğunu görebiliriz ve daha sonra daha önce tanıtılan arama döngüsü ile birlikte evrim stratejisini kullanabiliriz. Gel bir çözüm bul W.

Peki ya temsilcimizin deterministik olmasını istemiyorsak? Bazı görevler için, taş-kağıt-makas kadar basit olsa bile, en uygun strateji rastgele bir davranıştır, bu nedenle akıllı ajanın rastgele bir strateji öğrenebileceğini umuyoruz. Y = F (x, W) 'yi rastgele bir stratejiye dönüştürmenin bir yolu, W'yi rastgele yapmaktır. Modeldeki her bir parametre wiW, normal dağılıma uyan rastgele bir değişken N (i, i) 'dir.

Bu tür rastgele ağlara Bayes sinir ağı denir. Bayes sinir ağı bir Önceden dağıtılmış ağırlıklar Sinir ağı. Bu durumda, çözmek istediğimiz model parametreleri, ağırlık W değil, ve vektör kümesidir. Şebekenin her ileri yayılma sürecinde, N (, I) dağılımına uygun yepyeni bir W üretilir. Literatürde Bayes ağlarını birçok soruna uygulayan ve eğitim ağlarındaki birçok zorluğu çözen birçok ilginç çalışma vardır. Çözüm uzayını W yerine ve olarak ayarlayarak, evrim stratejisi doğrudan rastgele stratejinin çözümünü bulmak için de kullanılabilir.

Rastgele politika ağları, pekiştirmeli öğrenme araştırmalarında da çok popülerdir. Örneğin, yakın uç politika optimizasyonu (PPO) algoritmasında, son katman ve parametre kümesidir ve eylem N (, I) 'den örneklenir. Parametrelere gürültü ekleme işlemi, akıllı ajanları çevreyi keşfetmeye ve yerel optimadan kaçmaya teşvik etmek olarak da bilinir. Akıllı ajanların keşfetmesini gerektiren birçok görev için, tüm W'nin rastgele olmasına ihtiyacımız olmadığını, ancak rastgeleliği tatmin etmek için yalnızca önyargı teriminin yeterli olduğunu buldum. Robot okulu ortamındakiler gibi zorlu hareket görevleri için, genellikle sadece önyargı teriminin parametrelerinin normal dağılıma uyduğu rastgele bir strateji bulmak için evrimsel stratejiler kullanırım.

İki ayaklı yürüyenler için sağlam evrim stratejisi

Güçlü strateji araştırmasının, evrimsel strateji algoritmalarının uygulanabileceği başka bir alan olduğunu buldum. Veri verimliliği ile stratejinin çoklu rastgele deneylerde ne kadar sağlam olduğu arasındaki dengeyi kontrol etmek istiyorum. Bunu kanıtlamak için, Angry Birds'ü geliştirmek için kullanılan Box2D fizik motorunu kullanarak Oleg Klimov tarafından oluşturulan BipedalWalkerHardcore-v2 adlı bir ortamda evrim stratejisini test ettim.

Akıllı temsilcimiz BipedalWalkerHardcore-v2'yi çözdü

Bu durumda, akıllı temsilcimiz rastgele oluşturulmuş bir araziyi sınırlı bir süre içinde düşmeden geçebilmek için bir strateji öğrenmelidir. 10 radar lazer sensörü, açı parametreleri ve kontaktör parametreleri dahil olmak üzere 24 giriş vardır. Temsilci, haritadaki mutlak koordinatlarını bilmiyor. Hareket alanı 4 motorun torkunu kontrol eden 4 sürekli değerdir. Toplam ödülün hesaplanması, temsilci tarafından kat edilen toplam mesafeye bağlıdır. Genel olarak, temsilci tüm haritayı sorunsuz bir şekilde yürürse, 300 puandan fazla puan alır. Ek olarak, işlem boyunca uygulanan motorun torkuna göre az miktarda nokta çıkarılmalıdır, böylece enerji sınırlayıcı bir koşul haline gelmiştir.

BipedalWalkerHardcore-v2 olacak görev tamamlandı Akıllı ajanın ortalama skorunun 100'den fazla ardışık rastgele denemede 300'den fazla olması olarak tanımlanır. Bir aracıyı haritayı bir veya iki kez başarılı bir şekilde geçmek üzere eğitmek için pekiştirmeli öğrenme algoritmalarını kullanmak nispeten kolay olsa da, akıllı aracının onu tutarlı ve verimli bir şekilde tamamlayabilmesini sağlamak zordur, bu da bu görevi ilginç bir zorluk haline getirir. Bildiğim kadarıyla Ekim 2017 itibariyle bu sorunu çözdüğü bilinen tek çözüm temsilcim.

Erken aşama, nasıl yürüyeceğinizi öğrenin

Hataları nasıl düzelteceğinizi öğrenin, ancak yine de çok yavaş

Topografik harita her deney için rastgele oluşturulduğundan, bazen arazi çok basit, bazen de çok karmaşık olabilir. Doğal seçilim sürecimizin bu zayıf strateji ajanlarının (basit arazi haritaları aracılığıyla) gelecek nesle girmesine izin vermesini istemiyoruz. Ek olarak, iyi stratejilere sahip bu akıllı ajanlara kurtuluş şansı vermeyi de umuyoruz. Sonunda yaptığım şey, bir aracı gruplamasını (bölüm) 16 rastgele gösterimin ortalaması olarak tanımlamak ve kondisyon puanı olarak 16 gösterimlik kümülatif ödül ortalamasını kullanmaktı.

Bu tür bir olayla başa çıkmanın bir başka yolu da, aracıyı 100'den fazla deneme için test ediyor olsak bile, genellikle onu tek bir denemede eğitiyoruz, dolayısıyla test görevi ve optimize ettiğimiz eğitim görevi aynı. Rastgele bir ortamda tüm akıllı ajanların ortalamasını birden çok kez alarak, eğitim seti ile test seti arasındaki boşluğu daralttık. Eğitim setini fazla eğitebilirsek, o zaman test setini de fazla zorlayabiliriz çünkü bu pekiştirmeli öğrenmede iyi bir şeydir.

Elbette, algoritmamızın veri verimliliği şu anda olduğundan 16 kat daha kötü, ancak nihai strateji çok daha sağlam. Nihai stratejiyi arka arkaya 100'den fazla rastgele denemede test ettiğimde, ortamı başarıyla geçtim ve ortalama 300 puanın üzerinde bir puan aldım. Bu ortalama yöntemi olmadan, 100'den fazla denemede en iyi ajanın ortalama puanı sadece 220-230 civarındadır. Bildiğim kadarıyla Ekim 2017 itibariyle, bu çevre sorununa ilk çözüm bu.

PEPG evrimini kullanan kazanan çözüm, grup başına ortalama 16 kez çalışır

Ben de PPO kullandım. Takviye öğrenimi için en gelişmiş politika gradyan algoritması , Ve sonra bu göreve en iyi şekilde uyması için onu ayarlamaya çalıştım. Sonunda, 100 randomize denemede ortalama 240 ila 250 puan almak için yalnızca PPO elde edebilirim. Ancak gelecekte başkalarının bu çevresel sorunu çözmek için PPO veya diğer pekiştirmeli öğrenme algoritmalarını kullanabileceğinden eminim.

Takip güncellemesi (Ocak 2018):

dgriff777, BipedalWalkerHardcore-v2'yi 100'den fazla rastgele denemede 300 puan alacak şekilde eğitmek için girdi olarak 4 yığın çerçeveli A3C + LSTM'nin sürekli sürümünü kullanabilir. Bu modeli GitHub'da açık kaynaklı ve pytorch tarafından yazılmıştır.

Gerçek dünyada, yeterince güvenli politikalara ihtiyacımız var, bu nedenle veri verimliliği ile politika sağlamlığı arasındaki ödünleşimi kontrol etmek çok faydalı ve önemlidir. Teorik olarak, yeterli bilgi işlem gücüne sahipsek, gerekli 100 gösterimin ortalamasını bile alabilir ve iki ayaklı yürüteçlerimizi ihtiyaçları karşılamak için doğrudan optimize edebiliriz. Profesyonel mühendisler genellikle tasarımlarının belirli kalite güvencesini ve belirli güvenlik faktörlerini karşılamasını ister. Gerçek dünyayı etkileyebilecek stratejileri öğrenmek için akıllı temsilciler yetiştirdiğimizde, bu güvenlik faktörlerini dikkate almamız gerekir.

İşte evrim stratejisi tarafından keşfedilen diğer bazı çözümler:

CMA-ES çözümü

OpenAI-ES çözümü

Ayrıca, aracıyı eğitmek için yüksek başlangıç gürültü parametrelerine sahip rastgele bir strateji ağı kullanıyorum, böylece aracı her yerde gürültüyü görebilir, böylece davranışı biraz kafa karıştırıcı olur. Temsilcinin, girdi ve çıktı bilgilerinin doğruluğunu onaylamadan görevi öğrenmesine neden olur (temsilci 300 veya daha fazla puan alamaz):

Rastgele stratejili iki ayaklı yürüteç

Kuka mekanik tutma kolu

Ben de denedim Basitleştirilmiş Kuka robot kolu Bu ortalama tekniği ile evrim stratejisi, tarama görevinde kullanılır. Bu ortam pybullet ortamında mevcuttur. Simülasyonda kullanılan Kuka modeli, gerçek bir Kuka robot koluna benzeyecek şekilde tasarlanmıştır. Bu basitleştirilmiş görevde, ajana nesnenin koordinatları anlatılır.

Daha gelişmiş pekiştirmeli öğrenme ortamları, aracının bir eylemi doğrudan piksel girişinden çıkarmasını gerektirebilir, ancak prensip olarak, bu basitleştirilmiş modeli önceden eğitilmiş bir evrişimli ağ ile birleştirebilir ve bunu evrişimli ağ aracılığıyla verebiliriz. Koordinatların tahmini değeri.

Rastgele strateji ile eğitilmiş robot kolu kavrama görevi

Temsilci nesneyi başarıyla ele geçirirse, 10.000 puan alır, aksi takdirde 0 olur. Sonra bazı enerji tüketim puanlarını düşürün. 16 rastgele denemenin seyrek ödüllerinin ortalamasını alarak, evrimsel stratejilerin sağlamlığı optimize etmesine izin verebiliriz. Bununla birlikte, sonunda, nesneleri yalnızca% 70 ila% 75 oranında yakalayabilen deterministik bir strateji veya rastgele bir strateji elde ettim. Burada iyileştirme için yer var.

Minitaur'un birden fazla görevi öğrenmesine izin verin

Aynı anda birden fazla karmaşık görevi gerçekleştirmeyi öğrenmek, tek bir görevi daha iyi gerçekleştirmemizi sağlar. Örneğin, Shaolin Tapınağındaki keşişler ağaç kütüklerine ağırlık kaldırarak ağırlık kaldırmadan dengelerini daha iyi korumalarını sağlayabilir. Dağda 80 mil hızla araba kullanmayı öğrenin ve bardağa su dökmediğinizden emin olun, bu da sürücüyü daha iyi bir yasadışı sokak yarışçısı haline getirecektir. Ayrıca, daha kararlı stratejiler öğrenebilmeleri için akıllı aracıları birden çok görevi gerçekleştirecek şekilde eğitebiliriz.

Shaolin keşiş

Sürüklenmeyi öğrenmek

Kendi kendine oynayan ajanlar üzerine yapılan son araştırma çalışmaları, Sumo güreşi (birçok beceri gerektiren bir spor) gibi zor görevleri öğrenen akıllı ajanların rüzgarda yürümek gibi daha basit görevleri yerine getirmek için de kullanılabileceğini göstermiştir. Ek eğitim gerekmez. Erwin Coumans kısa süre önce Minitaur'un üstünde oyuncak bir ördekle yürümeyi öğrenmesini sağlamaya çalıştı. Ördek düşerse, Minitaur başarısız olacaktır. Bunun arkasındaki fikir, bu tür görev geliştirmelerinin, öğrenme stratejilerinin simülasyondan gerçek Minitaur'a aktarılmasına yardımcı olmasını beklemektir. Onun örneklerinden birini aldım ve Minitaur ve oyuncak ördek kombinasyonunu evrimsel stratejiler kullanarak eğitmeye çalıştım.

Pybullet'te CMAES stratejisiyle çalışan minitaur

Ghost Robotics'ten gerçek Minitaur robotu

Pirületteki Minitaur modeli, gerçek fiziksel Minitaur'u taklit etmek için tasarlanmıştır. Bununla birlikte, mükemmel bir simülasyon ortamında eğitilen stratejiler çoğu zaman gerçek dünya için uygun değildir. Simülasyon ortamındaki küçük görev geliştirmelerine bile genellenemez. Örneğin, yukarıdaki resimde ilerlemek için eğitilmiş bir Minitaur var (CMA-ES kullanarak), ancak üzerine bir ördek yerleştirildiğinde bu stratejinin ördeği her zaman uzak tutmadığını görüyoruz. Odadan düştü.

Sadece basit ileri görevler stratejisini eğittim, üzerine bir ördek koyun

Ördeği görev eğitimi stratejisi olarak öne çıkarın

Ördek Minitaur'a ek olarak yerleştirildiğinde, basit yürüme görevinden öğrenilen strateji hala bir dereceye kadar işe yarıyor, bu da oyuncak ördek eklemenin zorluğu çok fazla artırmadığı anlamına geliyor. Oyuncak ördeğin tabanı nispeten sabittir, bu nedenle Minitaur ördeğin sırtından düşmesine izin vermez. Görevi daha da zorlaştırmak için ördeği bir topla değiştirmeye çalıştım.

CMA-ES bir hile stratejisi öğrendi

Bununla birlikte, ördekleri toplarla değiştirmek, hemen dengeli bir denge stratejisi üretmez. Aksine, CMA-ES topu önce bacağının oluşturduğu deliğe kaydıran ve daha sonra topu deliğe sokan ve böylece akıllı bir şekilde odadan dışarı çıkaran bir strateji keşfetti. Burada öğrenilen ders, hedef odaklı bir arama algoritmasının ortamdaki herhangi bir tasarım kusurundan yararlanmayı öğreneceği ve bunları hedeflerine ulaşmak için kullanacağıdır.

Küçük bir topla CMA-ES eğitimi

Topu küçülttükten sonra, CMA-ES aynı anda ilerleyebilen ve dengeyi koruyabilen rastgele bir strateji bulabildi. Bu strateji aynı zamanda daha kolay ördek görevine de aktarılabilir. Gelecekte, bu tür görev geliştirme teknolojisinin gerçek robotların transfer öğrenmesinde önemli bir rol oynayacağını umuyorum.

ESTool

Evrim stratejisinin en büyük satış noktası, paralelleştirmeyi kolayca elde etmek için birden fazla işçiyi çalıştırmak için farklı iş parçacıkları ve hatta farklı CPU'lar üzerinde farklı makineler kullanabilmenizdir. Python'un çoklu işlem mekanizması, paralel süreçleri başlatmayı kolaylaştırır. Her iş için ayrı bir python işlemi başlatmak için mpi4py'deki Mesaj Geçiş Arayüzünü (MPI) kullanmayı tercih ediyorum. Bu, global yorumlayıcı kilidinin kısıtlamalarını atlamamıza izin veriyor ve beni her işlemin kendi sandboxed numpy ve gym instance'ına sahip olduğuna ikna ediyor, bu da rastgele sayı üreteçlerinin tohumlanması için çok önemli.

Roboschool'da tek bacaklı, iki ayaklı ve karınca robotlar

Roboschool'da dokunmatik kol

Çeşitli roboschool görevlerinde, akıllı aracılar evrime ulaşmak için estool kullanır

Spor salonu arayüzü ile yazılmış sürekli kontrol güçlendirme öğrenme görevlerini gerçekleştirmek için basit bir ileri besleme stratejisi ağı eğitmek için önceki makalede tanıtılan es.py kitaplığını kullanan estool adlı basit bir araç uyguladım. Yukarıda bahsedilen tüm deneylerin yanı sıra spor salonu ve roboschool tarafından sağlanan çeşitli diğer sürekli kontrol görevlerini kolayca eğitmek için estool aracını kullandım. estool, dağıtılmış işleme için MPI kullanır, böylece çalışanlar fazla iş yapmadan birden çok makineye dağıtılabilir.

ESTool ve pybullet

GitHub deposu

Spor salonu ve roboschool ile gelen ortama ek olarak estool, çoğu pybullet spor salonu ortamı için de uygundur. Mevcut ortamı değiştirerek özel bir pybullet ortamı oluşturmak da kolaydır. Örneğin, stadyum ortamında (deponun custom_envs dizini altında) Minitaur'u zahmetsizce yapabilirim ve ayrıca yeni fikirlerin uygulanmasını kolaylaştırmak için ortamı değiştirebilirim. Ek olarak, diğer yazılım paketlerinden (ROS veya Blender gibi) 3B modelleri dahil etmek istiyorsanız, başkaları için yeni zorluklar sağlamak için yeni ve ilginç bir pybullet ortamı oluşturmayı deneyebilirsiniz.

Yakın zamandaki transfer öğrenme araştırmalarının heyecan verici bir sonucu olarak, pirbulletteki Kuka robot kolu ve Minitaur gibi birçok model ve ortam, gerçek robotları büyük ölçüde simüle ediyor. Aslında, bu en son araştırma makalelerinin çoğu (1, 2, 3, 4), aktarım öğrenme deneyleri için pirbullet kullanır.

Yani simülasyondan gerçek deneye denemek için pahalı Minitaur veya Kuka robot kolları satın almanıza gerek yok. Pybullet içinde, MIT açık kaynaklı yarış donanımı araç setine göre modellenen bir yarış modeli vardır. Sanal bir yarış arabasına sanal bir kamera kurabilen ve akıllı aracıya, gözlem sonuçları için girdi olarak sanal ekranın piksellerini sağlayan bir piramit ortamı bile var.

Önce basit versiyonu deneyelim.Arabanın sadece dev topun hareketini takip etmek için bir strateji öğrenmesi gerekiyor. RacecarBulletEnv-v0 ortamında, akıllı temsilci topu alır Bağıl koordinatlar Giriş ve çıkış olarak motor hızını ve direksiyon yönünü kontrol eden sürekli eylem. Görev çok basit 2014 Macbook Pro'da (8 çekirdekli CPU) yalnızca 5 dakika (50 yineleme) sürer Eğitimi tamamlayabilirsiniz. Estool kullanarak, aşağıdaki komut 8 süreçli bir eğitim programı başlatacaktır, her süreç 4 işten sorumludur, bu nedenle toplam 32 işçi vardır ve ardından stratejiyi geliştirmek için CMA-ES'yi kullanır:

python train.py bullet_racecar -o cma -n 8 -t 4

Eğitim ilerlemesi ve model parametreleri, günlük alt dizinine kaydedilecektir. Ortamdaki akıllı ajan tarafından bulunan en iyi stratejiyi görselleştirmek için bu komutu çalıştırabiliriz:

python model.py bullet_racecar günlüğü / bullet_racecar.cma.1.32.best.json

pybullet yarış ortamı, MIT yarışına dayalı

Bu simülasyonda, fareyi kullanarak topu hareket ettirebiliriz, hatta gerekirse arabayı hareket ettirebiliriz.

IPython notebook plot_training_progress.ipynb, yarış akıllı aracısının her yinelemesinin eğitim kayıtlarını görselleştirmek için kullanılabilir. Her yinelemede alabiliriz Tüm arabaların en yüksek puanı, en düşük puanı ve ortalama puanı .

Standart hareket görevleri roboschooldakilere benzerdir.Örneğin, Ters Sarkaç, Hopper, Yürüteç, HalfCheetah, Ant ve Humanoid ayrıca pybullet'te kullanılabilir. Bir strateji buldum ve pybullet karınca görevinde 3000 puan aldım. 256 akıllı ajan ile çok çekirdekli bir makinede eğitimi tamamlamak için PEPG kullandım.

python train.py bullet_ant -o pepg -n 64 -t 4

AntBulletEnv'in örnek bir görüntüsü. Görüntü sonucunu mp4 formatında video olarak kaydetmek için gym.wrappers.Monitor'u da kullanabiliriz.

sonuç olarak

Bu makalede, spor salonu ortamı arayüzü tarafından tanımlanan çeşitli sürekli kontrol takviye öğrenme görevlerini gerçekleştirmek üzere ileri beslemeli sinir ağı ajanlarına yönelik stratejiler bulmak için evrimsel stratejilerin nasıl kullanılacağını tartıştım. Dağıtılmış bir işleme ortamında farklı konfigürasyonlara sahip evrimsel strateji algoritmalarını hızlı bir şekilde denemek için MPI çerçevesini kullanmama izin veren estool'u tanıttım.

Şimdiye kadar, temsilcinin çevrede tekrar tekrar deney yapmasına izin vererek stratejileri öğrenmek için akıllı bir aracı eğitme yöntemini tartıştım. Bu sıfırdan eğitim biçimine modelsiz pekiştirmeli öğrenme denir. Bir sonraki makalede, model tabanlı öğrenme hakkında daha fazla konuşacağım Temsilcimiz, belirli bir görevi tamamlamak için önceden öğrenilmiş bir modeli kullanmayı öğrenecek. Buna ek olarak, yine de evrimsel stratejileri benimseyeceğim.

Sonunda, akıllı ajan tüm engelleri atlama taşları olarak görmeyi seçti.

Eğlenceli genişleme

"Bir Devrimin Ateşleri" İnanılmaz Hızlı Piyano Müziği (EPIC)

Evrim Stratejileri İçin Görsel Bir Kılavuz

ESTool

Kararlı mı yoksa Sağlam mı? Fark Nedir?

OpenAI Gym Belgeleri

Güçlendirmeli Öğrenmeye Ölçeklenebilir Bir Alternatif Olarak Evrim Stratejileri

Edward, Olasılıksal modelleme, çıkarım ve eleştiri için bir kütüphane

Bayes Sinir Ağlarının Tarihi

BipedalWalkerHardcore-v2

roboschool

Pybullet

Çoklu Temsilci Rekabeti ile Acil Karmaşıklık

GraspGAN

Gelişen Kararlı Stratejiler Aracılığıyla, Lei Feng.com Yapay Zeka Teknolojisi İnceleme Derlemesi

Sınırlı yerel altın HyperX Cloud Alpha Gold oyun kulaklığı incelemesi
önceki
Bu makale size zaman röleleri hakkında bilgi verir
Sonraki
Şangay'daki "Kod Çözme Oyunu" toplantısı Tomohisa Yamashita Çin'e veda etti, hayranlar daha fazla film çağrısında bulundu
Yeni planlanmış ekonomi mi yoksa yeni pazar ekonomisi mi? Örnek olarak "iyi bir araba satmak" ı ele alalım Qin Shuo röportajı
"Gerçekleştirin" Dell Teknoloji Grubu Dijital Geleceği Hayal Ediyor
Bir ev sinema sistemi seçmeden önce bilmeniz gereken birkaç soru
Volkswagen'in seçkin yeni enerji araçları için MEB platformu nedir?
"Film İzlemek için Yıldırım Çubuğu" Huang Bo, sekiz yıldır kılıcını keskinleştirdi ve bu haftanın film listesi bu iyi şovdan daha fazlası.
Yeni planlanmış ekonomi mi yoksa yeni pazar ekonomisi mi? Örnek olarak "iyi bir araba satmak" ı ele alalım Qin Shuo röportajı
"Sahnede değil, olay yerindekinden daha iyi" TCL C7 Theatre TV duyusal deneyiminizi altüst eder
Piyasa aşırı derecede karamsar olduğunda, dipler ayağın altında olabilir
TCL Suning, Nanjing'de C7 Theatre TV ortak lansman törenini birlikte yapıyor
Uber'in kendi kendine giden yolu engebeli: başka bir araba kazası, yaya ölümü
Yeni enerji araçlarının şarj işlemi sırasında şarj kablosu için herhangi bir teknik gereklilik var mı?
To Top