Bir projenin bir parçası olarak baktığımda (çok genel) bir sorun var: bu sorunun bir çeşidi iki köşeli ve tek kenarı olan grafiklerde bile NP-zorlu kalır ve farklı bir varyant ağaçlarda NP-zorudur. İlk değişkenin NP sertliği açıkça grafik biçiminden kaynaklanmadığından ikincisi muhtemelen daha ilginçtir.
SCG=(V,E)S⊂VC⊂VS∩C=∅s∈S|s|Ff∈F|f|e∈EteR⊆C×F(c,f)∈Rcf
s∈SAs∑f∈As|f|≤|s|PrGr=(c,f)∈Rcsf∈AseDer=(c,f)∈DePre∑(c,f)∈De|f|≤te
Tüm indirmelerin yönlendirilmesini istemiyorsanız, bunun yerine yönlendirilen indirilenlerin dosya boyutlarının toplamını en üst düzeye çıkarmayı deniyorsanız, bu soruna ilişkin alt küme toplamını kolayca azaltabilirsiniz: çok fazla alan içeren tek bir sunucunuz varsa, subset sum örneğinin hedef değerine eşit kapasiteye sahip bir kenarı olan sunucuya bağlı tek bir istemci ve subset sum örneğindeki her tam sayı için eşit boyutta bir dosya oluşturursunuz; müşteri daha sonra tüm bu dosyaları indirmek ister.
Bu soru için çok daha ilginç bir varyasyon: Kapasitesi aşılmış kenar sayısını en aza indirmeye çalıştığınız durumdur - belki de üzerinde çalıştığımız ağ transatlantik internet kablolarını modellemek ve kabloyu değiştirmek çok pahalıya mal olur. Faktör iki yükseltme daha hızlı ve faktör üç daha hızlı yükseltme ihmal edilebilir. Ayrıca, sunuculara dosya yerleşimlerinin zaten verildiğini ve değiştirilemediğini söylüyoruz, bu nedenle yalnızca yönlendirme sorunlarına bakıyoruz.
US⊆P(U)u∈U
s∈Su∈su
Buradaki fikir, istemcinin tüm sunucu kümeleri için benzersiz olan dosyalara ihtiyaç duymasıdır, bu yüzden istemciyi sunucu kümelerine bağlayan kenarlar zaten kapasiteleri sınırındadır (kapasiteleri 1, dosyalar 1 boyutundadır). Müşteri, evrenin herhangi bir öğesini herhangi bir kümeden indirirse, o kümeye bağlanan kenar aşırı yüklenir. Zira sadece sayıyıAşırı yüklerin (kapasitelerin ne kadarını aşmamamızla değil), müşteri, o sunucu kümesinde barındırılan evrenin elementlerinin geri kalanını (yani ilgili alt kümenin geri kalanlarını) ceza almadan indirebilir. Bu nedenle, seçilen alt kümeye karşılık gelir. Müşteri, evrendeki tüm dosyaları bir kez indirmek istiyor, bu yüzden evren gerçekten ele alınacak ve aşırı yüklü kenar sayısını en aza indirmek için seçilen alt kümelerin sayısını en aza indirmemiz gerekiyor.
Yukarıdaki konstrüksiyonun bir ağaç grafiği verdiğine dikkat edin, bu yüzden ağaçlarda NP-sert problemine bir örnek.