Etiket arşivi: yapay zeka nedir

Yapay Zeka – Zeki Programlama Teknikleri

  • Yapay Zeka, insan ve doğadaki zeki davranışların taklit edilerek problemlerin çözümünde kullanılmasıyla ilgili bilim dalıdır.
  • Birçok farklı alanda kullanılabilir.
  • Yapay zeka algoritmalarında başlangıçlar hep aynı olsa da sonuç farklı olabilir. Hatta büyük bir ihtimalle farklı olacaktır (yakın olabilir).
  • bağımlı Değişken = f (bağımsız değişkenler, parametreler, zorlayıcı fonksiyonlar) –> matematiksel model
  • İstenen çalışma şartları belirlendiğinde parametrelerin olması gereken değerlerini bulmak zordur.
  • Optimizasyon, verilen bir zaman içinde bir problemin mümkün olan en iyi çözümünü bulmaya çalışma sürecidir. Başka bir ifade ile belirli şartları sağlayacak şekilde bir problemin parametre değerlerinin belirlenmesi işlemidir. Probleme göre minimizasyon veya maksimizasyon olarak da nitelendirilebilir.
  • Modern optimizasyon yöntemleri belirleyici bir yöntemle en iyi çözümü bulmayı amaçlar. Başlangıç çözümü seçilir, ihtimalci ve bulgucu stratejilerle bu çözüm geliştirilir.
  • Kısıtların girmesi olayı daha zora sokmaktadır.
  • min = -max
  • Çok Amaçlı Optimizasyon Problemi – İki fonksiyonu birden optimize etmeye çalışıyoruz.
    • f [f1 f2]
  • feasible region (uygulanabilir bölge)
  • Sibernetik – Canlı organizmaların taklidi ve sentezi
  • Zeka (Yapay Zeka) – Bilgi temsil yeteneği, sezgisel muhakeme yeteneği, öğrenme yeteneği, algılama vs.

Klasik Optimizasyon Yöntemleri

Ayrık/sürekli –> Kısıtlamalı/kısıtlamasız olarak sınıflandırabiliriz. Birden fazla minimum veya maksimum varsa çok modlu olarak isimlendirilir. Karmaşıklık hususu bu yöntemlerde önem arz etmektedir. Karmaşıklığın az olması maliyeti düşürecektir (O(logn), O(n), O(nlogn), O(n^2), O(n^3)).

Optimizasyon yöntemlerinde aşamalar; 1) parametre setinin tanımlanması, 2) amaç fonksiyonunun tanımlanması (min/max), 3) sınırlamaların tanımlanması.

    • 1-Boyutlu Kısıtlamasız Optimizasyon Yöntemleri
      • Golden Bölme
      • 2. Derece İnterpolasyon
      • Newton
    • 2-Boyutlu Kısıtlamasız Optimizasyon Yöntemleri
      • Doğrudan Yöntemler
        • Rasgele Arama
        • Benzer Değişim
        • Model Aramaları
      • Gradyen Yöntemler (Türeve Dayalı)
    • Kısıtlamalı Optimizasyon Yöntemleri
      • Doğrusal Programlama
        • Grafik Çözüm
        • Simpleks
      • Doğrusal Olmayan Kısıtlamalı
        • Gradyen

Gradyen Yöntem

Gradyen yöntem türeve dayalıdır. Yani eğim söz konusudur. Birinci türev eğim (optimuma ne zaman ulaşacak), ikinci türev ise minimum, maksimum bilgisi. Gradyen yani türeve dayalı yöntemlerde yerele yakınsama olumludur, ancak globalden ıraksama problemi vardır.


Optimizasyon Yöntemleri

  • Problem düzeyinde, YSA (Yapay Sinir Ağları)
  • Problem üstü düzeyde ise İleri-Geri Beslemeli Yapay Sinir Ağları

Arama Yöntemleri

  • Yorucu Arama (Tüm kombinasyonlar incelenir.)
  • Rasgele Arama (Random)
  • Aç gözlü arama (Greedy)
  • Tepe Tırmanma (Hill Climbing)
  • Sezgisel (Heuristic) — Akıllı tahminlere dayalı buluş yöntemi veya yeni çözümlerin keşfine götüren bulgulara dayalı arama yöntemidir. En iyi sonucu garanti etmez.
  • Belirleyici (Deterministic) — Probleme özel statik yöntemlerdir
  • İhtimalci (Stochastic) — Farklı problemlere yöneliktir, dinamik yöntemlerdir.

Problem Çözümleme

  1. Problemin Tanımlanması
  2. Strateji
  3. Başlangıç Durumu
  4. Operatörler
  5. Komşuluk
  6. Durum Uzayı
  7. Hedef Testi
  8. Yol Maliyeti

Algoritma Değerlendirme Kriterleri

  • Tamlık (Çözüm garantisi)
  • Uzay Karmaşıklığı (hafıza)
  • Zaman Karmaşıklığı
  • Dinçlik (Her başlangıçta iyi çözüm?)
  • Esneklik (Adaptasyon)

Bilginin Temsili

  • Binary (bit sayısı ve hassasiyet)
  • Gerçel
  • Sembolik veya Permütasyon Kodlama

Seri Algoritmalar

  • Tabu Arama
  • Tavlama Benzetimi

Popülasyon Tabanlı Algoritmalar

  • Genetik
  • Karınca Koloni
  • Memetik..