Robotik, insanların hareketlerini taklit eden makineler üreten benzersiz bir bilim ve teknoloji karışımıdır.
2000'lerin başında, robotların %90'ı, tekrarlayan görevler için insanların yerini alan araba üretim tesislerindeydi. Artık robotlar evleri süpürebilir ve hatta restoranlarda hizmet verebilir.
Bir robot genellikle üç tür bileşenden oluşur; mekanik gövde; elektrik iskeleti ve nihayet kodla yapılmış bir beyin.
Bu bileşenler, bir robotun veri toplamasına (genellikle sensörlerden), davranışı uyarlamak ve görevleri tamamlamak için programlanmış mantık aracılığıyla kararlar almasına olanak tanır.
Robotların üç tür programı olabilir; Uzaktan Kumanda (RC), Yapay Zeka (AI) veya Hibrit.
RC programları, robota kodun yürütülmesi için başlatma ve/veya durdurma sinyali verebilecek bir insanın müdahalesini gerektirir. Programlar, her biri farklı bir işleve sahip çeşitli algoritma türlerinden oluşur.
Algoritma nedir?
Algoritma, bir robotun belirli talimatları gerçekleştirmek için kullanabileceği bir dizi kod satırıdır. Geliştiricinin fikirlerini robotların anlayacağı bir dile çevirir.
Algoritmalar, sözde kod, akış şemaları, Programlama dilleri, veya kontrol tabloları.
Bu yazıda, bu programlarda kullanılan bazı yaygın algoritma türlerini tartışacağız.
Robotikte kullanılan algoritma türleri
1. Her Zaman A* Algoritması
A* algoritması, iki nokta arasındaki en uygun yolu yani en düşük maliyetle bulmak için kullanılan bir yol arama algoritmasıdır.
Anytime A* Algoritması esnek bir zaman maliyetine sahiptir ve önce optimal olmayan bir çözüm üretip ardından optimize ettiğinden kesintiye uğrasa bile en kısa yolu döndürebilir.
Bu, robotun sıfırdan başlamak yerine önceki hesaplamaları üzerine inşa edebileceği için daha hızlı karar vermeyi sağlar.
Nasıl Çalışır?
Bunu, başlangıç düğümünden sonlandırma kriterleri tetiklenene kadar uzanan bir 'ağaç' oluşturarak yapar, bu da daha az maliyetli bir yol olduğu anlamına gelir.
Engellerle bir 2D Izgara yapılır ve bir başlangıç hücresi ve hedef hücreler tam olarak işaretlenir.
Algoritma, bir düğümün 'değerini', g (başlangıç düğümünden söz konusu düğüme geçme maliyeti) ve h (söz konusu düğümden hedef düğüme geçme maliyeti) parametrelerinin toplamı olan f ile tanımlar.
Uygulamalar
Birçok oyun ve web tabanlı harita, en kısa yolu verimli bir şekilde bulmak için bu algoritmayı kullanır. Mobil robotlar için de kullanılabilir.
gibi karmaşık sorunları da çözebilirsiniz. Newton-Raphson Bir sayının karekökünü bulmak için uygulanan yineleme.
Ayrıca uzayda bir nesnenin hareketini ve çarpışmasını tahmin etmek için yörünge problemlerinde kullanılır.
2. D* Algoritması
D*, Focused D* ve D* Lite, iki nokta arasındaki en kısa yolu bulmak için artımlı arama algoritmalarıdır.
Ancak bunlar, bilinmeyen engeller için haritalarına bilgi eklemelerine izin veren A* algoritmaları ve yeni keşiflerin bir karışımıdır.
Daha sonra, Mars Gezgini gibi yeni bilgilere dayalı olarak bir rotayı yeniden hesaplayabilirler.
Nasıl Çalışır?
D* Algoritmasının çalışması A*'nınkine benzer, algoritma önce f, h'yi tanımlar ve açık ve kapalı bir liste oluşturur.
Bundan sonra, D* Algoritması, komşu düğümlerinin g değerini kullanarak mevcut düğümün g değerini belirler.
Her komşu düğüm, mevcut olanın g değeri hakkında bir tahminde bulunur ve en kısa g değeri yeni g değeri olarak uyarlanır.
Uygulamalar
D* ve varyantları, mobil robot ve otonom araç navigasyon.
Bu tür navigasyon sistemleri, Mars gezici Opportunity ve Spirit üzerinde test edilen bir prototip sistemi ve yarışmayı kazanan navigasyon sistemini içerir. DARPA Kentsel Mücadelesi.
3. PRM Algoritması
Bir PRM veya olasılıksal yol haritası, belirli bir haritadaki boş ve dolu alanlara dayalı olası yolların bir ağ grafiğidir.
Karmaşık planlama sistemlerinde ve ayrıca engellerin etrafında düşük maliyetli yollar bulmak için kullanılırlar.
PRM'ler, haritalarında bir robot cihazının muhtemelen hareket edebileceği rastgele bir nokta örneği kullanır ve ardından en kısa yol hesaplanır.
Nasıl Çalışır?
PRM, bir yapılandırma ve sorgulama aşamasından oluşur.
İlk aşamada, bir ortamdaki olası hareketleri yaklaşık olarak gösteren bir yol haritası çizilir. Daha sonra rastgele bir konfigürasyon oluşturulur ve bazı komşulara bağlanır.
Başlangıç ve hedef konfigürasyonları sorgulama aşamasında grafiğe bağlanır. Yol daha sonra bir tarafından elde edilir Dijkstra'nın en kısa yolu sorgu.
Uygulamalar
PRM, algoritmanın başlangıç ve hedef noktaları olmak üzere iki nokta arasında düz bir çizgi yolu hesapladığı yerel planlayıcılarda kullanılır.
Algoritma, yol planlama ve çarpışma algılama uygulamalarını geliştirmek için de kullanılabilir.
4. Sıfır Moment Noktası (ZMP) Algoritması
Sıfır Moment Noktası (ZMP tekniği), robotlar tarafından toplam ataleti zeminin tepki kuvvetinin karşısında tutmak için kullanılan bir algoritmadır.
Bu algoritma ZMP hesaplama kavramını kullanır ve bunu iki ayaklı robotları dengeleyecek şekilde uygular. Bu algoritmayı pürüzsüz bir zemin yüzeyinde kullanmak, robotun sanki hiç an yokmuş gibi yürümesini sağlıyor.
ASIMO (Honda) gibi imalat şirketleri bu tekniği kullanıyor.
Nasıl Çalışır?
Yürüyen bir robotun hareketi, açısal momentum denklemi kullanılarak planlanmıştır. Oluşturulan eklem hareketinin robotun dinamik postural stabilitesini garanti etmesini sağlar.
Bu kararlılık, önceden tanımlanmış bir kararlılık bölgesinin sınırları içindeki sıfır-moment noktasının (algoritma tarafından hesaplanan) mesafesi ile ölçülür.
Uygulamalar
Sıfır moment noktaları, rampalarda ve engellerde gezinirken iRobot PackBot gibi robotların devrilmesine karşı kararlılığı değerlendirmek için bir metrik olarak kullanılabilir.
5. Oransal İntegral Diferansiyel (PID) Kontrol Algoritması
Orantılı İntegral Diferansiyel Kontrolü veya PID, hata değerini hesaplayarak mekanik bileşenlerin ayarlarını yapmak için bir sensör geri besleme döngüsü oluşturur.
Bu algoritmalar, bir kontrol sinyali üretecek şekilde orantı, integral ve türev gibi üç temel katsayıyı birleştirir.
Gerçek zamanlı olarak çalışır ve gerektiğinde düzeltmeler uygular. Bu görülebilir öz-sürüş araba.
Nasıl Çalışır?
PID kontrolör, doğru ve optimal kontrol uygulamak için çıktısı üzerinde orantısallık, integral ve türev etkisi olmak üzere üç kontrol terimi kullanır.
Bu kontrolör, istenen bir ayar noktası ile ölçülen bir proses değişkeni arasındaki fark olarak sürekli olarak bir hata değeri hesaplar.
Ardından, kontrol değişkenini ayarlayarak hatayı zaman içinde en aza indirmek için bir düzeltme uygular.
Uygulamalar
Bu kontrolör, ölçülebilir bir çıktıya, bu çıktı için bilinen bir ideal değere ve ölçülebilir çıktıyı etkileyecek sürece bir girdiye sahip herhangi bir süreci kontrol edebilir.
Kontrolörler endüstride sıcaklık, basınç, kuvvet, ağırlık, konum, hız ve bir ölçümün mevcut olduğu diğer değişkenleri düzenlemek için kullanılır.
Sonuç
Yani bunlar robotikte kullanılan en yaygın algoritmalardan bazılarıydı. Tüm bu algoritmalar, eylemleri ve hareketi haritalamak için kullanılan fiziksel, lineer cebir ve istatistiklerin bir karışımı ile oldukça karmaşıktır.
Bununla birlikte, teknoloji ilerledikçe robotik algoritmalar daha da karmaşık hale gelecek şekilde gelişecektir. Robotlar daha fazla görevi tamamlayabilecek ve kendileri için daha fazla düşünebilecekler.
Bu makaleyi beğendiyseniz, HashDork's Weekly'e abone olun En son AI, ML, DL, Programming & Future Tech haberlerini paylaştığımız e-postalar aracılığıyla güncellemeler.
Yorum bırak