İçeriğe geçmek için "Enter"a basın

Uzman sistemlerin avantajları/dezavantajları

expert systems

Hepinize merhaba,

Uzman sistem geliştirmek gerçekten de oldukça zor ve külfetlidir. Külfetli ve zordur ama tabiri caizse hem geliştiren hem de geliştirilen için tadından yenmez. Geliştiren için Adeta sisteminizin çalıştığı her yerde siz çalışıyor olursunuz. Şöyle ki hala çalıştığım çok şubeli, çok coğrafi bölgeli firmada lojistik bölümünde bir uzman sistemim çalışıyor. Perakende sektöründe çalıştığımdan yoğunluklarını tahmin edebilirsiniz.

Ben fiziksel olarak orada bulunarak o sistemi nasıl idare edeceksem, benim yerime benim mantığımı uyguladığı için adeta orada da benden bir tane var gibi sistemi hatasızlaştırmaktadır. Devam etmek gerekirse yine çalıştığım ve sevdiğim bu firmada satın alma departmanı için de geliştirdiğim bir uzman sistem bulunmakta ve tahmin edersiniz ki bir mühendis ya da hesap uzmanı gibi analitik düşünen ince hesaplar yapan bir uzman süreçleri nasıl kontrol altına alırsa sistem onu yapıyor. Yani benden bir adette orada var.. bazı uygunsuz ürünlerin kayıt altına alındığı ve bunlar üzerinde bazı işlemlerin yapıldığı ve sonuçlara göre bazı kararların verildiği bir başka çok basit bir uzman sistem uygulaması sayesinde yüzlerce personelin günlük 1-2 saat arasında değişen zaman kaybının önüne geçtik. Bu yaptığımızın en önemli getirisi o personelden aldığımız dualar olmuştur. Tabi firma açısından ciddi bir iş gücü ve zaman kazanımı olduğunu da atlamamak gerekir. yani orada da adeta bir uzman çalışmakta. bu şekilde çalıştığım firma için geliştirdiğim irili ufaklı uzman sistemler sayesinde adeta firmada en az 5-6 uzman/mühendis gereksinimini yok etmiş bulunuyoruz. 50 ye yakın şube ve 3 coğrafi bölgede faaliyet gösteren ve irili ufaklı makine/cihaz parkı 500ün üstüne çıkmış firmanın, yönettiğim I.T. departmanı sadece 3 kişiden oluşmakta. Tüm bunlar geliştirdiğimiz uzman sistemler sayesinde başarılmış getirilerdir. Geliştirdiğimiz Uzman sistemlerin girdiği diğer departmanlar da meydana gelen personel fazlalıklarını ve buralardan elde edilen maliyet tasarruflarını söylemeye gerek yok. Bu saydıklarım geliştirenin feyz alması için bir kaç neden..

Geliştirilen için belki de milyonlara mal olabilecek hataların önüne geçer aynı zamanda yüksek maliyetli uzmanlar çalıştırılmasını gerektirmez ve hatasız çalışır, personel tasarrufu sağlar. Ki güvenin bana diğer getirilerinin yanında personel ve uzman maliyeti bir hiç olarak kalabilir.

Tamamen mantığa dayalı olan bu sistemlerde en basit konular üstüne oluşturulacak bir uzman sistemin bile içinde bulunabilecek mantık döngüleri başınızı döndürecektir. Bazen kendi yazdığım kodları tam olarak anlayabilmek için bir kaç saatimi harcadığım olabiliyor çünkü adı üstünde mantık programlama.  Ben, yani yazılım hayatına 80li yılların sonunda ilkokulda spagetti kodlar yazarak başlamış teknolojiye paralel olarak sırasıyla, yapısal sonrasında prosedürel sonrasında nesne tabanlı uygulamalar geliştirmiş birisi, size mantık tabanlı uzman sistemler geliştirmek zordur ve hataya çok açıktır,  gerçek anlamda analitik düşünce gerektirir diyorsa dikkate almanızda fayda vardır. Bugün ve gelecekte bu alanda yazılım geliştiricilerin sayısı daima az olacaktır. Ve onlar daima değerli olacaklardır. Çünkü evde oturarak ya da buna gerek görmeyen işyerlerinde/alanlarda uzman sistem geliştirmek ve de onların çok işe yarar olmasını beklemek hayal olur. Tüm bu şartlar sağlansa bile bu sistemleri geliştirmenin yazılımsal zorluğu çok iyimser bir tahminle zaten mevcut yazılımcıların %90ını bu işin dışına otomatik olarak itecektir. Ve yine bugün ve gelecekte hevesle başlanan, geliştirilmeye çalışılan ve hatta bir süre sonuçlanıp çalıştığı düşünülen uzman sistemlerin bile bence en az %95i  çöpe gidecektir.

Benim kanımca teknoloji henüz yapay zeka sistemlerinin ticari olarak satılmasını sağlayacak kadar gelişmedi. Tıpkı her firmanın başka uzmanı olması ve her uzmanın kendilerine göre teknikleri hareket tarzları olmasından dolayı Yapay zeka sistemleri standart bir halde piyasa ya da sektörlere sunulamaz. bu da bu alan yazılımcılarının sayısının çok çok az olacak olmasının en önemli etkenidir. Geliştirmekte ki zorluklardan birisi ise yazılan bir yapay zeka uzman sistemin tamamen yazılımcının/yazılım ekibinin ruhunu yansıtması. Bu şu anlama geliyor, Nasıl ki bir alanda uzmanların görüşleri hareket tarzları kendilerine has olabiliyorsa, bu yazılımları geliştirecek uzmanların da tercihleri kararları geliştirme yapıları o yazılımcıya has olmakta. Her ne kadar biz bu işte standartları zorlayacağız, dökümante edeceğiz, algoritmaları belirleyeceğiz denilse de (istisnaları hariç tutarsak) devam gerektiren projelerin neredeyse tamamında, sizden sonra bunu geliştirecek kişi,
ultra uzman olsa bile,(ki devam gerektiren yani aktif çalışan bir uzman sistem yazmışsanız sizden daha uzmanının bulunması zordur.. Daha da kötüsü için devam…)
bu mantıksal algoritmaları, dökümanları ANLASA bile (başka birisinin mantığını anlasanız bile mutlaka aklınıza bir şeyler gelir ya da başka türlü yapılabileceğini düşünürsünüz.)
ister istemez kendine has tarzını ve mantığını projeye yansıtması gerekeceğinden proje geri döndürülemez hata ve mantık ayrımlarına girecektir. Zaten bu alandaki yazılım geliştirici sayısının azlığını düşündüğünüzde bu aşamaya gelmiş projelerin genelinin yok olacağını tahmin etmek zor olmaz.
Yukarda ki cümlemde “devam gerektiren” dedim bu da sizi yanıltmasın. Bu projelerin ticari olamamasının bir nedeni de yaşayan bir organizma gibi olmalarıdır. Çünkü bir şeyi her zaman daha iyi yapmanın bir yolu vardır. İnsanlar ve yaptıkları işler sürekli bir gelişim içindedir. Bu da proje için kurguladığınız uzman sistem mantığınızın ve kurgularınızın sürekli geliştirilmesi gerektiği anlamına geliyor. Yani bir uzman sistem projesi sürekli güncel kalmalı sürekli geliştiricisi tarafından müdahale edilmelidir. Tüm bunlar neden bu alanda çok proje olmadığını ve neden çok kişi tarafından geliştirilemediğini bir miktar açıklıyor olmalı. Bu sayılanların haricinde en en kötüsü ise Allamei cihan bir yapay zeka yazsanız bile insanlar tarafından “-aa ne güzel program hangi dondurmayı seçeceğime karar verdi, gerçi ben bunu excelde de yapardım” diyen kişilerdir. Yazdığınız mantık abidesini, basit veritabanına kayıt ekleyen programlarla aynı kefeye koyan insanlardır. yani yaptığınızın değeri bir kaç kişi dışında asla bilinmeyecek, o bir kaç kişide teknik olarak ne başardığınızı bilmeyecek sadece işe yarar bir program olduğuna inanacaklardır….

Neyse ümitlerinizi çok kırmayayım. Bu kadar zorluğa rağmen başarıya ulaşmış bir uzman sistem tüm bu zorlukların bedelini fazlasıyla geliştiricisine ve kullanıcısına kazandırır. Ve bu kazanımlar o kadar büyük ve güzel olurlar ki peşpeşe yeni uzman sistem uygulamaları talepleri gelir.
Yapay zeka sistemlerinin kendi alt kırılımlarına göre avantajları ve dezavantajları bulunur. Bu alanda projeler geliştirmek isteyen kimseler tercih edecekleri alanları avantajları/dezavantajları değerlendirerek seçmesi gerekmektedir.

Bu bağlamda bizim üzerine eğileceğimiz Yapay Zeka’nın Uzman sistemler alt dalının avantajları ve dezavantajlarına bakacağız.

Gerçi avantajları ve dezavantajları sınırlamak sayıyla ifade etmek doğru değildir.
Ancak fikir edinebilmemiz için yukarda kendi hayatımdan bahsettiğim örnekleri ve bir kaç akla gelen başka maddeyi de sıralamakta fayda var.

Epey cümle sarfettik, artık avantajları sıralayalım.

AI

Uzman Sistemlerin Avantajları:

  • Üretim Artışı: Uzman bir sistem Uzman bir insandan daha hızlı hesaplar yapıp kararlar verebileceğinden zamandan tasarruf edilir ve bu sayede örneğin üretim artışı sağlanabilir.
  • Süreklilik: İnsani hatalar ve yıpranmalar söz konusu olmadığı için zamanla oluşabilecek veri ve bilgi kaybı yoktur. Yeterince iyi bir Dinamik yapı oluşturabilirseniz kendi kendini günceller, bilgi kazanabilir.
  • Maliyet Tasarrufu: Zor bulunan ve maliyetli uzmanların yaptığı işi sürekli yaparak tasarruf ve dolaylı yoldan üretim artışı sağlayabilir.
  • Kalite Düzeyinin Yükselmesi: Düşünerek/Hesaplarayarak ve hata payı olmadan sonuca varması nedeniyle kaliteyi yüksek tutabilir.
  • Uzmanlığın Yaygınlaştırılması: Bir çok alanda uzman yetiştirmek sıkıntılı bir iştir. Bu işi yapan yaşlanmayan, unutmayan bir sistemin bilgilerini ve kurallarını aktarması sorunsuzdur. Dolayısıyla yeni uzman yetiştirmeye gerçek katkı sağlayabilir.
  • Eğitim Verme: Konu hakkında uzman olmayanlara, nedenlerini de açıklayarak öğretebilir.
  • Sağlıklı Öneri Üretimi: İnsani kusurlar olan acele etme, çabuk karar verme ve telaşa kapılma gibi nedenlerden dolayı sağlıklı karar verme ve öneri üretimi kısıtlamaktadır. Uzman sistemlerde ise yeterli düşünme, analiz etme sonuç üretmeyi çok kısa bir sürede yapabilir.
  • Güvenilirlik: İyi tasarlanmış Uzman sistemler hiçbir detayı kaçırmadan son ayrıntısına kadar taradıktan sonra sonuca ulaşma yöntemini kullanır. Hiçbir belirsizlik yoktur.
  • Tam ve Kesin Olmayan Bilgi ile çalışabilme: Bir insandaki tüm özellikleri taşıyarak “emin değilim”, “bilmiyorum” gibi kesinlik belirtmeyen ifadelere de yer verilmesi, değerlendirme ve kıstaslarını buna göre ayarlamasıdır.
  • Ara Sonuçları Gösterebilme: Uzman sistemlerin kullanıldığı bazı alanlarda ara sonuçları, raporları görmek ilerisine yönelik plan ve tasarı yapmak daha uygundur. Böyle durumlarda istenildiği anda müdahale edilebilir.
  • Sonuçlardan Yararlanma: Dinamik bit yapı oluşturulduğu takdirde öğrenebilme kabiliyetine sahip olduğu andan itibaren her sonucu birbiri ile kıyaslama yorum yürütme ve gerçek doğruyu bularak bilgilerde tutarlılık sağlayabilir.
  • Geleceğin Fabrikalarının Gelişmesine Katkı: Gelecekte kurulacak olan insansız fabrika yapılarak uzman sistemler ile daha da gelişmesi sağlanabilir. Her türlü kazanç sağlanarak büyük bir atılım ile gelişme beklenmektedir.

Uzman Sistemlerin Dezavantajları:

Burada belirtmek istediğimiz bir uzman sistemin dezavantajlarından daha çok tasarım aşamasında veya kullanım aşamasında karşılaşılan güçlükler, ileriki zamanlarda yaşanabilecek problemleri içermektedir.

  • Uzmanlık Bilgisinin Olmayışı: Günümüz koşullarında her alanda yeterli miktarda uzman bulamamak ve bulunsa dahi zaman ayıramamaktadır.
  • Uzmanlardan Bilgi Edilmesindeki Güçlükler: Kimi uzmanlar bildiklerini aktaramamaktadır. Bir uzman sistem tasarlamanın başlıca problemlerindendir. Bazı uzmanlar ise yeni teknolojiye ayak uydurmak istemeyip bilgi paylaşımından kaçınmaktadır.
  • Aynı Konuya Uzmanların Farklı Bakış Açıları: Uygulanacak alana göre değişiklik göstermekle birlikte her uzmanın kendi benimsediği ve doğru olduğu bilgilerde tutarsızlık meydana gelebilir. Kimi durumlarda daha ekonomik veya daha doğru bir bilgi sunabilir. oluşturulmuş olan uzman sistemde dinamik bir alt yapı oluşturulursa bu sorunun üzerinden gelinebilme imkanı olabilir.
  • Dar Alana Yönelik Olması: Uzman sistemlerin çok dar bir alana hitap etmesi ve bunun sonucunda dışarı çıkılma gerçekleştiği zaman sistemin çalışmasında problemler meydana gelmesi anlamındadır. Örneğin her konuda bir uzman olduğu, bir uzmanın birden çok uzmanlık dalının bulunmadığı bulunsa da çok az sayıda olmasından dolayı alanları genişletilmeye başlatılırsa sistemde karışıklıklar başlayacaktır.
  • Üst Düzey Yöneticilerin Tutuculuğu: Yeni teknolojiye şüpheci yaklaşım ve maliyet pahalılığı tüm yöneticileri düşündürmektedir. Aynı işi yapabilecek bir insan varken böyle bir bilgisayar programına maliyet ayıramamaktadırlar.
  • Uzmanların Objektif ve Bağımsız Denetim Mekanizmaların Olmayışı: Uzmanların bir çoğu kendi geliştirdikleri, kişisel yöntemlerini kullanmaktadırlar. Bunları açıklayamamaları ve ister istemez objektif bir anlatıma sahip olamamalarından gelmektedir.
  • Ortak Terminoloji Olmayışı: Çeşitli kullanılan kavramların kişiden kişiye değişerek farklı anlamlar kazanması ve sözlük anlamı ile gerçek anlamının birbirinden farklı oluşu yüzünden doğan karışıklıklardır.
  • Maliyet Yüksekliği ve Zaman Fazlalığı: Uzman sistem tasarlanmasının yüksek maliyetli olduğu düşünülmelidir. Bilgi Mühendisi, Uzman ve Programcı ile ortalama 3-5 yıl arasında değişen sistemlerin maliyetleri göz önüne alınmalıdır.
  • Yaratıcılık:Normal durumları dışında alışılagelmemiş bir olay karşısında uzman insanın yaratıcılığı ile yeni bir çözüm üretebilirken uzman sistem bunu yapamamaktadır.
  • Öğrenme: Uzman bir insanın öğrenme yeteneği çok kolay iken, dinamik yani öğrenebilen bir uzman sistem tasarlamak başlı başına bir problem teşkil eder.

Bugünde epey yazmışız. saat 2çeyrek olmuş. bir sonraki yazımda Uzman sistemlerin yapısına gireceğim.

Kalın sağlıcakla.

İlk yorum yapan siz olun

  1. aksakallar aksakallar Temmuz 25, 2013

    bu konuda yazılmış en güzel makalelerden biri.İnsanoğlu kadim zamanlardan bu yana yapay zekayı kullanıyordu.Fakat şimdi bu kullanım modern teknoloji ile de desteklenince daha iyi olmuş.İçinde bulunduğumuz yüzyılın en büyük çalışma alanlarından biri de bu olacak.

Bir yanıt yazın

E-posta adresiniz yayınlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir