Merkezilik İndeksi Algoritmaları – Bilgisayar Bilimleri Ödevleri – Bilgisayar Bilimleri Ödev Hazırlatma – Bilgisayar Bilimleri Alanında Tez Yazdırma – Bilgisayar Bilimleri Ödev Yaptırma Fiyatları
Merkezilik İndeksi Algoritmaları
Daha önce belirtildiği gibi, çoğu merkezilik indeksi, tanımlarını doğrudan takip ederek oldukça hızlı bir şekilde hesaplanabilir. Bununla birlikte, bu basit yaklaşım üzerinde iyileştirmeler mümkündür. Bu bölüm, böyle bir iyileştirme için iki algoritmik fikir üzerinde durmaktadır.
Aradalık Merkeziliği
Bir v ∈ V tepe noktasının arasındalık merkeziliğinin tanımını hatırlayın: σst, s ve t köşeleri arasındaki en kısa yolların sayısıdır ve σst(v) v köşesinden geçen yolların sayısıdır. cB(‘yi hesaplamak için basit bir fikir) v) tüm v ∈ için V aşağıdaki gibidir.
Tüm köşe çiftleri arasındaki en kısa yolların uzunluğu ve sayısını içeren ilk hesaplama tabloları. Ardından, her bir v köşesi için, tüm olası s ve t çiftlerini göz önünde bulundurun, v’den geçen en kısa s-t-yollarının kesirini belirlemek için tabloları kullanın ve v’nin arasındalık merkeziliğini elde etmek için bu kesirleri toplayın.
İlk adımda en kısa yolların sayısını hesaplamak için Dijkstra’nın algoritması aşağıdaki gibi ayarlanabilir. Yalnızca ve ancak d(s, t) = d(s, v) + d(v, t) ise v köşesinin iki s ve t köşesi arasındaki en kısa yol üzerinde olduğunu gözlemleyin. Öncül köşeleri öncül kümeler pred(s, v) ile değiştiririz ve d(s, t) = d(s, v) + d(v, t) olan bir w ∈ N(v) köşesi her tarandığında , bu tepe noktası önceki pred(s, v) kümesine eklenir.
Tüm v ∈ N(s) için pred(s,v) = s ayarını yaparak, bir kaynak tepe noktası s ile diğer tüm köşeler arasındaki en kısa yolların sayısını hesaplayabiliriz. Bu ayarlama, ağırlıksız grafikler için BFS’nin yanı sıra Dijkstra’nın algoritmasına kolayca dahil edilebilir.
İkinci adımda ise, d(s, t) = d(s, v) + d(v, t) ise v tepe noktası en kısa st-yolu üzerindedir. Durum buysa, v’yi kullanan en kısa st-yollarının sayısı σst(v) = σsv · σvt olarak hesaplanır. Bu nedenle, cB(v) hesaplaması, tüm köşeler s ̸= v ̸= t üzerindeki toplamdan dolayı, v köşesi başına O(n2) zaman gerektirir ve toplamda O(n3) zamanı verir. Bu ikinci adım, uzunluk hesaplamasında ve en kısa yolların sayısında baskındır. Bu nedenle, arasındalık merkeziliğini hesaplamak için basit fikir, O(n3)’lük bir genel çalışma süresine sahiptir.
Ağırlıklı grafikler için O(nm + n2 log n) süresinde ve ağırlıksız grafikler için O(nm) süresinde bir grafikteki tüm köşelerin arasındalık merkeziliğini hesaplayan özel bir algoritma açıklamaktadır. Bunun temelde basit fikrin ilk adımındaki n SSSP hesaplamaları için zaman karmaşıklığına karşılık geldiğine dikkat edin. Bu arasındalık algoritmasını aşağıda açıklıyoruz.
Bir v ara köşesi üzerindeki bir s, t ∈ V tepe çiftinin çift bağımlılığı δst(v) = σst(v)/σst olarak tanımlanır ve bir kaynak tepe noktası s ∈ V’nin avertexv∈V üzerindeki bağımlılığı şu şekilde tanımlanır.
Sosyal ağ analizi nasıl yapılır
Sosyal Ağ Analizi
Merkezilik Ne Demek
Sosyal ağ analizi Nedir
İlk olarak, değişkenleri en kısa yol sayısı ve bağımlılık için aşağıdaki gibi genişletin. σst(v,e)’yi hem v ∈ V tepe noktasını hem de e ∈ E kenarını içeren s’den t’ye en kısa yolların sayısı olarak tanımlayın. v ve δst(v, e) = σst(v, e)/σst olarak bir e kenarı vardır.
v ∈ pred(s, w) olan bir w tepe noktasını ele alalım. s’den w’ye σsw en kısa yollar vardır, bunların σsv’si s’den v’ye gider ve sonra {v,w} kenarını kullanır. Böylece, bir t tepe noktası verildiğinde, w kullanılarak s’den t ̸= w’ye en kısa yolların σst(w) sayısının σsv/σsw kesri de {v, w} kenarını kullanır. s ve t’nin v ve {v, w} üzerindeki çift bağımlılığı için bu verir.
Arasındalık merkezilik algoritması şimdi aşağıdaki gibi ifade edilir. İlk olarak, her s ∈ V için bir tane olmak üzere n en kısa yol ağacını hesaplayın. Bu hesaplamalar sırasında, pred(s, v) öncül kümelerini de koruyun. İkinci olarak, bazı s ∈ V , en kısa yol ağacı ve öncül kümelerini alın ve bağımlılık ilişkilerini kullanarak diğer tüm v ∈ V için bağımlılıkları δs•(v) hesaplayın.
Köşe s için, bağımlılıklar, köşeleri s’ye olan mesafelerinin artmayan sırasına göre geçerek hesaplanabilir. Başka bir deyişle, en kısa yollar ağacının yapraklarından başlayın, s’ye doğru geriye doğru çalışın ve ardından bir sonraki s tepe noktasına ilerleyin.
Son olarak vertex v’nin merkeziyet değerini hesaplamak için, n farklı SSSP hesaplaması sırasında hesaplanan tüm bağımlılık değerlerini toplamamız yeterlidir. Ortaya çıkan O(n2) alan kullanımı, bağımlılık değerlerinin her tepe noktası için “çalışan merkezilik puanına” hemen eklenmesiyle önlenebilir.
Bu algoritma, her v ∈ V köşesi için arasındalık merkeziliğini hesaplar ve her v ∈ V için bir en kısa yol ağacının hesaplanmasını gerektirir. Ayrıca, köşe ve kenar sayısında bir depolama doğrusalı gerektirir.
Tüm v ∈ V’ler için arasındalık merkeziliği cB(v), ağırlıklı grafikler için O(nm + n2 log n) süresinde ve ağırlıksız grafikler için O(nm) süresinde hesaplanabilir. Gerekli depolama alanı O(n + m)’dir.
Yakınlık merkeziliği, grafik merkeziliği ve stres merkeziliği gibi diğer en kısa yola dayalı merkezilik endeksleri, benzer en kısa yollar ağaç hesaplamaları ve ardından yinelemeli bağımlılık hesaplamaları ile hesaplanabilir.
Kısayol Değerleri
Başka bir algoritmik görev, tanıtıldığı gibi yönlendirilmiş bir G = (V,E) grafiğinin tüm kenarları için kısayol değerini hesaplamaktır. Daha kesin olarak görev, yönlendirilmiş her e = (u, v) ∈ E kenarı için Ge = (V, E \ {e})’de u tepe noktasından v tepe noktasına en kısa yol mesafesini hesaplamaktır. e kenarı için kısayol değeri e grafikten çıkarılırsa en kısa yol uzunluğundaki (negatif olmayan mesafeler için mutlak veya göreli) maksimum artış olarak tanımlanan kenarlar için canlılık temelli bir merkezilik ölçüsüdür.
Tüm kenarlar için kısayol değerleri, m = |E| bir SSSP yordamına çağrılar. Bu bölümde, yalnızca n = |V | ile tüm kenarlar için kısayol değerlerini hesaplayan bir algoritma açıklanmaktadır. asimptotik olarak bir SSSP hesaplaması kadar verimli olan bir rutini çağırır. Bildiğimiz kadarıyla bu, Brandes’in bir fikrine dayanan bu algoritmanın ilk ayrıntılı açıklamasıdır.
Yönlendirilmiş grafik G’nin hiçbir negatif döngü içermediğini varsayıyoruz, öyle ki d(i,j) tüm i ve j köşeleri için iyi tanımlanmış. Açıklamayı basitleştirmek için, grafiğin paralel kenarlar içermediğini, öyle ki bir kenarın uç noktaları tarafından tanımlandığını varsayıyoruz.