A'dan Z'ye "Agents in Artificial Intelligence"

w1sd0m

Katılımcı Üye
28 Mar 2020
699
626
/802.1x/
k811oqt.png









Merhaba değerli okuyucular. Bu makalemde sizlere "Agents in AI | Yapay zekada ki Ajanlar" konusunu anlatacağım.
Yapay zeka alanında kullanılan ajanların ne olduğunu, ne işe yaradıklarını ve mantığını bu makalede anlamaya çalışacağız.
Foruma katkısı ve bu alanda çalışacak arkadaşlara faydalı olması dileğiyle diyerek başlamak istiyorum.
İyi okumalar.


|
|
v


Makale içeriği;


Ajan (Agent) nedir?
Yazılım-ajan
İnsan-ajan
Robotik-ajan

Akıllı ajanlar ve bileşikleri
Sensörler ve Aktüatörler
Çevre ve Mimari
Rasyonellik ve İdeal rasyonel ajan
4 Kural

Ajan türleri nelerdir?
Basit-refleks-ajan
Model-bazlı-ajan
Hedefe-dayalı-ajan
Fayda-tabanlı-ajan
Öğrenme-ajan
Avantajlar ve Dezavantajlar

P.E.A.S nedir?
Çevre türleri nelerdir?

Tamamen Gözlenebilir ve Kısmen Gözlenebilir
Deterministik ve Stokastik
Rekabetçi vs İşbirlikçi
Tek aracılı vs Çok aracılı
Statik ve Dinamik
Ayrık ve Sürekli
Epizodik ve Sıralı
Bilinen ve Bilinmeyen


|
|
v


Bir
Yapay Zeka (AI) sistemi, bir Ajan (Agent) ve bir Ortam (Environment) barındırır. Akıllı ajanlar; yapay zekaya işlev kazandıran, onun hareket geçmesini sağlayan yazılımsal varlıklardır. Bu ajanlar çevreyi algılayabilir, hareketi başlatmak için aktüatörleri kullanabilir, insanlar yerine operasyonları yönetebilir veya bizler adına kararlar alabilir.
Peki, gelin bu akıllı ajanları daha da derinden inceleyelim.



Ajan (Agent) nedir?


cj9jqr4.png

Çevresini sensörler aracılığı ile tanıyan aynı zamanda bu çevre üzerinde aktüatörler sayesinde hareket edebilen, etki edebilen varlıklara Ajan (Agent) diyebiliriz. Akıllı ajanlar ortamı, kullanıcı girdilerini ve deneyimlerini kararlar alabilir veya bir hizmeti gerçekleştirebilir. Aynı zamanda “Bot” olarak da adlandırılırlar.

Genelde bir akıllı ajan, kullanıcı parametreleri ile internette aramalar yaparak kullanıcının istediği veya ilgisini çekebileceği bilgileri bulur, toplar ve bunları yine kullanıcıya sunar. Yapay zeka ile birlikte çoğu ajan, artık giriş parametrelerini mikrofon veya kameralardan sağlar ve çıkış bilgilerini hoparlör veya ekran aktüatörleri ile sunar. Bu durum teknolojinin ne kadar geliştiğini gösterirken aynı zamanda da bilgilerimizin ne kadar korunaksız olduğunun da bir kanıtıdır.

Şirketlerde kullanılan akıllı ajanlar; veri analitiği, veri madenciliği ve CSS (müşteri hizmetleri ve desteği) alanları için kullanılır.
Tüketici tarafında kullanılan akıllı ajanlar ise; aynı veya benzer ürünlerin fiyat karşılaştırmalarında veya web sitesi güncellemelerinde kullanılır.



Ne tür ajanlar olabilir?


Human-Agent (İnsan-Ajan): Bir insan ajanın gözleri ve kulakları ve diğer organları bir sensör görevi görürken, elleri, ayakları, ağzı ise harekete geçirici işlev (Aktüatör) görevi görür.
Software-Agent (Yazılım-Ajan): Bir yazılım ajanın tuş vuruşları, dosya işlemleri, görüntülenen ağ paketleri bir sensör görevi görürken, gönderilen ağ paketleri ise aktüatör görevi görür.
Robotic-Agent (Robotik-Ajan): Bir robotik ajanın kameraları, kızılötesi bir sensör görevi görürken, sahip olduğu çeşitli motorları ise aktüatör görevi görür.

r6cpddy.png
Bir ajan için şu iki cümleyi kullanabiliriz;
Sensörler vasıtası ile çevreyi algılayabilen,
Aktüatörler vasıtası ile bu çevreye etki edebilen herşey.




Peki sıkça kullandığımız bu terimlerin anlamları ne?

Sensörler: Ortam değişimini algılayabilen aynı zamanda bilgileri diğer elektronik cihazlar ile paylaşabilen cihazlardır. Ajanlar, çevresini sensörler ile gözetler demiştik.
Aktüatörler: Enerjiyi harekete çevirebilen makine bileşenleridir. Sistemin hareket etmesini ve kontrol edilmesini sağlar. Elektrik motorları, çarklar, raylar vb.
Ajan İşlevi: Bir algıyı bir eyleme eşleme işlevidir.
Ajan programı: Ajan işlevinin bir uygulamasıdır. f fonksiyonunu üretmek için fiziksel mimaride bir ajan program yürütülür || f:p* → A

Aslında bu bilgilere baktığımızda anlıyoruz ki çevremizdeki cep telefonları, termostatlar,kameralar hatta bizler de birer ajanız.


Genel olarak bir ajanın yapısı bu şekildedir;
srquxag.png

Ajan = Mimari + Ajan programı ,şeklindedir.

Buradaki tanımlamalar ise;
Mimari: Bir ajanın üzerinde çalıştığı mekanizma.
Ajan programı: Bir ajan işlevinin uygulaması.

Temel işlevleri ise bunlardır;
Algı: Sensörler vasıtasıyla gerçekleştirilir.
Eylem: Aktüatörler vasıtasıyla gerçekleştirilir.

Bir akıllı ajan için 4 temel kural vardır:
1.Kural: Çevre tanıma yeteneği kazanılmış olması.
2.Kural: Kararların gözlemlerden alınması.
3.Kural: Kararın eylemler ile sonuçlandırılması.
4:Kural: Eylemin rasyonel olması.




Peki nedir bu Rasyonellik?

Rasyonellik, kabul edilebilir, mantıklı ve iyi bir yargı yeteneğine sahip olma durumudur. Bu durum, ajanın ne algıladığına bağlı olarak beklenen eylem ve sonuçları içerir. Faydalı bilgiye ulaşma amacı ile yapılan eylemler rasyonelliğin önemli bir parçasıdır.


İdeal Rasyonel Ajan nedir?
En ideal rasyonellikte bir ajan, performans derecesini en üste çıkarmak için “Yerleşik bilgi tabanı” ve “Algı dizisi” kavramlarına eylemlerini dayandırır.

Performans ölçütleri ise şunlardır;
Algı sırası,
Çevre hakkında ön bilgi,

Ajanın gerçekleştirebileceği en makul olası eylemler.


|
|

v

Ajanlar, algılanan zeka ve yetenek derecelerine göre 5 sınıfa ayrılabilir:


Simple Reflex Agents (Basit Refleks Ajanları)
Model-Based Reflex Agents (Model Bazlı Refleks Ajanları)
Goal-Based Agents (Hedefe Dayalı Ajanlar)
Utility-Based Agents (Fayda Tabanlı Ajanlar)

Learning Agent (Öğrenme Ajanı)

|

|
v



q31tm7k.png



| Simple-Reflex-Agents (Basit Refleks Ajanları) |
|
Simple-Reflex-Agent = Mevcut-algı+ Durum-Eylem-Kural |


4e2owvn.png

Simple-Reflex-Agents (Basit Refleks Ajanları), algı geçmişlerini görmezden gelerek sadece mevcut algıları dahilinde hareket ederler. Algı geçmişi, bir ajanın mevcut zamana kadar algıladığı her şeydir. Bu tür ajanların işlevi, “Koşul-Eylem” kuralına dayanmaktadır. Kural, bir durumu bir eyleme eşlemeyi söyler. Eğer durum doğru ise eylem gerçekleştirilir, aksi halde gerçekleştirilmez. Basit reflex işlevi, sadece ortam tümüyle gözlemlenebilir olduğunda başarılı sonuç verir. Eğer ortam kısmen gözlemlenebiliyorsa, Basit reflex ajanı için sonsuz döngü problemleri patlak verecektir. Ancak ajan eylemlerini rastgele seçebiliyorsa, sonsuz döngüden çıkma ihtimali oluşabilir.

Avantajlar:

Yalnızca “IF-ELSE” yapısı ile uygulanabilir.
Diğer türlere göre daha hızlıdır.
“Kural-Eylem” kuralı sayesinde verimlidir.
Bu ajanlar sabit hafıza ajanlarıdır.

Dezavantajları:
Hemen hemen “0” ölçeklenebilirliğe sahiptir.
Sınırlı giriş ve çıkışlar olduğu için sadece “Küçük ve basit” sistemler için geçerlidir.
Öğrenme yeteneği çok çok sınırlıdır.
Ortamdaki herhangi bir değişiklik, kural değişikliğine yol açar.




8exdpg2.png





| Model-Based Reflex Agents (Model Bazlı Refleks Ajanları) |
| Model-Based-Agent = Basit-refleks-ajan + Model (Önceki-durum(lar)) |


gt8078r.png

Model-Based Reflex Agents (Model Bazlı Refleks Ajanları), durumu mevcut durum ile eşleyen bir kural bularak eylem yapar. Bu tür ajanlar, çevre ile ilgili bir model kullanarak kısmen gözlemlenebilir ortamları işler. Ajan, tüm algıları tarafından ayarlanan ve algı geçmişini de işin içine katarak durumu takip eder. Mevcut durum ise çevrenin gözlemlenemeyen bölümünü tanımlayan bir tür oluşumu koruyan ajanda depolanır.

Durum güncellemesi için 2 farklı bilgi gerekir. Bunlar;

Çevrenin ajandan bağımsız nasıl geliştiği,
Ajan eylemlerinin çevreyi nasıl etkilediği.


Avantajlar:
Basit refleks ajanlarından daha verimlidir.
Kısmen gözlemlenebilir ortamlarda çalışabilirler.

Dezavantajlar:
Hedef durum hakkında bilgiye sahip değillerdir.
Sınırlı bir yapay zekaya sahiplerdir.



49zgfo1.png





| Goal-Based Agents (Hedefe Dayalı Ajanlar) |
| Goal-Based-Agent = Model-tabanlı-ajan + Hedef-bilgisi |


l9vxqib.png

Goal-Based Agents (Hedefe Dayalı Ajanlar), istenen durum olan, hedef ile aralarındaki uzaklık durumuna göre karar alırlar. Ajanların tüm hareketleri, hedef ile aralarında olan uzaklığı azaltmak amaçlıdır. Bu durum ajana, bir hedefin durumuna ulaşılanı seçerek birden fazla olasılık arasında seçim yapmasına yarayan bir yol sağlamış olur. Ajanın eylemlerini destekleyen bilgi açıkça belirlen ve değiştirilebilir. Bu durum ise bu ajanların daha esnek çalışmasına olanak tanır. Çoğunlukla araştırma ve planlamaya ihtiyaç duyarlar ve eylemleri kolayca değiştirilebilir.


Avantajlar:
Basit refleks ve Model bazlı reklesk ajanlarından daha verimliler.

Dezavanyaj:
İki durum arasında hangisinin daha iyi olduğunu belirleyemezler.
Sınırlı yapay zekaya sahipler.




sx4ge0x.png




| Utility-Based Agents (Fayda Tabanlı Ajanlar) |
| Utility-Based-Agent = Hedefe-dayalı-ajan + Fayda-fonksiyonu |


ed7rsll.png

Utility-Based Agents (Fayda Tabanlı Ajanlar), nihai kullanımları bir yapı taşı olacak şekilde geliştirilir. Birden fazla makul alternatif bulduklarında hangisinin en optimal olduğunu tespit etmek için Fayda tabanlı ajanları kullanırlar. Tüm durumlar için bir yardımcılığa dayalı eylemler seçerler. Bazen hedefe ulaşmak bizim için en optimal durum olmayabilir. Bu hedefe ulaşırken hız, güvenlik, ucuzluk gibi kriterleri göz önüne alırız. Burada ajan mutluluğu dikkate alınmalıdır. Ajan mutluluğunu ölçmek için Yardımcı programa bakılır. Çevrenin belirsiz olması bir Fayda ajanını, istenen faydayı maksimuma çıkaran eylemi seçmeye yönlendirir. Fayda işlevi ise bu durumu, ajanın mutluluk derecesini tanımlayan gerçek bir sayıya çevirir.


Avantajlar:
Yardımcı işlevi sayesinde en optimal durumu bulurlar.
Sürekli ortamlarda verimli çalışabilirler.
Dezavantajlar:
Sınırlı yapay zekaya sahipler.




azbq7wc.png




| Learning Agent (Öğrenme Ajanı) |
| Learning-Agent = Fayda-tabanlı-ajan + Öğrenme-mekanizması |


osjk7xn.png

Learning Agent (Öğrenme Ajanı), geçmiş deneyimlerinden veya öğrenme yeteneklerinden faydalanabilen ajan türüdür. Basit ve temel bilgiler ile harekete geçer, daha sonra öğrenme yolu sayesinde otomatik bir şekilde harekete devam eder ve uyum sağlar.


Bir Öğrenme ajanının dört kavramsal bileşeni mevcuttur. Bunlar;

Öğrenme unsuru: Çevreden öğrenerek çeşitli iyileştirmeler sağlamaktan sorumludur.
Eleştirmen: Öğrenme unsuru, ajanın sabit performans standartlarına göre ne kadar optimal eylemler yaptığını inceleyen Eleştirmenlerden geri bildirimler alır.
Performans: Harici eylemleri seçmekten sorumludur.
Problem oluşturucu: Yeni ve bilgilendirici deneyimlere sebep olacak eylemleri bulmak ve önermekten sorumludur.

|
|
v

Yapay zeka alanında kullanılan ajan türlerine bakış attık. Bir çok değişik tür olduğunu artık biliyoruz. Peki uzmanlar bunlara dağınık olarak mı bakıyorlar yoksa bir kategorize etme şekli, sistemi var mı?
Tabiki bu sorunun cevabı evet olacak. Şimdi ise bu kategorize sistemi tanıyacağız.


|

|
v


pgrpuds.png


Yapay zekada farklı ajan türlerini gördük, okuduk. P.E.A.S sistemi, bizlere benzer ajanları bir arada kategorize etme fırsat verir. Sistem, belirlenen ajanın çevresine, aktüatörlerine ve sensörlerine dayalı bir performans ölçümü yapar. En yüksek performansı veren ajanlar genelde Rasyonel ajanlardır.

P.E.A.S, 4 kavramın baş harleri ile oluşmuştur. Bunlar;


P: Performans ölçüsü,
E: Çevre,
A: Aktüatörler,
S: Sensörler.



Bu kavramları makalenin üst taraflarında açıklamıştım. Ancak okumaya bu kısımdan başlayanlar için tekrar açıklayayım.

2vj755b.png
Performans ölçüsü: Her bir ajanın performansı, algı yeteneklerine dayalı olarak değişir ve ajanların başarı ve performansları, bu ölçü birimi ile ölçülür.
Çevre: Ajanın bulunduğu çevredir. Ajanın hareket etmesi halinde çevre de ona göre değişecektir.
Çevre 8 ana türde ele alınır;
Tamamen gözlemlenebilen & Kısmen gözlemlenebilen (Fully observable & Partially observable),
Epizodik & Sıralı (Episodic & Sequential),
Statik & Dinamik (Static & Dynamic),
Ayrık & Sürekli (Discrete & Continuous),
Deterministik & Stokastik (Deterministic & Stochastic),
Rekabetçi & İşbirlikçi (Competitive & Collaborative),
Tek ajanlı & Çok ajanlı (Single-agent & Multi-agent),
Bilinen & Bilinmeyen (Known & Unknown).
Aktüatörler: Enerjiyi harekete çevirebilen makine bileşenleridir. Sistemin hareket etmesini ve kontrol edilmesini sağlar.
Sensörler: Ortam değişimini algılayabilen aynı zamanda bilgileri diğer elektronik cihazlar ile paylaşabilen cihazlardır.


Şoförsüz araçlarda P.E.A.S örneği vererek konuyu kavrayalım.

Kendi kendine hareket edebilen araçlarda;
Performans ölçüsü: Güvenlik, Zaman, Konfor vb.
Çevre: Yol, Yol işaretleri, Yaya, Diğer araçlar vb.
Aktüatörler: Direksiyon, Korna, Sinyal, Vites vb.
Sensörler: GPS, Par kamerası, Hız göstergesi, İvme ölçer vb.

|
|
v


Umarım P.E.A.S konusu da anlaşılmıştır.
Şimdi gelin bu çevre konusuna daha derin bir giriş yapalım.


|
|
v



ixj0yjc.png


Yapay zeka için konuştuğumuzda çevre, ajanın ortamıdır. Ajan, sensörleri vasıtasıyla çevreden girdi alır ve çıktıyı aktüatörler vasıtasıyla tekrar çevreye iletir. Bu çevrelerin 8 ana türde olduğunu yukarıda söyledim. Şimdi tek tek bunları açıklayacağız, konuyu böyle bitireceğim. Açıklamadan bitirmek istemedim.

nc5wyhw.png

Tamamen gözlemlenebilir & Kısmen gözlemlenebilir (Fully observable & Partially observable):

Bir ajan sensörü, mevcut her anda ajanın tam durumunu algılama veya ona erişme yeteneğine sahip olduğu zaman, bu durumun Tamamen gözlemlenebilir bir çevrede olduğunu söyleyebiliriz. Çevre zamanını takip etmeye ihtiyaç duyulmadığı için Tamamen gözlemlenebilir bir çevreyi korumak kolay olabilir.
Ancak ajan her çevrede sensöre sahip olmadığı zaman, o çevre Kısmen gözlemlenebilir bir çevredir diyebiliriz.

Örneğin;
Satranç oyunu -> Satranç tahtası ve rakibin hamleleri Tamamen gözlemlenebilir.
Sürüş hali -> Yola çıkınca yada köşeyi dönünce ne olacağı belli olmadığından çevre Kısmen gözlemlenebilir.


Epizodik & Sıralı (Episodic & Sequential):

Bir Epizodik çevrede, ajanın tüm eylemleri atomik bölümlere veya olaylara bölünecektir. Geçmiş ve mevcut eylemler arasında bir bağımlılık hali yoktur. Tüm olaylarda ajan, çevreden girdi alır ve gereken eylemi gerçekleştirir.

Bir Sıralı çevrede ise, geçmiş tüm eylemler gelecekteki eylemleri etkileyebilir. Ajanın bir sonraki eylemi, geçmişte yatığı eyleme ve gelecekte yapacapı eyleme bağlıdır.


Örneğin;
Kusur tespit robotu -> Konveyör bantlarında meydana gelen kusuru tespit etmek için kullanılan bir yapay zeka Epizodik çevreye örnektir.
Dama oyunu -> Oyunda, önceki hamlelerin gelecekteki tüm hamleleri etkileyeceği için Sıralı çevreye örnektir.



Statik & Dinamik (Static & Dynamic):
505kvkn.jpg


Ajan, birtakım elemlerde bulunduğu zaman sürekli değişen bir ortam olduğundan buna Dianmik çevre diyebiliriz.


Ancak ajan eylemlerinde hiç değişmeyen bir çevre varsa buna Statik çevre diyebiliriz.

Örneğin;

Roller Coaster -> Harekete başlandığı andan itibaren sürekli değişen bir ortam olduğu için Dinamik çevreye örenktir.
Boş bir ev -> Ajanın giriş ve çıkışları evde bir değişikliğe sebep olmadığı için Statik çevreye örnektir.



Ayrık & Sürekli (Discrete & Continuous):

Bir çevre, çıktı elde etme konusunda sınırlı sayıda eylem barındırıyorsa, buna Ayrık çevre diyebiliriz.

Ancak çevre, numaralandırılamaz, kesik veya sonlu değilse, buna Sürekli çevre diyebiliriz.

Örneğin;

XOX oyunu -> Yalnızca sınırlı bir sayıda hamleye sahip olduğundan Ayrık çevreye örnektir.
Sürücüsüz otomobil -> Eylemleri numaralandırılamadığı için Sürekli çevreye örnektir.



Deterministik & Stokastik (Deterministic & Stochastic):

Ajanın mevcut durumunda meyana gelen bir belirsizlik, ajanın sonraki durumunu tamamen belirleyebiliyorsa, buna Deterministik çevre diyebiliriz.


Ancak Stokastik çevre, varoluşu gereği rastgeledir ancak benzersiz değildir. Bu yüzden ajan tarafından tamamen belirlenemez.

Örneğin;
Satranç -> Mevcut durumda her bir taş için yalnızca birkaç hamle şansı olacaktır ve bu hamleler belirlenebilir. Bu yüzden Determisintik çevreye örnektir.
Sürücüsüz otomobil -> Aracın eylemleri belirli değildir ve zamana göre değiştiğinden Stokastik çevreye örnektir.



Rekabetçi & İşbirlikçi (Competitive & Collaborative):

Bir ajan, çıktı elde etme hususunda başka bir ajan ile rekabete girdiğinde, bu ortama Rekabetçi çevre diyebiliriz.


Ancak bir ajan, çıktı elde etme hususunda diğer ajanlar ile işbirliği yaptığında, bu ortama İşbirlikçi çevre diyebiliriz.

Örneğin;
Satranç -> Oyunun tek bir kazananı olacağı için girilen rekabet ortamı Rekabetçi çevreye örnektir.
Sürücüsüz otomobil -> Sürüş esnasında çarpışma önlemek için diğer sürücüsüz araçlar ile bilgi paylaşımı yaptığı bir ortam İşbirlikçi çevreye örnektir.



Tek ajanlı & Çok ajanlı (Single-agent & Multi-agent):
2rs15h5.png


Sadece tek bir ajandan oluşan bir çevre Tek ajanlı çevre olarak adlandırılır.

Birden fazla ajan içeren bir ortam ise Çok ajanlı çevre olarak adlandırlır.

Örneğin;
Labirent -> Bir labirentte tek başına bırakılıp yolu bulması istenen bir insan Tek ajanlı çevreye örnektir.
Futbol -> Bir maçta en az 22 kişinin sahada olduğu bir ortam Çok ajanlı çevreye örnektir.



Bilinen & Bilinmeyen (Known & Unknown):

Tüm olası eylemlerin çıktısının verildiği bir ortam Bilinen çevreye örnektir.

Bir ajanın eyleme geçebilmesi için çevrenin nasıl çalıştığı hakkına bilgi sahibi olması gerektiği durum ise Bilinmeyen çevreye örnektir.

Örneğin;

Koşu -> Düz bir parkurda sadece koşması gerektiğini bilen bir yarışmacı Bilinen çevreye örnektir.
İnşaat -> Projenin çizilebilmesi için mimarın çevre hakkında bilgisinin olması gerektiğinden Bilinmeyen çevreye örnektir.






|
|
v

iedbopc.png

^
|
|


Sağlıcakla kalın.


eyruvyp.png
 
28 Eyl 2009
132
75
admin.php
k811oqt.png









Merhaba değerli okuyucular. Bu makalemde sizlere "Agents in AI | Yapay zekada ki Ajanlar" konusunu anlatacağım.
Yapay zeka alanında kullanılan ajanların ne olduğunu, ne işe yaradıklarını ve mantığını bu makalede anlamaya çalışacağız.
Foruma katkısı ve bu alanda çalışacak arkadaşlara faydalı olması dileğiyle diyerek başlamak istiyorum.
İyi okumalar.


|
|
v


Makale içeriği;


Ajan (Agent) nedir?
Yazılım-ajan
İnsan-ajan
Robotik-ajan

Akıllı ajanlar ve bileşikleri
Sensörler ve Aktüatörler
Çevre ve Mimari
Rasyonellik ve İdeal rasyonel ajan
4 Kural

Ajan türleri nelerdir?
Basit-refleks-ajan
Model-bazlı-ajan
Hedefe-dayalı-ajan
Fayda-tabanlı-ajan
Öğrenme-ajan
Avantajlar ve Dezavantajlar

P.E.A.S nedir?
Çevre türleri nelerdir?

Tamamen Gözlenebilir ve Kısmen Gözlenebilir
Deterministik ve Stokastik
Rekabetçi vs İşbirlikçi
Tek aracılı vs Çok aracılı
Statik ve Dinamik
Ayrık ve Sürekli
Epizodik ve Sıralı
Bilinen ve Bilinmeyen


|
|
v


Bir
Yapay Zeka (AI) sistemi, bir Ajan (Agent) ve bir Ortam (Environment) barındırır. Akıllı ajanlar; yapay zekaya işlev kazandıran, onun hareket geçmesini sağlayan yazılımsal varlıklardır. Bu ajanlar çevreyi algılayabilir, hareketi başlatmak için aktüatörleri kullanabilir, insanlar yerine operasyonları yönetebilir veya bizler adına kararlar alabilir.
Peki, gelin bu akıllı ajanları daha da derinden inceleyelim.



Ajan (Agent) nedir?


cj9jqr4.png

Çevresini sensörler aracılığı ile tanıyan aynı zamanda bu çevre üzerinde aktüatörler sayesinde hareket edebilen, etki edebilen varlıklara Ajan (Agent) diyebiliriz. Akıllı ajanlar ortamı, kullanıcı girdilerini ve deneyimlerini kararlar alabilir veya bir hizmeti gerçekleştirebilir. Aynı zamanda “Bot” olarak da adlandırılırlar.

Genelde bir akıllı ajan, kullanıcı parametreleri ile internette aramalar yaparak kullanıcının istediği veya ilgisini çekebileceği bilgileri bulur, toplar ve bunları yine kullanıcıya sunar. Yapay zeka ile birlikte çoğu ajan, artık giriş parametrelerini mikrofon veya kameralardan sağlar ve çıkış bilgilerini hoparlör veya ekran aktüatörleri ile sunar. Bu durum teknolojinin ne kadar geliştiğini gösterirken aynı zamanda da bilgilerimizin ne kadar korunaksız olduğunun da bir kanıtıdır.

Şirketlerde kullanılan akıllı ajanlar; veri analitiği, veri madenciliği ve CSS (müşteri hizmetleri ve desteği) alanları için kullanılır.
Tüketici tarafında kullanılan akıllı ajanlar ise; aynı veya benzer ürünlerin fiyat karşılaştırmalarında veya web sitesi güncellemelerinde kullanılır.



Ne tür ajanlar olabilir?


Human-Agent (İnsan-Ajan): Bir insan ajanın gözleri ve kulakları ve diğer organları bir sensör görevi görürken, elleri, ayakları, ağzı ise harekete geçirici işlev (Aktüatör) görevi görür.
Software-Agent (Yazılım-Ajan): Bir yazılım ajanın tuş vuruşları, dosya işlemleri, görüntülenen ağ paketleri bir sensör görevi görürken, gönderilen ağ paketleri ise aktüatör görevi görür.
Robotic-Agent (Robotik-Ajan): Bir robotik ajanın kameraları, kızılötesi bir sensör görevi görürken, sahip olduğu çeşitli motorları ise aktüatör görevi görür.

r6cpddy.png
Bir ajan için şu iki cümleyi kullanabiliriz;
Sensörler vasıtası ile çevreyi algılayabilen,
Aktüatörler vasıtası ile bu çevreye etki edebilen herşey.




Peki sıkça kullandığımız bu terimlerin anlamları ne?

Sensörler: Ortam değişimini algılayabilen aynı zamanda bilgileri diğer elektronik cihazlar ile paylaşabilen cihazlardır. Ajanlar, çevresini sensörler ile gözetler demiştik.
Aktüatörler: Enerjiyi harekete çevirebilen makine bileşenleridir. Sistemin hareket etmesini ve kontrol edilmesini sağlar. Elektrik motorları, çarklar, raylar vb.
Ajan İşlevi: Bir algıyı bir eyleme eşleme işlevidir.
Ajan programı: Ajan işlevinin bir uygulamasıdır. f fonksiyonunu üretmek için fiziksel mimaride bir ajan program yürütülür || f:p* → A

Aslında bu bilgilere baktığımızda anlıyoruz ki çevremizdeki cep telefonları, termostatlar,kameralar hatta bizler de birer ajanız.


Genel olarak bir ajanın yapısı bu şekildedir;
srquxag.png

Ajan = Mimari + Ajan programı ,şeklindedir.

Buradaki tanımlamalar ise;
Mimari: Bir ajanın üzerinde çalıştığı mekanizma.
Ajan programı: Bir ajan işlevinin uygulaması.

Temel işlevleri ise bunlardır;
Algı: Sensörler vasıtasıyla gerçekleştirilir.
Eylem: Aktüatörler vasıtasıyla gerçekleştirilir.

Bir akıllı ajan için 4 temel kural vardır:
1.Kural: Çevre tanıma yeteneği kazanılmış olması.
2.Kural: Kararların gözlemlerden alınması.
3.Kural: Kararın eylemler ile sonuçlandırılması.
4:Kural: Eylemin rasyonel olması.




Peki nedir bu Rasyonellik?

Rasyonellik, kabul edilebilir, mantıklı ve iyi bir yargı yeteneğine sahip olma durumudur. Bu durum, ajanın ne algıladığına bağlı olarak beklenen eylem ve sonuçları içerir. Faydalı bilgiye ulaşma amacı ile yapılan eylemler rasyonelliğin önemli bir parçasıdır.


İdeal Rasyonel Ajan nedir?
En ideal rasyonellikte bir ajan, performans derecesini en üste çıkarmak için “Yerleşik bilgi tabanı” ve “Algı dizisi” kavramlarına eylemlerini dayandırır.

Performans ölçütleri ise şunlardır;
Algı sırası,
Çevre hakkında ön bilgi,

Ajanın gerçekleştirebileceği en makul olası eylemler.


|
|

v

Ajanlar, algılanan zeka ve yetenek derecelerine göre 5 sınıfa ayrılabilir:


Simple Reflex Agents (Basit Refleks Ajanları)
Model-Based Reflex Agents (Model Bazlı Refleks Ajanları)
Goal-Based Agents (Hedefe Dayalı Ajanlar)
Utility-Based Agents (Fayda Tabanlı Ajanlar)

Learning Agent (Öğrenme Ajanı)

|

|
v



q31tm7k.png



| Simple-Reflex-Agents (Basit Refleks Ajanları) |
|
Simple-Reflex-Agent = Mevcut-algı+ Durum-Eylem-Kural |


4e2owvn.png

Simple-Reflex-Agents (Basit Refleks Ajanları), algı geçmişlerini görmezden gelerek sadece mevcut algıları dahilinde hareket ederler. Algı geçmişi, bir ajanın mevcut zamana kadar algıladığı her şeydir. Bu tür ajanların işlevi, “Koşul-Eylem” kuralına dayanmaktadır. Kural, bir durumu bir eyleme eşlemeyi söyler. Eğer durum doğru ise eylem gerçekleştirilir, aksi halde gerçekleştirilmez. Basit reflex işlevi, sadece ortam tümüyle gözlemlenebilir olduğunda başarılı sonuç verir. Eğer ortam kısmen gözlemlenebiliyorsa, Basit reflex ajanı için sonsuz döngü problemleri patlak verecektir. Ancak ajan eylemlerini rastgele seçebiliyorsa, sonsuz döngüden çıkma ihtimali oluşabilir.

Avantajlar:

Yalnızca “IF-ELSE” yapısı ile uygulanabilir.
Diğer türlere göre daha hızlıdır.
“Kural-Eylem” kuralı sayesinde verimlidir.
Bu ajanlar sabit hafıza ajanlarıdır.

Dezavantajları:
Hemen hemen “0” ölçeklenebilirliğe sahiptir.
Sınırlı giriş ve çıkışlar olduğu için sadece “Küçük ve basit” sistemler için geçerlidir.
Öğrenme yeteneği çok çok sınırlıdır.
Ortamdaki herhangi bir değişiklik, kural değişikliğine yol açar.




8exdpg2.png





| Model-Based Reflex Agents (Model Bazlı Refleks Ajanları) |
| Model-Based-Agent = Basit-refleks-ajan + Model (Önceki-durum(lar)) |


gt8078r.png

Model-Based Reflex Agents (Model Bazlı Refleks Ajanları), durumu mevcut durum ile eşleyen bir kural bularak eylem yapar. Bu tür ajanlar, çevre ile ilgili bir model kullanarak kısmen gözlemlenebilir ortamları işler. Ajan, tüm algıları tarafından ayarlanan ve algı geçmişini de işin içine katarak durumu takip eder. Mevcut durum ise çevrenin gözlemlenemeyen bölümünü tanımlayan bir tür oluşumu koruyan ajanda depolanır.

Durum güncellemesi için 2 farklı bilgi gerekir. Bunlar;

Çevrenin ajandan bağımsız nasıl geliştiği,
Ajan eylemlerinin çevreyi nasıl etkilediği.


Avantajlar:
Basit refleks ajanlarından daha verimlidir.
Kısmen gözlemlenebilir ortamlarda çalışabilirler.

Dezavantajlar:
Hedef durum hakkında bilgiye sahip değillerdir.
Sınırlı bir yapay zekaya sahiplerdir.



49zgfo1.png





| Goal-Based Agents (Hedefe Dayalı Ajanlar) |
| Goal-Based-Agent = Model-tabanlı-ajan + Hedef-bilgisi |


l9vxqib.png

Goal-Based Agents (Hedefe Dayalı Ajanlar), istenen durum olan, hedef ile aralarındaki uzaklık durumuna göre karar alırlar. Ajanların tüm hareketleri, hedef ile aralarında olan uzaklığı azaltmak amaçlıdır. Bu durum ajana, bir hedefin durumuna ulaşılanı seçerek birden fazla olasılık arasında seçim yapmasına yarayan bir yol sağlamış olur. Ajanın eylemlerini destekleyen bilgi açıkça belirlen ve değiştirilebilir. Bu durum ise bu ajanların daha esnek çalışmasına olanak tanır. Çoğunlukla araştırma ve planlamaya ihtiyaç duyarlar ve eylemleri kolayca değiştirilebilir.


Avantajlar:
Basit refleks ve Model bazlı reklesk ajanlarından daha verimliler.

Dezavanyaj:
İki durum arasında hangisinin daha iyi olduğunu belirleyemezler.
Sınırlı yapay zekaya sahipler.




sx4ge0x.png




| Utility-Based Agents (Fayda Tabanlı Ajanlar) |
| Utility-Based-Agent = Hedefe-dayalı-ajan + Fayda-fonksiyonu |


ed7rsll.png

Utility-Based Agents (Fayda Tabanlı Ajanlar), nihai kullanımları bir yapı taşı olacak şekilde geliştirilir. Birden fazla makul alternatif bulduklarında hangisinin en optimal olduğunu tespit etmek için Fayda tabanlı ajanları kullanırlar. Tüm durumlar için bir yardımcılığa dayalı eylemler seçerler. Bazen hedefe ulaşmak bizim için en optimal durum olmayabilir. Bu hedefe ulaşırken hız, güvenlik, ucuzluk gibi kriterleri göz önüne alırız. Burada ajan mutluluğu dikkate alınmalıdır. Ajan mutluluğunu ölçmek için Yardımcı programa bakılır. Çevrenin belirsiz olması bir Fayda ajanını, istenen faydayı maksimuma çıkaran eylemi seçmeye yönlendirir. Fayda işlevi ise bu durumu, ajanın mutluluk derecesini tanımlayan gerçek bir sayıya çevirir.


Avantajlar:
Yardımcı işlevi sayesinde en optimal durumu bulurlar.
Sürekli ortamlarda verimli çalışabilirler.
Dezavantajlar:
Sınırlı yapay zekaya sahipler.




azbq7wc.png




| Learning Agent (Öğrenme Ajanı) |
| Learning-Agent = Fayda-tabanlı-ajan + Öğrenme-mekanizması |


osjk7xn.png

Learning Agent (Öğrenme Ajanı), geçmiş deneyimlerinden veya öğrenme yeteneklerinden faydalanabilen ajan türüdür. Basit ve temel bilgiler ile harekete geçer, daha sonra öğrenme yolu sayesinde otomatik bir şekilde harekete devam eder ve uyum sağlar.


Bir Öğrenme ajanının dört kavramsal bileşeni mevcuttur. Bunlar;

Öğrenme unsuru: Çevreden öğrenerek çeşitli iyileştirmeler sağlamaktan sorumludur.
Eleştirmen: Öğrenme unsuru, ajanın sabit performans standartlarına göre ne kadar optimal eylemler yaptığını inceleyen Eleştirmenlerden geri bildirimler alır.
Performans: Harici eylemleri seçmekten sorumludur.
Problem oluşturucu: Yeni ve bilgilendirici deneyimlere sebep olacak eylemleri bulmak ve önermekten sorumludur.

|
|
v

Yapay zeka alanında kullanılan ajan türlerine bakış attık. Bir çok değişik tür olduğunu artık biliyoruz. Peki uzmanlar bunlara dağınık olarak mı bakıyorlar yoksa bir kategorize etme şekli, sistemi var mı?
Tabiki bu sorunun cevabı evet olacak. Şimdi ise bu kategorize sistemi tanıyacağız.


|

|
v


pgrpuds.png


Yapay zekada farklı ajan türlerini gördük, okuduk. P.E.A.S sistemi, bizlere benzer ajanları bir arada kategorize etme fırsat verir. Sistem, belirlenen ajanın çevresine, aktüatörlerine ve sensörlerine dayalı bir performans ölçümü yapar. En yüksek performansı veren ajanlar genelde Rasyonel ajanlardır.

P.E.A.S, 4 kavramın baş harleri ile oluşmuştur. Bunlar;


P: Performans ölçüsü,
E: Çevre,
A: Aktüatörler,
S: Sensörler.



Bu kavramları makalenin üst taraflarında açıklamıştım. Ancak okumaya bu kısımdan başlayanlar için tekrar açıklayayım.

2vj755b.png
Performans ölçüsü: Her bir ajanın performansı, algı yeteneklerine dayalı olarak değişir ve ajanların başarı ve performansları, bu ölçü birimi ile ölçülür.
Çevre: Ajanın bulunduğu çevredir. Ajanın hareket etmesi halinde çevre de ona göre değişecektir.
Çevre 8 ana türde ele alınır;
Tamamen gözlemlenebilen & Kısmen gözlemlenebilen (Fully observable & Partially observable),
Epizodik & Sıralı (Episodic & Sequential),
Statik & Dinamik (Static & Dynamic),
Ayrık & Sürekli (Discrete & Continuous),
Deterministik & Stokastik (Deterministic & Stochastic),
Rekabetçi & İşbirlikçi (Competitive & Collaborative),
Tek ajanlı & Çok ajanlı (Single-agent & Multi-agent),
Bilinen & Bilinmeyen (Known & Unknown).
Aktüatörler: Enerjiyi harekete çevirebilen makine bileşenleridir. Sistemin hareket etmesini ve kontrol edilmesini sağlar.
Sensörler: Ortam değişimini algılayabilen aynı zamanda bilgileri diğer elektronik cihazlar ile paylaşabilen cihazlardır.


Şoförsüz araçlarda P.E.A.S örneği vererek konuyu kavrayalım.

Kendi kendine hareket edebilen araçlarda;
Performans ölçüsü: Güvenlik, Zaman, Konfor vb.
Çevre: Yol, Yol işaretleri, Yaya, Diğer araçlar vb.
Aktüatörler: Direksiyon, Korna, Sinyal, Vites vb.
Sensörler: GPS, Par kamerası, Hız göstergesi, İvme ölçer vb.

|
|
v


Umarım P.E.A.S konusu da anlaşılmıştır.
Şimdi gelin bu çevre konusuna daha derin bir giriş yapalım.


|
|
v



ixj0yjc.png


Yapay zeka için konuştuğumuzda çevre, ajanın ortamıdır. Ajan, sensörleri vasıtasıyla çevreden girdi alır ve çıktıyı aktüatörler vasıtasıyla tekrar çevreye iletir. Bu çevrelerin 8 ana türde olduğunu yukarıda söyledim. Şimdi tek tek bunları açıklayacağız, konuyu böyle bitireceğim. Açıklamadan bitirmek istemedim.

nc5wyhw.png

Tamamen gözlemlenebilir & Kısmen gözlemlenebilir (Fully observable & Partially observable):

Bir ajan sensörü, mevcut her anda ajanın tam durumunu algılama veya ona erişme yeteneğine sahip olduğu zaman, bu durumun Tamamen gözlemlenebilir bir çevrede olduğunu söyleyebiliriz. Çevre zamanını takip etmeye ihtiyaç duyulmadığı için Tamamen gözlemlenebilir bir çevreyi korumak kolay olabilir.
Ancak ajan her çevrede sensöre sahip olmadığı zaman, o çevre Kısmen gözlemlenebilir bir çevredir diyebiliriz.

Örneğin;
Satranç oyunu -> Satranç tahtası ve rakibin hamleleri Tamamen gözlemlenebilir.
Sürüş hali -> Yola çıkınca yada köşeyi dönünce ne olacağı belli olmadığından çevre Kısmen gözlemlenebilir.


Epizodik & Sıralı (Episodic & Sequential):

Bir Epizodik çevrede, ajanın tüm eylemleri atomik bölümlere veya olaylara bölünecektir. Geçmiş ve mevcut eylemler arasında bir bağımlılık hali yoktur. Tüm olaylarda ajan, çevreden girdi alır ve gereken eylemi gerçekleştirir.

Bir Sıralı çevrede ise, geçmiş tüm eylemler gelecekteki eylemleri etkileyebilir. Ajanın bir sonraki eylemi, geçmişte yatığı eyleme ve gelecekte yapacapı eyleme bağlıdır.


Örneğin;
Kusur tespit robotu -> Konveyör bantlarında meydana gelen kusuru tespit etmek için kullanılan bir yapay zeka Epizodik çevreye örnektir.
Dama oyunu -> Oyunda, önceki hamlelerin gelecekteki tüm hamleleri etkileyeceği için Sıralı çevreye örnektir.



Statik & Dinamik (Static & Dynamic):
505kvkn.jpg


Ajan, birtakım elemlerde bulunduğu zaman sürekli değişen bir ortam olduğundan buna Dianmik çevre diyebiliriz.


Ancak ajan eylemlerinde hiç değişmeyen bir çevre varsa buna Statik çevre diyebiliriz.

Örneğin;

Roller Coaster -> Harekete başlandığı andan itibaren sürekli değişen bir ortam olduğu için Dinamik çevreye örenktir.
Boş bir ev -> Ajanın giriş ve çıkışları evde bir değişikliğe sebep olmadığı için Statik çevreye örnektir.



Ayrık & Sürekli (Discrete & Continuous):

Bir çevre, çıktı elde etme konusunda sınırlı sayıda eylem barındırıyorsa, buna Ayrık çevre diyebiliriz.

Ancak çevre, numaralandırılamaz, kesik veya sonlu değilse, buna Sürekli çevre diyebiliriz.

Örneğin;

XOX oyunu -> Yalnızca sınırlı bir sayıda hamleye sahip olduğundan Ayrık çevreye örnektir.
Sürücüsüz otomobil -> Eylemleri numaralandırılamadığı için Sürekli çevreye örnektir.



Deterministik & Stokastik (Deterministic & Stochastic):

Ajanın mevcut durumunda meyana gelen bir belirsizlik, ajanın sonraki durumunu tamamen belirleyebiliyorsa, buna Deterministik çevre diyebiliriz.


Ancak Stokastik çevre, varoluşu gereği rastgeledir ancak benzersiz değildir. Bu yüzden ajan tarafından tamamen belirlenemez.

Örneğin;
Satranç -> Mevcut durumda her bir taş için yalnızca birkaç hamle şansı olacaktır ve bu hamleler belirlenebilir. Bu yüzden Determisintik çevreye örnektir.
Sürücüsüz otomobil -> Aracın eylemleri belirli değildir ve zamana göre değiştiğinden Stokastik çevreye örnektir.



Rekabetçi & İşbirlikçi (Competitive & Collaborative):

Bir ajan, çıktı elde etme hususunda başka bir ajan ile rekabete girdiğinde, bu ortama Rekabetçi çevre diyebiliriz.


Ancak bir ajan, çıktı elde etme hususunda diğer ajanlar ile işbirliği yaptığında, bu ortama İşbirlikçi çevre diyebiliriz.

Örneğin;
Satranç -> Oyunun tek bir kazananı olacağı için girilen rekabet ortamı Rekabetçi çevreye örnektir.
Sürücüsüz otomobil -> Sürüş esnasında çarpışma önlemek için diğer sürücüsüz araçlar ile bilgi paylaşımı yaptığı bir ortam İşbirlikçi çevreye örnektir.



Tek ajanlı & Çok ajanlı (Single-agent & Multi-agent):
2rs15h5.png


Sadece tek bir ajandan oluşan bir çevre Tek ajanlı çevre olarak adlandırılır.

Birden fazla ajan içeren bir ortam ise Çok ajanlı çevre olarak adlandırlır.

Örneğin;
Labirent -> Bir labirentte tek başına bırakılıp yolu bulması istenen bir insan Tek ajanlı çevreye örnektir.
Futbol -> Bir maçta en az 22 kişinin sahada olduğu bir ortam Çok ajanlı çevreye örnektir.



Bilinen & Bilinmeyen (Known & Unknown):

Tüm olası eylemlerin çıktısının verildiği bir ortam Bilinen çevreye örnektir.

Bir ajanın eyleme geçebilmesi için çevrenin nasıl çalıştığı hakkına bilgi sahibi olması gerektiği durum ise Bilinmeyen çevreye örnektir.

Örneğin;

Koşu -> Düz bir parkurda sadece koşması gerektiğini bilen bir yarışmacı Bilinen çevreye örnektir.
İnşaat -> Projenin çizilebilmesi için mimarın çevre hakkında bilgisinin olması gerektiğinden Bilinmeyen çevreye örnektir.






|
|
v

iedbopc.png

^
|
|


Sağlıcakla kalın.


eyruvyp.png
Ellerinize sağlık
 

JohnWick51

Uzman üye
20 Mar 2022
1,867
770
28
k811oqt.png









Merhaba değerli okuyucular. Bu makalemde sizlere "Agents in AI | Yapay zekada ki Ajanlar" konusunu anlatacağım.
Yapay zeka alanında kullanılan ajanların ne olduğunu, ne işe yaradıklarını ve mantığını bu makalede anlamaya çalışacağız.
Foruma katkısı ve bu alanda çalışacak arkadaşlara faydalı olması dileğiyle diyerek başlamak istiyorum.
İyi okumalar.


|
|
v


Makale içeriği;


Ajan (Agent) nedir?
Yazılım-ajan
İnsan-ajan
Robotik-ajan

Akıllı ajanlar ve bileşikleri
Sensörler ve Aktüatörler
Çevre ve Mimari
Rasyonellik ve İdeal rasyonel ajan
4 Kural

Ajan türleri nelerdir?
Basit-refleks-ajan
Model-bazlı-ajan
Hedefe-dayalı-ajan
Fayda-tabanlı-ajan
Öğrenme-ajan
Avantajlar ve Dezavantajlar

P.E.A.S nedir?
Çevre türleri nelerdir?

Tamamen Gözlenebilir ve Kısmen Gözlenebilir
Deterministik ve Stokastik
Rekabetçi vs İşbirlikçi
Tek aracılı vs Çok aracılı
Statik ve Dinamik
Ayrık ve Sürekli
Epizodik ve Sıralı
Bilinen ve Bilinmeyen


|
|
v


Bir
Yapay Zeka (AI) sistemi, bir Ajan (Agent) ve bir Ortam (Environment) barındırır. Akıllı ajanlar; yapay zekaya işlev kazandıran, onun hareket geçmesini sağlayan yazılımsal varlıklardır. Bu ajanlar çevreyi algılayabilir, hareketi başlatmak için aktüatörleri kullanabilir, insanlar yerine operasyonları yönetebilir veya bizler adına kararlar alabilir.
Peki, gelin bu akıllı ajanları daha da derinden inceleyelim.



Ajan (Agent) nedir?


cj9jqr4.png

Çevresini sensörler aracılığı ile tanıyan aynı zamanda bu çevre üzerinde aktüatörler sayesinde hareket edebilen, etki edebilen varlıklara Ajan (Agent) diyebiliriz. Akıllı ajanlar ortamı, kullanıcı girdilerini ve deneyimlerini kararlar alabilir veya bir hizmeti gerçekleştirebilir. Aynı zamanda “Bot” olarak da adlandırılırlar.

Genelde bir akıllı ajan, kullanıcı parametreleri ile internette aramalar yaparak kullanıcının istediği veya ilgisini çekebileceği bilgileri bulur, toplar ve bunları yine kullanıcıya sunar. Yapay zeka ile birlikte çoğu ajan, artık giriş parametrelerini mikrofon veya kameralardan sağlar ve çıkış bilgilerini hoparlör veya ekran aktüatörleri ile sunar. Bu durum teknolojinin ne kadar geliştiğini gösterirken aynı zamanda da bilgilerimizin ne kadar korunaksız olduğunun da bir kanıtıdır.

Şirketlerde kullanılan akıllı ajanlar; veri analitiği, veri madenciliği ve CSS (müşteri hizmetleri ve desteği) alanları için kullanılır.
Tüketici tarafında kullanılan akıllı ajanlar ise; aynı veya benzer ürünlerin fiyat karşılaştırmalarında veya web sitesi güncellemelerinde kullanılır.



Ne tür ajanlar olabilir?


Human-Agent (İnsan-Ajan): Bir insan ajanın gözleri ve kulakları ve diğer organları bir sensör görevi görürken, elleri, ayakları, ağzı ise harekete geçirici işlev (Aktüatör) görevi görür.
Software-Agent (Yazılım-Ajan): Bir yazılım ajanın tuş vuruşları, dosya işlemleri, görüntülenen ağ paketleri bir sensör görevi görürken, gönderilen ağ paketleri ise aktüatör görevi görür.
Robotic-Agent (Robotik-Ajan): Bir robotik ajanın kameraları, kızılötesi bir sensör görevi görürken, sahip olduğu çeşitli motorları ise aktüatör görevi görür.

r6cpddy.png
Bir ajan için şu iki cümleyi kullanabiliriz;
Sensörler vasıtası ile çevreyi algılayabilen,
Aktüatörler vasıtası ile bu çevreye etki edebilen herşey.




Peki sıkça kullandığımız bu terimlerin anlamları ne?

Sensörler: Ortam değişimini algılayabilen aynı zamanda bilgileri diğer elektronik cihazlar ile paylaşabilen cihazlardır. Ajanlar, çevresini sensörler ile gözetler demiştik.
Aktüatörler: Enerjiyi harekete çevirebilen makine bileşenleridir. Sistemin hareket etmesini ve kontrol edilmesini sağlar. Elektrik motorları, çarklar, raylar vb.
Ajan İşlevi: Bir algıyı bir eyleme eşleme işlevidir.
Ajan programı: Ajan işlevinin bir uygulamasıdır. f fonksiyonunu üretmek için fiziksel mimaride bir ajan program yürütülür || f:p* → A

Aslında bu bilgilere baktığımızda anlıyoruz ki çevremizdeki cep telefonları, termostatlar,kameralar hatta bizler de birer ajanız.


Genel olarak bir ajanın yapısı bu şekildedir;
srquxag.png

Ajan = Mimari + Ajan programı ,şeklindedir.

Buradaki tanımlamalar ise;
Mimari: Bir ajanın üzerinde çalıştığı mekanizma.
Ajan programı: Bir ajan işlevinin uygulaması.

Temel işlevleri ise bunlardır;
Algı: Sensörler vasıtasıyla gerçekleştirilir.
Eylem: Aktüatörler vasıtasıyla gerçekleştirilir.

Bir akıllı ajan için 4 temel kural vardır:
1.Kural: Çevre tanıma yeteneği kazanılmış olması.
2.Kural: Kararların gözlemlerden alınması.
3.Kural: Kararın eylemler ile sonuçlandırılması.
4:Kural: Eylemin rasyonel olması.




Peki nedir bu Rasyonellik?

Rasyonellik, kabul edilebilir, mantıklı ve iyi bir yargı yeteneğine sahip olma durumudur. Bu durum, ajanın ne algıladığına bağlı olarak beklenen eylem ve sonuçları içerir. Faydalı bilgiye ulaşma amacı ile yapılan eylemler rasyonelliğin önemli bir parçasıdır.


İdeal Rasyonel Ajan nedir?
En ideal rasyonellikte bir ajan, performans derecesini en üste çıkarmak için “Yerleşik bilgi tabanı” ve “Algı dizisi” kavramlarına eylemlerini dayandırır.

Performans ölçütleri ise şunlardır;
Algı sırası,
Çevre hakkında ön bilgi,

Ajanın gerçekleştirebileceği en makul olası eylemler.


|
|

v

Ajanlar, algılanan zeka ve yetenek derecelerine göre 5 sınıfa ayrılabilir:


Simple Reflex Agents (Basit Refleks Ajanları)
Model-Based Reflex Agents (Model Bazlı Refleks Ajanları)
Goal-Based Agents (Hedefe Dayalı Ajanlar)
Utility-Based Agents (Fayda Tabanlı Ajanlar)

Learning Agent (Öğrenme Ajanı)

|

|
v



q31tm7k.png



| Simple-Reflex-Agents (Basit Refleks Ajanları) |
|
Simple-Reflex-Agent = Mevcut-algı+ Durum-Eylem-Kural |


4e2owvn.png

Simple-Reflex-Agents (Basit Refleks Ajanları), algı geçmişlerini görmezden gelerek sadece mevcut algıları dahilinde hareket ederler. Algı geçmişi, bir ajanın mevcut zamana kadar algıladığı her şeydir. Bu tür ajanların işlevi, “Koşul-Eylem” kuralına dayanmaktadır. Kural, bir durumu bir eyleme eşlemeyi söyler. Eğer durum doğru ise eylem gerçekleştirilir, aksi halde gerçekleştirilmez. Basit reflex işlevi, sadece ortam tümüyle gözlemlenebilir olduğunda başarılı sonuç verir. Eğer ortam kısmen gözlemlenebiliyorsa, Basit reflex ajanı için sonsuz döngü problemleri patlak verecektir. Ancak ajan eylemlerini rastgele seçebiliyorsa, sonsuz döngüden çıkma ihtimali oluşabilir.

Avantajlar:

Yalnızca “IF-ELSE” yapısı ile uygulanabilir.
Diğer türlere göre daha hızlıdır.
“Kural-Eylem” kuralı sayesinde verimlidir.
Bu ajanlar sabit hafıza ajanlarıdır.

Dezavantajları:
Hemen hemen “0” ölçeklenebilirliğe sahiptir.
Sınırlı giriş ve çıkışlar olduğu için sadece “Küçük ve basit” sistemler için geçerlidir.
Öğrenme yeteneği çok çok sınırlıdır.
Ortamdaki herhangi bir değişiklik, kural değişikliğine yol açar.




8exdpg2.png





| Model-Based Reflex Agents (Model Bazlı Refleks Ajanları) |
| Model-Based-Agent = Basit-refleks-ajan + Model (Önceki-durum(lar)) |


gt8078r.png

Model-Based Reflex Agents (Model Bazlı Refleks Ajanları), durumu mevcut durum ile eşleyen bir kural bularak eylem yapar. Bu tür ajanlar, çevre ile ilgili bir model kullanarak kısmen gözlemlenebilir ortamları işler. Ajan, tüm algıları tarafından ayarlanan ve algı geçmişini de işin içine katarak durumu takip eder. Mevcut durum ise çevrenin gözlemlenemeyen bölümünü tanımlayan bir tür oluşumu koruyan ajanda depolanır.

Durum güncellemesi için 2 farklı bilgi gerekir. Bunlar;

Çevrenin ajandan bağımsız nasıl geliştiği,
Ajan eylemlerinin çevreyi nasıl etkilediği.


Avantajlar:
Basit refleks ajanlarından daha verimlidir.
Kısmen gözlemlenebilir ortamlarda çalışabilirler.

Dezavantajlar:
Hedef durum hakkında bilgiye sahip değillerdir.
Sınırlı bir yapay zekaya sahiplerdir.



49zgfo1.png





| Goal-Based Agents (Hedefe Dayalı Ajanlar) |
| Goal-Based-Agent = Model-tabanlı-ajan + Hedef-bilgisi |


l9vxqib.png

Goal-Based Agents (Hedefe Dayalı Ajanlar), istenen durum olan, hedef ile aralarındaki uzaklık durumuna göre karar alırlar. Ajanların tüm hareketleri, hedef ile aralarında olan uzaklığı azaltmak amaçlıdır. Bu durum ajana, bir hedefin durumuna ulaşılanı seçerek birden fazla olasılık arasında seçim yapmasına yarayan bir yol sağlamış olur. Ajanın eylemlerini destekleyen bilgi açıkça belirlen ve değiştirilebilir. Bu durum ise bu ajanların daha esnek çalışmasına olanak tanır. Çoğunlukla araştırma ve planlamaya ihtiyaç duyarlar ve eylemleri kolayca değiştirilebilir.


Avantajlar:
Basit refleks ve Model bazlı reklesk ajanlarından daha verimliler.

Dezavanyaj:
İki durum arasında hangisinin daha iyi olduğunu belirleyemezler.
Sınırlı yapay zekaya sahipler.




sx4ge0x.png




| Utility-Based Agents (Fayda Tabanlı Ajanlar) |
| Utility-Based-Agent = Hedefe-dayalı-ajan + Fayda-fonksiyonu |


ed7rsll.png

Utility-Based Agents (Fayda Tabanlı Ajanlar), nihai kullanımları bir yapı taşı olacak şekilde geliştirilir. Birden fazla makul alternatif bulduklarında hangisinin en optimal olduğunu tespit etmek için Fayda tabanlı ajanları kullanırlar. Tüm durumlar için bir yardımcılığa dayalı eylemler seçerler. Bazen hedefe ulaşmak bizim için en optimal durum olmayabilir. Bu hedefe ulaşırken hız, güvenlik, ucuzluk gibi kriterleri göz önüne alırız. Burada ajan mutluluğu dikkate alınmalıdır. Ajan mutluluğunu ölçmek için Yardımcı programa bakılır. Çevrenin belirsiz olması bir Fayda ajanını, istenen faydayı maksimuma çıkaran eylemi seçmeye yönlendirir. Fayda işlevi ise bu durumu, ajanın mutluluk derecesini tanımlayan gerçek bir sayıya çevirir.


Avantajlar:
Yardımcı işlevi sayesinde en optimal durumu bulurlar.
Sürekli ortamlarda verimli çalışabilirler.
Dezavantajlar:
Sınırlı yapay zekaya sahipler.




azbq7wc.png




| Learning Agent (Öğrenme Ajanı) |
| Learning-Agent = Fayda-tabanlı-ajan + Öğrenme-mekanizması |


osjk7xn.png

Learning Agent (Öğrenme Ajanı), geçmiş deneyimlerinden veya öğrenme yeteneklerinden faydalanabilen ajan türüdür. Basit ve temel bilgiler ile harekete geçer, daha sonra öğrenme yolu sayesinde otomatik bir şekilde harekete devam eder ve uyum sağlar.


Bir Öğrenme ajanının dört kavramsal bileşeni mevcuttur. Bunlar;

Öğrenme unsuru: Çevreden öğrenerek çeşitli iyileştirmeler sağlamaktan sorumludur.
Eleştirmen: Öğrenme unsuru, ajanın sabit performans standartlarına göre ne kadar optimal eylemler yaptığını inceleyen Eleştirmenlerden geri bildirimler alır.
Performans: Harici eylemleri seçmekten sorumludur.
Problem oluşturucu: Yeni ve bilgilendirici deneyimlere sebep olacak eylemleri bulmak ve önermekten sorumludur.

|
|
v

Yapay zeka alanında kullanılan ajan türlerine bakış attık. Bir çok değişik tür olduğunu artık biliyoruz. Peki uzmanlar bunlara dağınık olarak mı bakıyorlar yoksa bir kategorize etme şekli, sistemi var mı?
Tabiki bu sorunun cevabı evet olacak. Şimdi ise bu kategorize sistemi tanıyacağız.


|

|
v


pgrpuds.png


Yapay zekada farklı ajan türlerini gördük, okuduk. P.E.A.S sistemi, bizlere benzer ajanları bir arada kategorize etme fırsat verir. Sistem, belirlenen ajanın çevresine, aktüatörlerine ve sensörlerine dayalı bir performans ölçümü yapar. En yüksek performansı veren ajanlar genelde Rasyonel ajanlardır.

P.E.A.S, 4 kavramın baş harleri ile oluşmuştur. Bunlar;


P: Performans ölçüsü,
E: Çevre,
A: Aktüatörler,
S: Sensörler.



Bu kavramları makalenin üst taraflarında açıklamıştım. Ancak okumaya bu kısımdan başlayanlar için tekrar açıklayayım.

2vj755b.png
Performans ölçüsü: Her bir ajanın performansı, algı yeteneklerine dayalı olarak değişir ve ajanların başarı ve performansları, bu ölçü birimi ile ölçülür.
Çevre: Ajanın bulunduğu çevredir. Ajanın hareket etmesi halinde çevre de ona göre değişecektir.
Çevre 8 ana türde ele alınır;
Tamamen gözlemlenebilen & Kısmen gözlemlenebilen (Fully observable & Partially observable),
Epizodik & Sıralı (Episodic & Sequential),
Statik & Dinamik (Static & Dynamic),
Ayrık & Sürekli (Discrete & Continuous),
Deterministik & Stokastik (Deterministic & Stochastic),
Rekabetçi & İşbirlikçi (Competitive & Collaborative),
Tek ajanlı & Çok ajanlı (Single-agent & Multi-agent),
Bilinen & Bilinmeyen (Known & Unknown).
Aktüatörler: Enerjiyi harekete çevirebilen makine bileşenleridir. Sistemin hareket etmesini ve kontrol edilmesini sağlar.
Sensörler: Ortam değişimini algılayabilen aynı zamanda bilgileri diğer elektronik cihazlar ile paylaşabilen cihazlardır.


Şoförsüz araçlarda P.E.A.S örneği vererek konuyu kavrayalım.

Kendi kendine hareket edebilen araçlarda;
Performans ölçüsü: Güvenlik, Zaman, Konfor vb.
Çevre: Yol, Yol işaretleri, Yaya, Diğer araçlar vb.
Aktüatörler: Direksiyon, Korna, Sinyal, Vites vb.
Sensörler: GPS, Par kamerası, Hız göstergesi, İvme ölçer vb.

|
|
v


Umarım P.E.A.S konusu da anlaşılmıştır.
Şimdi gelin bu çevre konusuna daha derin bir giriş yapalım.


|
|
v



ixj0yjc.png


Yapay zeka için konuştuğumuzda çevre, ajanın ortamıdır. Ajan, sensörleri vasıtasıyla çevreden girdi alır ve çıktıyı aktüatörler vasıtasıyla tekrar çevreye iletir. Bu çevrelerin 8 ana türde olduğunu yukarıda söyledim. Şimdi tek tek bunları açıklayacağız, konuyu böyle bitireceğim. Açıklamadan bitirmek istemedim.

nc5wyhw.png

Tamamen gözlemlenebilir & Kısmen gözlemlenebilir (Fully observable & Partially observable):

Bir ajan sensörü, mevcut her anda ajanın tam durumunu algılama veya ona erişme yeteneğine sahip olduğu zaman, bu durumun Tamamen gözlemlenebilir bir çevrede olduğunu söyleyebiliriz. Çevre zamanını takip etmeye ihtiyaç duyulmadığı için Tamamen gözlemlenebilir bir çevreyi korumak kolay olabilir.
Ancak ajan her çevrede sensöre sahip olmadığı zaman, o çevre Kısmen gözlemlenebilir bir çevredir diyebiliriz.

Örneğin;
Satranç oyunu -> Satranç tahtası ve rakibin hamleleri Tamamen gözlemlenebilir.
Sürüş hali -> Yola çıkınca yada köşeyi dönünce ne olacağı belli olmadığından çevre Kısmen gözlemlenebilir.


Epizodik & Sıralı (Episodic & Sequential):

Bir Epizodik çevrede, ajanın tüm eylemleri atomik bölümlere veya olaylara bölünecektir. Geçmiş ve mevcut eylemler arasında bir bağımlılık hali yoktur. Tüm olaylarda ajan, çevreden girdi alır ve gereken eylemi gerçekleştirir.

Bir Sıralı çevrede ise, geçmiş tüm eylemler gelecekteki eylemleri etkileyebilir. Ajanın bir sonraki eylemi, geçmişte yatığı eyleme ve gelecekte yapacapı eyleme bağlıdır.


Örneğin;
Kusur tespit robotu -> Konveyör bantlarında meydana gelen kusuru tespit etmek için kullanılan bir yapay zeka Epizodik çevreye örnektir.
Dama oyunu -> Oyunda, önceki hamlelerin gelecekteki tüm hamleleri etkileyeceği için Sıralı çevreye örnektir.



Statik & Dinamik (Static & Dynamic):
505kvkn.jpg


Ajan, birtakım elemlerde bulunduğu zaman sürekli değişen bir ortam olduğundan buna Dianmik çevre diyebiliriz.


Ancak ajan eylemlerinde hiç değişmeyen bir çevre varsa buna Statik çevre diyebiliriz.

Örneğin;

Roller Coaster -> Harekete başlandığı andan itibaren sürekli değişen bir ortam olduğu için Dinamik çevreye örenktir.
Boş bir ev -> Ajanın giriş ve çıkışları evde bir değişikliğe sebep olmadığı için Statik çevreye örnektir.



Ayrık & Sürekli (Discrete & Continuous):

Bir çevre, çıktı elde etme konusunda sınırlı sayıda eylem barındırıyorsa, buna Ayrık çevre diyebiliriz.

Ancak çevre, numaralandırılamaz, kesik veya sonlu değilse, buna Sürekli çevre diyebiliriz.

Örneğin;

XOX oyunu -> Yalnızca sınırlı bir sayıda hamleye sahip olduğundan Ayrık çevreye örnektir.
Sürücüsüz otomobil -> Eylemleri numaralandırılamadığı için Sürekli çevreye örnektir.



Deterministik & Stokastik (Deterministic & Stochastic):

Ajanın mevcut durumunda meyana gelen bir belirsizlik, ajanın sonraki durumunu tamamen belirleyebiliyorsa, buna Deterministik çevre diyebiliriz.


Ancak Stokastik çevre, varoluşu gereği rastgeledir ancak benzersiz değildir. Bu yüzden ajan tarafından tamamen belirlenemez.

Örneğin;
Satranç -> Mevcut durumda her bir taş için yalnızca birkaç hamle şansı olacaktır ve bu hamleler belirlenebilir. Bu yüzden Determisintik çevreye örnektir.
Sürücüsüz otomobil -> Aracın eylemleri belirli değildir ve zamana göre değiştiğinden Stokastik çevreye örnektir.



Rekabetçi & İşbirlikçi (Competitive & Collaborative):

Bir ajan, çıktı elde etme hususunda başka bir ajan ile rekabete girdiğinde, bu ortama Rekabetçi çevre diyebiliriz.


Ancak bir ajan, çıktı elde etme hususunda diğer ajanlar ile işbirliği yaptığında, bu ortama İşbirlikçi çevre diyebiliriz.

Örneğin;
Satranç -> Oyunun tek bir kazananı olacağı için girilen rekabet ortamı Rekabetçi çevreye örnektir.
Sürücüsüz otomobil -> Sürüş esnasında çarpışma önlemek için diğer sürücüsüz araçlar ile bilgi paylaşımı yaptığı bir ortam İşbirlikçi çevreye örnektir.



Tek ajanlı & Çok ajanlı (Single-agent & Multi-agent):
2rs15h5.png


Sadece tek bir ajandan oluşan bir çevre Tek ajanlı çevre olarak adlandırılır.

Birden fazla ajan içeren bir ortam ise Çok ajanlı çevre olarak adlandırlır.

Örneğin;
Labirent -> Bir labirentte tek başına bırakılıp yolu bulması istenen bir insan Tek ajanlı çevreye örnektir.
Futbol -> Bir maçta en az 22 kişinin sahada olduğu bir ortam Çok ajanlı çevreye örnektir.



Bilinen & Bilinmeyen (Known & Unknown):

Tüm olası eylemlerin çıktısının verildiği bir ortam Bilinen çevreye örnektir.

Bir ajanın eyleme geçebilmesi için çevrenin nasıl çalıştığı hakkına bilgi sahibi olması gerektiği durum ise Bilinmeyen çevreye örnektir.

Örneğin;

Koşu -> Düz bir parkurda sadece koşması gerektiğini bilen bir yarışmacı Bilinen çevreye örnektir.
İnşaat -> Projenin çizilebilmesi için mimarın çevre hakkında bilgisinin olması gerektiğinden Bilinmeyen çevreye örnektir.






|
|
v

iedbopc.png

^
|
|


Sağlıcakla kalın.


eyruvyp.png
Ellerine saglik
 

Helmsys

Yazılım Ekibi Kıdemli
16 Mar 2022
1,492
1,649
Hocam acaba "stokastik" yerine "skolastik" olabilir mi ?

Bunun dışında yağ gibi akıyor.
 

w1sd0m

Katılımcı Üye
28 Mar 2020
699
626
/802.1x/
Hocam acaba "stokastik" yerine "skolastik" olabilir mi ?

Bunun dışında yağ gibi akıyor.
İnsanın "skolastik" diye okuyası geliyor evet ancak bir yazım yanlışı yok.
İkisi farklı terimler : )


Ellerinize sağlık

Ellerinize sağlık hocam


Yine şaşırtmadı. Mükemmel konu. Ellerinize sağlık :)
<3
 

Sort

Katılımcı Üye
14 Eki 2019
967
79
Ellerine Emeğine Sağlık. Her zamanki gibi mükemmel konu açmışsın
 
Üst

Turkhackteam.org internet sitesi 5651 sayılı kanun’un 2. maddesinin 1. fıkrasının m) bendi ile aynı kanunun 5. maddesi kapsamında "Yer Sağlayıcı" konumundadır. İçerikler ön onay olmaksızın tamamen kullanıcılar tarafından oluşturulmaktadır. Turkhackteam.org; Yer sağlayıcı olarak, kullanıcılar tarafından oluşturulan içeriği ya da hukuka aykırı paylaşımı kontrol etmekle ya da araştırmakla yükümlü değildir. Türkhackteam saldırı timleri Türk sitelerine hiçbir zararlı faaliyette bulunmaz. Türkhackteam üyelerinin yaptığı bireysel hack faaliyetlerinden Türkhackteam sorumlu değildir. Sitelerinize Türkhackteam ismi kullanılarak hack faaliyetinde bulunulursa, site-sunucu erişim loglarından bu faaliyeti gerçekleştiren ip adresini tespit edip diğer kanıtlarla birlikte savcılığa suç duyurusunda bulununuz.