Bilgisayar Kavramlarıwww.bilgisayarkavramlari.com |
UAYRI!: Bu yazıda hatalar bulunmaktadır (Uğur Bey’e teşekkürler). Bu yazıda anlatılan algoritma verilen örnekteki özel olarak sıralanmış kenarlar için doğru çalışmakta ancak farklı durumlarda hata yapabilmektedir. Bellman-Ford algoritmasının tam ve doğru anlatımı için http://www.bilgisayarkavramlari.com/2010/08/05/bellman-ford-algoritmasi-2/ adresindeki yazıyı okuyabilirsiniz. Yazan : Şadi Evren ŞEKER Bu algoritmanın amacı, bir şekil (graph) üzerindeki, bir kaynaktan (source) bir hedefe(target veya [...]
Yazan : Şadi Evren ŞEKER Bu algoritmanın amacı, literatürde azami akış ( maximum flow ) olarak geçen ve düğümler (nodes) arasında akış kapasiteleri belirli bir şekildeki (graph) bir başlangıçtan bir hedefe en fazla akışın sağlandığı problemleri çözmektir. Azami akış (maximum flow) problemini örneğin şehirler arasında bağlı boru hattına veya tedarik zincirine benzetebiliriz. Örneğin aşağıdaki şekli [...]
Yazan : Şadi Evren ŞEKER Bu algoritmanın amacı, literatürde azami akış ( maximum flow ) olarak geçen ve düğümler (nodes) arasında akış kapasiteleri belirli bir şekildeki (graph) bir başlangıçtan bir hedefe en fazla akışın sağlandığı problemleri çözmektir. Azami akış (maximum flow) problemini örneğin şehirler arasında bağlı boru hattına veya tedarik zincirine benzetebiliriz. Örneğin aşağıdaki şekli [...]
Yazan : Şadi Evren ŞEKER Bu yazının amacı genel amaçlı şekillerde (graphs) sığ öncelikli aramayı (breadth first search , BFS) açıklamaktır. Bu yazı, ağaçlardaki sığ öncelikli arama ile karıştırılmamalıdır. Ağaçlar (trees) bilindiği üzere yönlü dairesel olmayan şekillerdir (directed acyclic graph) dolayısıyla ağaçlar üzerinde bu yazıda anlatılan sıra (queue) yapısına ihtiyaç duyulmaz. Sığ öncelikli arama bir [...]
Yazan : Şadi Evren ŞEKER Bilgisayar bilimlerinde kullanılan ve algoritmayı literatüre kazandıran kişinin ismini taşıyan dijkstra algoritması, verilen bir şekilde (graph) en kısa yolu bulmak için kullanılır. Bu algoritmanın çalışmasını örnek bir şekil( graph ) üzerinden göstermeye çalışalım. Bu gösterimin ardından Dijkstra algoritmasının başarısını ve zafiyetlerini tartışabiliriz. Get the Flash Player to see this content. [...]
Yazan : Şadi Evren ŞEKER Bilgisayar bilimleri de dahil olmak üzere çok sayıdaki bilim ve mühendislik alanında kullanılan bir modelleme biçimidir. Şekilde (graph) kullanılan düğümler (nodes) birer kümeyi ifade etmektedir. Çizimdeki geçişler (transitions) bir kümeden diğer kümeye bir eleman ile geçilebilme durumunu ifade eder. Buna göre bir kümeye eleman eklenmesi veya eleman çıkarılması bir adımlık [...]
Yazan : Şadi Evren ŞEKER Lütfen dikkat: Özellikle 147 adet yazımı kopyalayan ve hiçbir mailime cevap vermeyen is34.net sitesi yöneticisi başta olmak üzere, yazılarımı kopyalayan site yöneticileri. Emek ve vakit harcayarak ürettiğim yazılarımı lütfen kopyalamayınız. Şayet bu tip yazıları üreten insanların emeğini basit bir iki tıklama ile kopyalayarak web yayıncılığı yaptığınızı düşünüyorsanız, ve telif hakları [...]
Yazan: Şadi Evren ŞEKER Lütfen dikkat: Özellikle 147 adet yazımı kopyalayan ve hiçbir mailime cevap vermeyen is34.net sitesi yöneticisi başta olmak üzere, yazılarımı kopyalayan site yöneticileri. Emek ve vakit harcayarak ürettiğim yazılarımı lütfen kopyalamayınız. Şayet bu tip yazıları üreten insanların emeğini basit bir iki tıklama ile kopyalayarak web yayıncılığı yaptığınızı düşünüyorsanız, ve telif hakları yasasına [...]
Yazan : Şadi Evren ŞEKER Yansıma, bilgisayar bilimlerinin de içerisinde bulunduğu bir grup bilim ve mühendislik alanında kullanılan mantıksa gösterimler ve muntazam diller (Formal languages) ve ayrıca bu dillerin dayandığı matematik ve mantıksal gösterimler sırasında kullanılan temel özelliktir. Yansıma özelliği bir bağıntı (relation), matris ya da şekilde (graph) üzerinde bir işlemin geri gelebilmesi, yansıyabilmesi veya [...]
Yazan : Şadi Evren ŞEKER Bilgisayar bilimlerinde kullanılan veri saklama ve veriye kolay ulaşma yöntemlerinden birisi de ağaçlardır. Çok farklı şekillerde ağaçların kodlanması ve modellenmesi mümkündür. Bu özel ağaçlardan birisi de iç yol indirgeme ağaçlarıdır (internal path reduction tree, IPR Tree). Bir ipr ağacı kısaca bir ikili ağaçtır (binary tree). Ayrıca IPR ağaçlarının dengeli olması [...]
Yazan : Şadi Evren ŞEKER Bilgisayar bilimlerinde kullanılan arama algoritmalarından birisidir. Bu algoritma esas olarak derin öncelikli arama (depth first search DFS) ile aynı çalışmaktadır ancak tek farkı arama işlemi sırasında özellikle dairelere (cycles) takılma ihtimaline karşı sınır önlemi alınmış olmasıdır. Örneğin aşağıdaki şekli ele alalım: Yukarıdaki şekil tanım itibariyle bir ağaç özelliği göstermektedir. Yani [...]
Yazan : Şadi Evren ŞEKER Bilgisayar bilimlerinde, çeşitli veri yapılarının (data structures) üzerinde bir bilginin aranması sırasına kullanılan algoritmaların genel ismidir. Örneğin bir dosyada bir kelimenin aranması, bir ağaç yapısında (tree) bir düğümün (node) aranması veya bir dizi (array) üzerinde bir verinin aranması gibi durumlar bu algoritmaların çalışma alanlarına girer. Yapısal olarak arama algoritmalarını iki [...]
Yazan : Şadi Evren ŞEKER Bilgisayar bilimlerinde arama algoritmaları için kullanılan bir terimdir. Algoritma ağırlıklı graflar (weighted graphs) üzerinde çalışmaktadır. Ağaçlar da bir graf örneği olduğu için algoritmanın ağaçlar üzerinde çalışması da mümkündür. Algoritma basitçe aşağıdaki şekilde tanımlanabilir: Kök düğümden başla (root node) En düşük maliyetli komşuya git Şayet aranan düğüm bulunduysa bit, bulunmadıysa 2. [...]
Yazan : Şadi Evren ŞEKER Bilgisayar bilimleri de dahil olmak üzere pek çok bilim ve mühendislik alanının ortak çalışma konularından birisi olan graf teorisindeki (graph theory) bir hesaplama veya gösterim algoritmasıdır. Ağaç (tree) yapısındaki graflar için yani dairesel olmayan graflar (acyclic graphs) için kullanılabilir. Daha basit bir ifade ile şeklin (graph) yaprakları (leaf) bulunmalıdır. Prüfer [...]
Yazan : Şadi Evren ŞEKER Bilgisayar bilimlerinin de arasında bulunduğu pek çok bilim ve mühendislik alanında kullanılan graf teorisinde kullanılan bir teoremdir. Bu teorem kirchoff matrisi veya laplas matrisi (laplacian matrix) ismi verilen matrisler ile birlikte kullanıldığında bir grafta bulunan asgari tarama ağacı (minimum spanning tree) sayısını verir. Bilindiği (veya ilgili yazıdan okunabileceği) üzere laplas [...]
Yazan : Şadi Evren ŞEKER Bilgisayar bilimlerinin de içinde bulunduğu pekçok bilim ve mühendislik alanında kullanılan graf teorisi (graph theory) açısından önemli bir matristir. Laplas matrisinin özelliği her düğümün derecesini (node order) ve diğer düğümlerle olan komşuluk ilişkisini (adjacency list) tutmasıdır. Laplas matrisine giriş matrisi (admittance matrix) veya Kirchhoff matirisi ( Kirchhoff matrix ) isimleri [...]
Yazan : Şadi Evren ŞEKER Graf teorisinde (graph theory) bir grafın temel unsurlarından olan düğümlerin (nodes) giren veya çıkan kenar (edge) sayısını verir. Tanım olarak yönsüz graflar (undirected graphs) ve yönlü graflar (directed graphs) için iki ayrı tanım yapılabilir. Yönsüz graflarda bir düğümün derecesi Yönsüz graflarda bir düğümün derecesi, doğrudan düğüme bağlı komşu düğüm sayısına [...]
Yazan : Şadi Evren ŞEKER İki şeklin birbirinden farklı ancak denk olması durumudur. Bilgisayar bilimleri de dahil olmak üzere pek çok bilim ve mühendislik alanında kullanılan graf teorisine (graph theory) göre iki şekil birbirinden farklı çizilmiş ancak işlev ve değer olarak aynı olabilir. Tanım ve örnek Örneğin aşağıdaki iki şekli ele alalım: Yukarıda verilen graftaki [...]
Yazan : Şadi Evren ŞEKER Bilgisayar mühendisliği de dahil olmak üzere pekçok bilim ve mühendislik alanında kullanılan graf teorisindeki özel bir yol (path) şeklidir. Bu yolun özelliği her kenardan (edge) bir kere (en az ve en çok) geçen yolu bulmaktır. İçerik Teorinin tarihi çıkışı Teorinin tanımı Öyler yollarının özellikleri Bir graftaki farklı öyler yollarının sayısı [...]
Yazan : Şadi Evren ŞEKER Bilgisayar bilimleri de dahil olmak üzere pekçok bilim ve mühendislik alanında kullanılan markof modelleri aslında graf teorisinin (graph theory) bir uygulamasıdır. Basitçe düğümleri (nodes) durumlardan oluşan ve bu durumlar arasında istatistiksel geçişi modelleyen kenarları (edges) bulunan graflardır. Markof modellerine (markof zinciri (markov chain) ismi de kullanılmaktadır) göre bir durum belirli [...]
Yazan : Şadi Evren ŞEKER Bilgisayar bilimlerinde çeşitli amaçlar için kullanılan eşleştirme problemlerinin genel ismidir. Genellikle bir arz ile bir talebin eşleştirilmesi şeklinde olur. Örneğin bilgisayarın kaynaklarının, bu kaynakları talep eden işlemler ile eşleştirilmesi gibi. Ya da gerçek hayattan bir çalışanın uygun iş ile eşleştirilmesi veya evlilik problemleri veya iş akış diyagramları (işin doğru kaynak [...]
Yazan : Şadi Evren ŞEKER Bilgisayar bilimlerinde özellikle birbiri ile eş zamanda çalışan işlerin (concurrent jobs) modellenmesi ve çözülmesinde kullanılan özel grafiklerdir. Bu graflara Yer / Geçiş Ağları (Place / Transition Networks veya P/T Nets) ismi de verilir. İçerik 1. Örnek Petri Ağları 2. Dairesel Petri Ağları 3. Paralel Petri Ağları 4. Koşullu Petri Ağları [...]
Yazan : Şadi Evren ŞEKER İçerik 1. İki parçalı graflara örnekler 2. İki parçalı grafın test edilmesi 3. İki parçalı grafların kullanım alanları 4. İki parçalı grafların özellikleri Bilgisayar bilimlerinde veri modellemede sıkça kullanılan grafların (graph) özel bir durumudur. Buna göre bir graf’ı oluşturan düğümleri iki farklı kümeye ayırabiliyorsak ve bu iki kümenin elemanlarından küme [...]
Yazan : Şadi Evren ŞEKER Bilgisayar mühendisliğinde, yapay zeka konusunda kullanılan bir karar ağacı türüdür. Aslında minimax ağaçları bilgisayar bilimlerine işletme bilimindeki oyun teorisinden (game theory) girmiştir. Temel olarak sıfır toplamlı bir oyunda (zero sum game), yani birisinin kaybının başka birisinin kazancı olduğu (veya tam tersi) oyunlarda karar vermek için kullanılışlıdırlar. Örneğin çoğu masa oyunu [...]
Yazan : Şadi Evren ŞEKER Bilgisayar bilimlerinde özlelikle graf teorisinde (graph theory) kullanılan ve bir döngüyü (cycle) algılamaya yarayan algoritmadır. (cycle detection). Basitçe tavşan ve kaplumbağa algoritmasından (hare and tortoise algoritm) esinlenmiştir. Floyd algoritması olarak da isimlendirilen tavşan ve kaplumbağa algoritmasından farklı olarak tavşan, kaplumbağanın iki misli değil 2 üzeri adımla hareket etmektedir. Yani kaplumbağa, [...]