Hesaplama teorisi (Theory of computation) bilgisayar biliminin bir problemin belirli bir algoritma ve hesap modeli ile çözülüp çözülemeyeceğini veya çözülürse ne kadar hızlı ve verimli bir şekilde çözüleceğini inceleyen bilim dalıdır.
Başlıca 2 dala ayrılır:
Karmaşıklık Teorisi (Complexity Theory) ve
Hesaplanabilirlik Teorisi (Computability Theory).
Karmaşıklık teorisi genelde karar verme problemleri (decision problems) ile uğraşır. Karar verme problemi sorulan bir soruya evet ya da hayır olarak cevap verebilme ile ilgilidir. Mesela, verilen herhangi bir sayı için “asal mı” (IS-PRIME) sorusuna evet ya da hayır olarak cevap verebilme problemi bir karar verme problemidir. Bu tip problemler özellikle incelenmektedir çünkü herhangi bir problem bir karar verme problemine indirgenebilir ve bu sayede çözüme ulaştırılabilir. Örneğin; “çarpanı var mı” (HAS-FACTOR) problemi bir sayının yine verilen bir sayıdan küçük asal çarpanı olup olmadığı sorusuna cevap verir. Bu problemi çözebilirsek verilen herhangi bir sayının asal çarpanlarını bulma sorununa da aynı zamanda çözmüş oluruz.
Hesaplama karmaşıklığı teorisi (computational complexity theory) bilgisayar biliminde hesaplama teorisinin bir alt dalı olarak sınıflandırılır. Bir algoritmanın bir problem üzerinde çalıştırılması durumunda ne kadar kaynağa gereksinim olduğunu inceleyen bilim dalıdır. Bu teori, bir girdinin büyüklüğü artırıldığında buna bağlı olarak algoritmanın çalışma zamanının ve hafıza ihtiyaçlarının ne kadar arttığını araştırır. Algoritmaların karmaşıklığı genelde zamanla bağlantılı olarak ölçülür ve büyük O (big O notation) ile ifade edilir. Örneğin O(n), O(n2) sırasıyla n büyüklüğündeki bir veri girildiğinde bu algoritmanın yavaşlığının o girdinin büyüklüğüyle doğru orantılı olarak arttığını gösterirken, n2 olan ise bu girdinin büyüklüğünün karesiyle doğru orantılı olarak değiştiğini gösterir.
Karmaşıklık teorisinde problemler çözülebildikleri en hızlı karmaşıklığa göre karmaşıklık sınıflarına (computational complexity) ayrılırlar. Bunlardan en önemlileri
P (deterministically polynomial, deterministik polinomsal) ve
NP(non- deterministically polynomial- deterministik olmayan polinomsal)’dir.
P kategorisine giren problemler karmaşıklığı O(nk), k ∈ R ile ifade edilebilen ve deterministik Turing makinesinde polinomsal zamanda çözülebilen problemlerdir. Örneğin; en büyük ortak bölen bulma ya da sıralı bir liste içinde arama yapma polinomsal zamanda çözülebilir ve bu yüzden P sınıfı problemlerdir.
NP problemler ise en büyük karmaşıklık sınıflarından birini oluşturur. Hatta P sınıfı da NP sınıfının içinde gösterilir. NP problemler deterministik olmayan Turing makinesiyle polinomsal zamanda çözülebilirler. Günümüzde deterministik olmayan bir Turing makinesi bulunmadığından NP problemler için verimli kabul edilebilecek bir algoritma bulunamamıştır. Örneğin; 2 çizgenin (graph) izomorfik olup olmadığının hesaplanması yani 2 çizgenin aynı şekli oluşturacak şekilde çizilip çizilemeyeceğinin hesaplanması polinomsal zamanda yapılamamaktadır.
NP sınıfına dâhil olan problemlerin bazıları o kadar zordur ki bunlara polinomsal zaman bulmak teşebbüsleri çok uzun uğraşlardan sonra sonuçsuz kalmıştır. Bu sınıfa NP-Complete adı verilir. Bir problemin NP-Complete (NPC) sınıfında olduğu kabul edilmişse o problem için polinomsal zaman bulunmasının çok zor olduğu anlaşılabilir.
Yıllardan beri NP sınıfı içindeki problemler çözülmeye çalışılmıştır ancak çok azı dışında bu başarılamamıştır. İlerlemeler ise umut vericidir. NPC problemlerin herhangi biri polinomsal zamanda çözülebilirse, NP sınıfındaki tüm problemlerin de polinomsal zamanda çözülebileceğini ispatlayan bir makale yayınlanmış ve tabi ki bununla da bilgisayar biliminde çok büyük bir devrim gerçekleşmiştir. 1971 yılında bir bilgisayar bilimci olan Stephen Cook “The complexity of theorem proving procedures” adlı bilimsel yazısında bugün Cook teoremi olarak bilinen bir teoremi ispatlamıştır. Bu teoremde “Mantıksal Sağlanabilirlik” probleminin (Boolean satisfiability Problem) NP-Complete olduğunu göstermiştir. Biraz daha açıklamak gerekirse NP sınıfındaki herhangi bir problem polinomsal zamanda deterministik Turing makinesi tarafından bir mantıksal formülünün sağlanabilir olup olmadığı problemine indirgenebilir. Bu teoremin bize sağladığı en büyük yarar ise; eğer mantıksal sağlanabilirlik problemine deterministik ve polinomik bir çözüm bulunursa, NP deki tüm problemlerin de aynı şekilde çözülebileceğini ispatlamış olmasıdır. Aynı şey elbette PC olan tüm problemler için de geçerlidir. Bu sorun “P=NP?” sorunu olarak bilinir ve literatürdeki en ünlü ve en önemli problemdir. Hatta Clay Matematik Enstitüsü herhangi bir NPC problemini çözene 1 milyon $ vaat etmektedir.
Kaynak: http://e-bergi.com/y/Hesaplama-Karmasikligi
ASKON Konya’da MEVKA TeknoGirişim Girişimci-Yatırımcı Buluşmaları’na katıldım
ASKON Konya’nın MEVKA TeknoGirişim Girişimci-Yatırımcı Buluşmaları kapsamında 23 Ağustos 2023 Çarşamba günü ASKON Konya şubesinde>>>
Ağu
Matlab’da matrisin tüm elemanlarını belirli bir sayıdan nasıl çıkarırız?
Elimizde doğruluk oranlarının olduğu bir k matrisi olduğu varsayalım, bu matris içerisindeki tüm değerleri 1>>>
Şub
Matlab’ta iç içe döngüyle matris gezerek istediğimiz veriyi nasıl buluruz?
Başlık tam ifade eder mi bilmiyorum ama benim ihtiyacım olan şey 10 sütun, 1593 satıra>>>
Şub
A Review on Deep Learning-Based Methods Developed for Lung Cancer Diagnosis
Yüksek Lisans öğrencilerimden Türkan Beyza KARA’nın sunmuş olduğu “A Review on Deep Learning-Based Methods Developed>>>
Oca
İlk yabancı yazarlı ortak makalem yayınlandı
Birbirimizi hiç görmeden ve sesli olarak da hiç konuşmadan e-posta üzerinden tanışıp ortak bir çalışma>>>
4 Comments
Eki
Konya’da göz lazer ameliyatı oldum
25 yıldır takmakta olduğum ve kendisinden ayrılırken 6,5 numara olan gözlüğüme Konya’da göz lazer ameliyatımı>>>
Ağu
Tek kelimeyle beni nasıl tanımladılar?
YouTube üzerinden yapmış olduğum bir yoruma gelen yanıtta “…dürüst olun…” içeriğini görünce aklıma geçtiğimiz günlerde>>>
3 Comments
Ağu
Konya Akıllı Şehir HACKATHON’unda 3.olduk
Kısaca daha önceki yazımda bahsettiğim Konya Akıllı Şehir HACKATHON’unda 3.olduk. Selçuk Üniversitesi Teknoloji Fakültesi Bilgisayar>>>
1 Comment
May
Sentius ekibi olarak, Akıllı Şehir HACKATHON’una katıldık
Konya Akıllı Şehir HACKATHON’unda 3.olduk Konya Bilim Merkezi ile GDG Konya’nın düzenlediği Akıllı Şehir HACKATHON’una>>>
1 Comment
May
BİLMÖK 2022 için yazılmış gecikmiş bir yazı :)
Türkiye’nin en büyük öğrenci kongresi BİLMÖK 21-23 Mayıs 2022 günlerinde Konya’da Konya Teknik Üniversitesi’nin organizasyonuyla>>>
May
Genç Bakış Gazetesi’nden Beyzanur Polat’ın yaptığı haber…
Genç Bakış Gazetesi’nden Beyzanur Polat’ın yaptığı haber…>>>
Kas
Binary Sooty Tern Optimization Algorithms for solving Wind Turbine Placement Problem
Binary Sooty Tern Optimization Algorithms for solving Wind Turbine Placement Problem İndirmek için tıklayınız.>>>
Eyl
Konya Model Fabrika’yı Ziyaretim ve Konya Dijital Dönüşüm
“konya dijital dönüşüm” kelimesini Google üzerinden arattığım zaman Konya Model Fabrika‘yı keşfettim. 5 Ağustos 2021>>>
Ağu
Otomatlar, Biçimsel Diller ve Turing Makineleri – Dr. Emre Sermutlu – Cinius Yayınları
2020-2021 bahar yarıyılında Otomata Teorisi ve Biçimsel Diller dersini verirken kullanmam için Selçuk Üniversitesi Teknoloji>>>
Mar
4-6 MART 2021 ÇEVRİMİÇİ TÜBİTAK-2237-B PROJE EĞİTİMİ ETKİNLİĞİ KTÜ – TRABZON
Alanında dünyada öncü Prof. Dr. Yener EYÜBOĞLU, Prof. Dr. Asım KADIOĞLU, Prof. Dr. Nurettin YAYLI,>>>
Mar
ARDEB 1001 – 2020 Sonuçlarını Değerlendirme ve Yenilikler Toplantısı
>>>
Şub
2021 yılı içerisinde değerlendirilebilecek konferanslar
GLOBAL CONFERENCE on ENGINEERING RESEARCH online 2-5 June 2021 Abstract or Full Paper Submission: 2>>>
Şub
Sayfamda paylaştığım bütün Karikatürler silinmiştir
İsimsiz bir uyarı yorumuyla araştırdığım vakit gördüm ki bazı karikatüristler blog sayfalarında karikatür paylaşanlara dava>>>
Oca
MATLAB – Error: Functions cannot be indexed using {} or . indexing.
data = get(z9).OutputData{1}; satırında aşağıdaki şekilde hata vermekteydi. Error: Functions cannot be indexed using {}>>>
Oca
“ERASMUS+ Yüksek Öğretim” konulu seminer notları
“ERASMUS + Yüksek Öğretim” konulu seminer notları Dr. Öğretim Üyesi Kemal TÜTÜNCÜ hocam tarafından sunulan>>>
Oca