İçeriğe atla

Sezgisel algoritma

Bilgisayar bilimlerinde, sezgisel ya da buluşsal (heuristic) bir problem çözme tekniniğidir. Sonucun doğruluğunun kanıtlanabilir olup olmadığını önemsememektedir fakat genelde iyiye yakın çözüm yolları elde eder. Sezgisel algoritmalar ise geçiş süresinde daha verimli hale gelebilmek için en iyi çözümü aramaktan vaz geçerek çözüm zamanını azaltan algoritmalardır.

Sezgisel algoritmalar en iyi sonucu bulacaklarını garanti etmezler fakat makul bir süre içerisinde bir çözüm elde edeceklerini garanti ederler. Genellikle en iyiye yakın olan çözüm yoluna hızlı ve kolay bir şekilde ulaşırlar.

Sezgisel arama algoritmalarına örnek olarak;

  • A* araması (A star)
  • Demet araması (Beam search)
  • Tepe tırmanma (Hill climbing) algoritması
  • En iyi öncelikli arama (Best first search)
  • Açgözlü en iyi öncelikli arama (Greedy best first search)
  • Benzetimli Tavlama (Simulated Annealing) algoritması
  • Geri izleme (backtracking)

Heuristic diğer bir anlamıyla; bir düğümden (node) başka bir düğüme olan en kısa yolun maliyetini hesaplayan fonksiyonlar olarak bilinir.

Sezgisel optimizasyon

Sezgisel algoritmalar, büyük boyutlu optimizasyon problemleri için, kabul edilebilir sürede optimuma yakın çözümler verebilen algoritmalardır. Genel amaçlı sezgisel optimizasyon algoritmaları, biyoloji tabanlı, fizik tabanlı, sürü tabanlı, sosyal tabanlı, müzik tabanlı ve kimya tabanlı olmak üzere altı farklı grupta değerlendirilmektedir. Sürü zekâsı tabanlı optimizasyon algoritmaları kuş, balık, kedi ve arı gibi canlı sürülerinin hareketlerinin incelenmesiyle geliştirilmiştir.[1]

Sezgisel optimizasyon yöntemlerine örnek olarak;

  • Genetik Algoritma (Genetic Algorithm)(GA)
  • Karınca Kolonisi Optimizasyonu (Ant Colony Optimization)(ACO)
  • Parçacık Sürü Optimizasyonu (Particle Swarm Optimization)(PSO)
  • Yapay Arı Kolonisi (Artificial Bee Colony)(ABC)
  • Diferansiyel Gelişim Algoritması (Differential Evolution Algorithm) (DEA)
  • Benzetim Tavlama (Simulated Annealing)(SA)
  • Yerçekimi Arama Algoritması (Gravity Search Algorithm)(GSA)
  • Gaz Brownian Hareketi Optimizasyonu(Gases Brownian Motion Optimization) (GBMO)
  • Isı Transferi Arama (Heat transfer search)(HTS)
  • Elektromanyetik Alan Optimizasyonu (Electromagnetic Field Optimization) (EFO)
  • Optikten Esinlenen Optimizasyon (Optic Inspired Optimization)(OIO)
  • Ağırlıklı Süperpozisyon Çekimi (Weighted Superposition Attraction (WSA)
  • Orman Optimizasyonu Algoritması (Forest Optimization Algorithm)(FOA)
  • Kasırga Temelli Optimizasyon Algoritması (Hurricane Based Optimization Algorithm)
  • Kara Delik Optimizasyon Algoritması
  • Su Döngüsü Optimizasyon Algoritması
  • Meyve Sineği Optimizasyon Algoritması
  • Krill Sürü Optimizasyon Algoritması
  • Bakteri Yiyecek Arama Davranışı
  • Yarasa Algoritması
  • Ateş Böceği Algoritması
  • Aslan Algoritması
  • Gri Kurt Algoritması
  • Yunus Balığı Algoritması
  • Çalı Kolonisi Algoritması
  • Yapay Alg Algoritması
  • Virüs Koloni Arama Algoritması
  • Köpekbalığı Koku Alma Optimizasyon Algoritması
  • Sosyal Örümcek Algoritması
  • Ağaç-Tohum Algoritması(Tree-Seed Algorithm)(TSA)
  • Tabu arama Algoritması

Kaynakça

Özel
  1. ^ "Arşivlenmiş kopya". 17 Eylül 2016 tarihinde kaynağından arşivlendi. Erişim tarihi: 9 Ağustos 2016. 
Genel

Ayrıca bakınız

Dış bağlantılar

İlgili Araştırma Makaleleri

<span class="mw-page-title-main">Algoritma</span> bir problem sınıfının nasıl çözüleceğine dair kesin bir tarif

Algoritma, belli bir problemi çözmek veya belirli bir amaca ulaşmak için tasarlanan yol. Matematikte ve bilgisayar biliminde bir işi yapmak için tanımlanan, bir başlangıç durumundan başladığında, açıkça belirlenmiş bir son durumunda sonlanan, sonlu işlemler kümesidir. Genellikle bilgisayar programlamada kullanılır ve tüm programlama dillerinin temeli algoritmaya dayanır. Aynı zamanda algoritma tek bir problemi çözecek davranışın, temel işleri yapan komutların veya deyimlerin adım adım ortaya konulmasıdır ve bu adımların sıralamasına dikkat edilmelidir. Bir problem çözülürken algoritmik ve sezgisel (herustic) olmak üzere iki yaklaşım vardır. Algoritmik yaklaşımda da çözüm için olası yöntemlerden en uygun olan seçilir ve yapılması gerekenler adım adım ortaya konulur. Algoritmayı belirtmek için; metinsel olarak düz ifade ve akış diyagramı olmak üzere 2 yöntem kullanılır. Algoritmalar bir programlama dili vasıtasıyla bilgisayarlar tarafından işletilebilirler.

<span class="mw-page-title-main">Yapay zekâ</span> insani zekaya sahip makine ve yazılım geliştiren bilgisayar bilimleri dalı

Yapay zekâ ya da kısaca YZ,, insanlar da dahil olmak üzere hayvanlar tarafından, doğal zekânın aksine makineler tarafından görüntülenen zekâ çeşididir. İlk ve ikinci kategoriler arasındaki ayrım genellikle seçilen kısaltmayla ortaya çıkar. Güçlü yapay zeka genellikle Yapay genel zekâ olarak etiketlenirken, doğal zekayı taklit etme girişimleri yapay biyolojik zekâ olarak adlandırılır. Önde gelen yapay zeka ders kitapları, alanı zeki etmenlerin çalışması olarak tanımlar: Çevresini algılayan ve hedeflerine başarıyla ulaşma şansını en üst düzeye çıkaran eylemleri gerçekleştiren herhangi bir cihaz. Halk arasında, yapay zekâ kavramı genellikle insanların insan zihni ile ilişkilendirdiği öğrenme ve problem çözme gibi bilişsel eylemleri taklit eden makineleri tanımlamak için kullanılır.

<span class="mw-page-title-main">Arama motoru</span>

Web arama motoru veya internet arama motoru, web'de sistematik bir şekilde internet kullanıcılarının istedikleri bilgilere anında erişebilmek için sıkça kullandıkları bir yazılım türüdür. Birincil işlevi internette veya internetin bir kısmında bulunmuş olan verileri bir araya getirmek ve raporlamaktır. Arama sonuçları genellikle satırlara ayrılmış sonuç sayfaları şeklinde sunulur. Bulunan bilgiler arasında web sayfası bağlantıları, görseller, videolar, infografikler, yazılar, akademik makaleler ve diğer dosya türleri yer alabilir. Arama motoru, çıktı olarak elde edilmiş kayıtlar ve bilgilerin hepsini birbiriyle karşılaştırarak sorgulayan, bir sorgunun kabul edilebilmesi için gerekli faaliyetleri gerçekleştiren, elde edilen verilerin performanslarının en yüksek olmasını amaçlayan bir sorgulama ve bulma mekanizmasıdır. Bazı arama motorları, veri tabanlarında ve kamuya açık dizinlerde bulunan bilgileri de indeksler. Bu noktada toplanan veriler, web sitesi URL’sini, web sitesinin içeriğini açıklayan bazı anahtar kelimeleri veya anahtar kelime gruplarını, web sayfasını oluşturan kod yapısını ve web sitesinde verilen bağlantıları içerir. Arama motorları, insanlar tarafından derlenen web dizinlerinin aksine, "örümcek" denilen botlar tarafından toplanan bilgileri belirli bir algoritma yardımıyla gerçek zamanlı olarak yansıtabilirler. Ve de günümüzde World Wide Web ile çok iyi bir hale gelen arama motorları, giderek profesyonelleşmeye devam etmektedir.

Seyyar satıcı problemi yöneylem araştırması ve teorik bilgisayar bilimi alanlarında incelenen bir "kombinatorik optimizasyon" problemidir.

<span class="mw-page-title-main">Benzetilmiş tavlama</span>

Benzetilmiş tavlama ya da benzetimli tavlama algoritması, eniyileme problemi için tasarlanmış olasılıksal yaklaşımlı bir algoritmadır. Diğer olasılıksal yaklaşımlar gibi en iyi çözümün en kısa zamanda üretimini hedefler. Bu sebeple, özellikle matematiksel modellerle çözülmesi maliyetli olan kombinasyonel eniyileme problemlerinde kullanılır. Benzetilmiş tavlama algoritması; elektronik devre tasarımı, görüntü işleme, yol bulma problemi, gezgin satıcı problemi, malzeme fizigi simulasyonu, kesme ve paketleme problemi, akış çizelgeleme ve iş çizelgeleme problemlerinin çözümlerinde başarılı sonuçlar vermiştir.

<span class="mw-page-title-main">Genetik algoritma</span>

Genetik algoritmalar, doğada gözlemlenen evrimsel mekanizmalara benzer mekanizmalar kullanarak çalışan eniyileştirme yöntemidir. Çok boyutlu uzayda belirli bir maliyet fonksiyonuna göre en iyileştirme amacıyla iterasyonlar yapan ve her iterasyonda en iyi sonucu üreten kromozomun hayatta kalması prensibine dayanan en iyi çözümü arama yöntemidir.

John Henry Holland Birleşik Amerikalı bilim insanıdır.

Matematikte matematiksel programlama, eniyileme ya da optimizasyon terimi; bir gerçel fonksiyonu minimize ya da maksimize etmek amacı ile gerçek ya da tam sayı değerlerini tanımlı bir aralıkta seçip fonksiyona yerleştirerek sistematik olarak bir problemi incelemek ya da çözmek işlemlerini ifade eder. Örneğin bu problem şöyle olabilir:

Matematik biliminde, özellikle yöneylem araştırması uygulamalı dalında, doğrusal programlama problemleri bir doğrusal amaç fonksiyonunun doğrusal eşitlik ve/veya eşitsizlik kısıtlamalarını sağlayacak şekilde optimizasyon yapılmasıdır. Bir optimizasyon modeli eğer sürekli değişkenlere ve tek bir doğrusal amaç fonksiyonuna sahipse ve tüm kısıtlamaları doğrusal eşitlik veya eşitsizliklerden oluşuyorsa, doğrusal (lineer) program olarak adlandırılır. Başka bir deyişle, modelin tek-amaçlı fonksiyonu ve tüm kısıtlamaları, süreklilik gösteren karar değişkenlerinin ağırlıklı toplamlarından oluşmalıdır.

<span class="mw-page-title-main">Makine öğrenimi</span> algoritmaların ve istatistiksel modellerin kullanımıyla bilgisayarların yapacakları işleri kendileri çözebilmeleri

Makine öğrenimi (ML), veriden öğrenebilen ve görünmeyen verilere genelleştirebilen ve dolayısıyla açık talimatlar olmadan görevleri yerine getirebilen istatistiksel algoritmaların geliştirilmesi ve incelenmesiyle ilgilenen, yapay zekâda akademik bir disiplindir. Makine öğrenimi, bilgisayarların deneyimlerinden öğrenerek karmaşık görevleri otomatikleştirmeyi sağlayan bir yapay zeka alanıdır. Bu, veri analizi yaparak örüntüler tespit etme ve tahminlerde bulunma yeteneğine dayanır. Son zamanlarda yapay sinir ağları, performans açısından önceki birçok yaklaşımı geride bırakmayı başardı.

Tanrının algoritması, Rubik Küpü ile benzeri bulmaca ve matematiksel oyunların çözüm yöntemlerini konu alan bir kavram. Sözü edilen bulmacaları olabilecek en az adımda çözmeyi başaran algoritmayı tanımlamak için kullanılan bu terim, herhangi bir anda çözüme giden en kısa yolu bulabilen bir bilgenin var olduğu düşüncesine dayanmaktadır.

Bilişim Biliminde; Evrim Stratejileri (ES), evrim ve adaptasyon fikri optimizasyon tekniğine dayanmaktadır. Bu evrimsel hesaplama veya yapay evrim metodolojilerinin genel sınıfına aittir.

<span class="mw-page-title-main">Evrimsel algoritma</span>

Evrimsel algoritma (EA), yapay zeka oluşturmada evrimsel bilgisayımın bir alt kümesi olup meta bulucu optimizasyon algoritması tabanında jenere edilmiş popülasyondur. Evrimsel algoritma, biyolojik evrimden esinlenerek üreme, mutasyon, rekombinasyon ve doğal seçilime benzer mekanizmalar kullanır. Optimizasyon problemlerinin aday çözümleri bir popülasyondaki bireyleri temsil eder ve seçilim değeri fonksiyonları çözümlerin içinde "yaşadığı" çevreyi belirler. Popülasyonun evrimi yukarıdaki operatörlerin tekrarlanan uygulaması sonrasında gerçekleşir. Yapay evrim (YE), başlı başına farklı evrimsel algoritmalar içeren bir süreci anlatmaktadır; EA'ların her biri, YE'e katılım yapan ayrı bir bileşendir.

Çaprazlama yapay zekânın bir alt kolu olan genetik algoritmalarda kullanılan bir genetik işleçtir.

<span class="mw-page-title-main">Yapay genel zekâ</span>

Yapay genel zeka (YGZ), bir insanın yapabileceği herhangi bir zihinsel görevi başarıyla gerçekleştirebilecek bir makinenin zekasıdır. Günümüzdeki bazı yapay zeka araştırmalarının temel amacıdır ve bilimkurgu ve fütüroloji'de de ortak bir konudur. Bazı araştırmacılar Yapay genel zekâyı "güçlü yapay zekâ", "tam yapay zekâ" veya bir makinenin "genel akıllı eylem" gerçekleştirme kabiliyeti olarak adlandırmaktadır; diğerleri ise sadece bilinci deneyimleyen makineler için "güçlü yapay zekâ" tabirini kullanmaktadır.

Xiaoice Microsoft'un Asya ofisi tarafından duygusal hesaplamayı temel alarak geliştirilen yapay zeka sistemidir.

Tepe Tırmanma Algoritması, yapay zeka alanındaki matematiksel optimizasyon problemleri için kullanılan sezgisel bir algoritmadır. Çok sayıda verinin girilmesi ve iyi bir sezgisel fonksiyon verildiğinde, probleme yeterince iyi bir çözüm bulmaya çalışmaktadır. Bilgisayar bilimlerinde aktif olarak kullanılmakta olan arama algoritmalarından birisidir. İki boyutlu bir grafikte en düşük noktaları arama esnasında yapmış olduğu hareket tepe tırmanmaya benzemesinden dolayı bu isimi almıştır.

<span class="mw-page-title-main">Genel oyun oynama</span>

Genel oyun oynama, birden fazla oyunu başarıyla oynayabilmek için yapay zeka programlarının yaptığı bir tasarımdır. Satranç gibi birçok oyun için bilgisayarlar, başka bir bağlama aktarılamayan özel olarak tasarlanmış bir algoritma kullanarak bu oyunları oynayacak şekilde programlanmıştır. Örneğin, satranç oynayan bir bilgisayar programı dama oynayamaz. Genel oyun oynama, Yapay Genel Zeka yolunda gerekli bir kilometre taşı olarak kabul edilmektedir.

Ateşböceği algoritması, doğal olaylardan ilham alınarak tasarlanmış bir optimizasyon algoritmasıdır. Bu algoritma, ateşböceklerin ışık saçma ve karşılıklı etkileşimleri ile çiftleşme davranışlarına dayanır.

<span class="mw-page-title-main">Yapay hayal gücü</span>

Yapay hayal gücü, tahminler, icatlar veya bilinçli deneyimler yaratmak için gerçek veya olası kurgu modelleri üreten, simüle eden ve kolaylatıran yapay genel zekâ'nın bir alt bileşenidir.