İçeriğe atla

Sırt çantası problemi

Sırt çantası problemi : Elde bulunan çeşitli birim ağırlıklı ve birim değerli kitapların en değerli olanları, en fazla 15kg taşıyabilen bir sırt çantasına yerleştirilmeli.

Sırt çantası problemi (İngilizce: "knapsack problem") bir klasik yöneylem araştırması ve matematiksel olarak "kombinatorik optimizasyon" problemidir. Çözüm algoritması bakımından sırt çantası problemi en ünlü NP-hard problemleri arasındadır.

Tanımlanma

"Sırt çantası problemi"nin tanımlanması için şu notasyon kullanılmaktadır: İsimleri 1 ile n arasında sayı ile ifade edilen n değişik madde bulunur. Her bir madde i için değerinin vi ve ağırlığının wi olduğu bilinmektedir. Genel olarak her bir değer ve her bir ağırlık negatif olamazlar. Çanta içinde taşınabilecek tüm maddelerin toplam ağırlığının en çok W olup, bunun bir üst sınır olup aşılamayacağı bilinir.

Bu problem tipi değişik sınırlama koşullarına göre değişik problem tipi şeklini alabilir. Bunlardan bazıları şöyle tanımlanabilir:

  • "0-1 sırt çantası problemi": "Sırt çantası problem" tipleri arasında en iyi bilinen problem "0-1 sırt çantası problemi"dır. Bu tip problemde mevcut n maddeden her biri ya 1 birim olarak çantaya konulur yahut çantaya konulmaz, yani 0 birim çantaya koyulur. Her bir madde tek birim olarak çantaya konulur ya koyulmaz. Çantaya konulup konulmama, sadece 1 ve 0 değerleri alan "çantada mevcut olup olmama" adı verilebilen iki kategorili değer alan bir karar değişkeni olur. Böylece karar değiskeni olan xi ya 0 ya da 1 değeri alan iki kategorili "tam sayı değişkeni" olur. Matematik formülasyon şöyle verilir:
maksimumu bulunacak objektif fonksiyon:
sınırlamalar:
  • "Sınırlı sırt çantası problemi": Bu tür problemde sırt çantası içine her maddeden birden fazla yerleştirilebilmek imkânı olduğu kabul edilir. Ama her bir madde için mevcut madde adedi sınırlıdır; i maddesi için mevcut sayı olan , 0 ile tam sayı olan arasında olabilir. Bu tür "sınırlı sırt çantası problemi"nin matematik formülasyonu şöyledir: .
maksimum bulunacak objektif fonksiyon:
sınırlamalar:
  • "Sınırsız sırt çantası problemi": Bu tür problemde her madde sıfırdan sınırsız sayıya kadar sırt çantası içine yerleştirilebilir. i maddesi için sırt çantasına yerleştirilen sayı, yani , 0 ile tam sayı olan +∞ arasında olabilir.
  • İlgi çeken başka iki özel sırt-çantası problemi şu özellikleri ile tanımlanır:
    • Bu bir karar verme problemidir.
    • Bu problem için karar değişkeni sadece 0-1 değerleri alabilir.
    • Her bir madde için ağırlık o maddenin değerine eşittir; yani .

Bu şekildeki özel problem şu değişik şekilde de ifade edilebilir: bir negatif olmayan sayılar seti verilmiş ise, bunun herhangi bir altsetinin toplamı W toplam ağırlık/değer sınırına eşit olabilir mi?

Buna benzer diğer bir özel problem, eğer her bir madde için negatif olan ağırlık mümkünse (yani −∞ < wi < +∞ ise) ve toplam ağırlık sınırı en çok W sıfıra eşit ise (yani W=0 olursa) ortaya çıkar. Problem şu olur: bir tam sayılar veri seti verilirse, bunun herhangi bir alt-seti tam olarak 0a eşit olabilir mi? Buna "alt-set toplamı problemi" adı verilir. Kriptografi alanında sırt-çantası problemi" ismi sadece bu çok özel "alt-set toplam∞ problemi" olarak görülür.

Eğer tek bir değil ama birden fazla sırt-çantası yüklemek mümkün ise, bu yeni tip probleme "kutu paketleme problemi" adı verilir.

Çözüm hesaplanmanın karmaşıklığı

Konu bilgisayar bilimi bakış açısından ele alınırsa "sırt-çantası problemi" şu nedenler dolayısıyla ilgi çekmektedir:

  • Dinamik programlama kullanarak "sözde-polinomsal zamanda" çözüm sağlayan algoritma bulunmaktadır.
  • "Sözde-polinomsal zamanda" çözümü sağlayan algoritmaları bir alt-program olarak kullanan "FPTAS yaklaşık tam polinomsal zaman kullanma" yordamı ile çözüm bulunmak imkân dahilindedir.
  • Tam olarak çözüm için problem NP-tam karakterlidir ve her türlü halde hem hatasız hem de hızlı polinomsal zamanda çözme algoritması bulmak imkânsızdır.
  • Pratikte, buna rağmen birçok halde ve bazı dağılımlardan bazı rastgele haller verileri kullanılarak pek çok sayıda problem için tam şekilde çözüm yapma için kullanma imkânı bulunmaktadır

Problemin polinomsal zamanda çözümü ispatlanabilirse P = NP savı da ispatlanmış olacaktır.

"Alt-set toplamı" versiyonu şekildeki sırt-çantası problemi, genellikle, "Karp'in 21 NP-tam problemler"inden biri olduğu bilinmektedir.


Araştırma kaynaklarında ilgi çeken bir konu sırt-çantası probleminin "zor" şekillerinin nasıl görünüş alacağını tespit etmeye çalışmak olmuştur. Bu yaklaşımla NP-tam tavırlı en-fena halleri tespit edip bunları daha kolay uygulanır şekillere koyma imkânları araştırılmıştır.[1][2]

Sırt-çantası problemlerini çözümlemek için parasız kullanılmaları imkânı olan birkaç tane algoritma yazılımı hazır bulunmaktadır. Bunlardan seçilmişleri şu listede verilir:

  • Dinamik programlama yaklaşımına dayanan algoritma kullanma:[3]
  • Dallandırma-ve-sınırlama (branch-and-bound) algoritması kullanma:[4]
  • Bu iki yaklaşımın bir melez bileşimini kullanma:[5][6][7][8]


Dipnotlar

  1. ^ Pisinger, D. 2003. Where are the hard knapsack problems? Technical Report 2003/08, Department of Computer Science, University of Copenhagen, Copenhagen, Denmark.
  2. ^ L. Caccetta, A. Kulanoot, Computational Aspects of Hard Knapsack Problems, Nonlinear Analysis 47 (2001) 5547–5558.
  3. ^ Rumen Andonov, Vincent Poirriez, Sanjay Rajopadhye (2000) Unbounded Knapsack Problem : dynamic programming revisited European Journal of Operational Research 123: 2. 168-181 http://dx.doi.org/10.1016/S0377-2217(99)00265-9
  4. ^ S. Martello, P. Toth, Knapsack Problems: Algorithms and Computer Implementation, John Wiley and Sons, 1990
  5. ^ S. Martello, D. Pisinger, P. Toth, Dynamic programming and strong bounds for the 0-1 knapsack problem, Manag. Sci., 45:414-424, 1999.
  6. ^ Vincent Poirriez, Nicola Yanev, Rumen Andonov (2009) A Hybrid Algorithm for the Unbounded Knapsack Problem Discrete Optimization http://dx.doi.org/10.1016/j.disopt.2008.09.004
  7. ^ G. Plateau, M. Elkihel, A hybrid algorithm for the 0-1 knapsack problem, Methods of Oper. Res., 49:277-293, 1985.
  8. ^ S. Martello, P. Toth, A mixture of dynamic programming and branch-and-bound for the subset-sum problem, Manag. Sci., 30:765-771

Ayrıca bakınız

  • Sırt çantası problemleri listesi
  • Paketleme problemi
  • Elbiselik kumaş kesim problemi
  • Sürekli sırt çantası problemi

Dış bağlantılar

İlgili Araştırma Makaleleri

<span class="mw-page-title-main">İntegral</span> fonksiyon eğrisinin altında kalan alan

İntegral veya tümlev, toplama işleminin sürekli bir aralıkta alınan hâlidir. Türev ile birlikte kalkülüsün temelini oluşturan iki işlemden birisidir. Kalkülüsün temel teoremi sayesinde aynı zamanda türevin ters işlemidir.

<span class="mw-page-title-main">Normal dağılım</span> sürekli olasılık dağılım ailesi

Normal dağılım, aynı zamanda Gauss dağılımı veya Gauss tipi dağılım olarak isimlendirilen, birçok alanda pratik uygulaması olan, çok önemli bir sürekli olasılık dağılım ailesidir.

<span class="mw-page-title-main">Trigonometrik fonksiyonlar</span>

Trigonometrik fonksiyonlar, matematikte bir açının işlevi olarak geçen fonksiyonlardır. Geometride üçgenleri incelerken ve periyodik olarak tekrarlanan olayları incelerken sıklıkla kullanılırlar. Genel olarak bir açısı belirli dik üçgenlerde herhangi iki kenarın oranı olarak belirtilirler, ancak birim çemberdeki belirli doğru parçalarının uzunlukları olarak da tanımlanabilirler. Daha çağdaş tanımlarda sonsuz seriler veya belirli bir türevsel denklemin çözümü olarak geçerler.

<span class="mw-page-title-main">Binom dağılımı</span>

Olasılık kuramı ve istatistik bilim kollarında, binom dağılımı n sayıda iki kategori (yani başarı/başarısızlık, evet / hayır, 1/0 vb) sonucu veren denemelere uygulanır. Araştırıcının ilgi gösterdiği kategori başarı olarak adlandırılır. Bu türlü her bir deneyde, bağımsız olarak, başarı (=evet=1) olasılığının p olduğu (ve yalnızca iki kategori sonuç mümkün olduğu için başarısızlık olasılığının 1 - p olduğu) bilinir. Bu türlü bağımsız n sayıda denemeler serisi içinde elde edilen başarı sayısının ayrık olasılık dağılımı binom dağılım olarak tanımlanır. Bir binom dağılım sadece iki parametre ile, yani n ve p ile tam olarak tanımlanır. Matematik notasyon olarak bir rassal değişken X binom dağılım gösterirse şöyle ifade edilir:

X ~ B(n,p)
<span class="mw-page-title-main">Geometrik dağılım</span>

Olasılık kuramı ve istatistik bilim dallarında geometrik dağılım şu iki şekilde ifade edilebilen ayrık olasılık dağılımıdır:

<span class="mw-page-title-main">Gamma dağılımı</span>

Olasılık kuramı ve istatistik bilim dallarında gamma dağılımı iki parametreli bir sürekli olasılık dağılımıdır. Bu parametrelerden biri ölçek parametresi θ; diğeri ise şekil parametresi k olarak anılır. Eğer k tam sayı ise, gamma dağılımı k tane üstel dağılım gösteren rassal değişkenlerin toplamını temsil eder; rassal değişkenlerin her biri nin üstel dağılımı için parametre olur.

<span class="mw-page-title-main">İki cisim problemi</span>

Klasik mekanikte iki cisim problemi sadece birbirleriyle etkileşen iki nokta parçacığın hareketini tanımlamak için kullanılır. Bir gezegen ve yörüngesinde dolanan bir uydu, bir yıldız ve yörüngesindeki bir gezegen, birbirlerinin yörüngelerinde dolanan iki yıldız ve klasik atom modelinde çekirdeğin etrafında dolanan elektron, yaygın örneklerdir.

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

Diskriminant matematik biliminde bir cebirsel kavramdır. Gerçel katsayılı ikinci derece polinom denklemlerin çözümü için kullanılır. İkinci dereceden büyük herhangi bir polinomun köklerinin bulunması için de bu kavram, köklerin toplamı için gereken ifadenin ve köklerin çarpımı için gereken ifadenin bulunması suretiyle genişletilmiştir. Bir polinom için çoklu köklerin varlığı veya yokluğu için gereken koşul da diskriminantın varlığı ve yokluğu ile bulunabilmektedir.

İstatistik bilim dalında ağırlıklı ortalama betimsel istatistik alanında, genellikle örneklem, veri dizisini özetlemek için bir merkezsel konum ölçüsüdür. En çok kullanan ağırlıklı ortalama tipi ağırlıklı aritmetik ortalamadır. Burada genel olarak bir örnekle bu kavram açıklanmaktadır. Değişik özel tipli ağırlıklar alan özel ağırlıklı aritmetik ortalamalar bulunmaktadır. Diğer ağırlıklı ortalamalar ağırlıklı geometrik ortalama ve ağırlıklı harmonik ortalamadir. Ağırlıklı ortalama kavramı ile ilişkili teorik açıklamalar son kısımda ele alınacakdır.

<span class="mw-page-title-main">Laplace denklemi</span>

Matematikte Laplace denklemi, özellikleri ilk defa Pierre-Simon Laplace tarafından çalışılmış bir kısmi diferansiyel denklemdir. Laplace denkleminin çözümleri, elektromanyetizma, astronomi ve akışkanlar dinamiği gibi birçok bilim alanında önemlidir çünkü çözümler bilhassa elektrik ve yerçekim potansiyeli ile akışkan potansiyelinin davranışını açıklar. Laplace denkleminin çözümlerinin genel teorisi aynı zamanda potansiyel teorisi olarak da bilinmektedir.

<span class="mw-page-title-main">Fourier serisi</span>

Matematikte, Fourier serileri bir periyodik fonksiyonu basit dalgalı fonksiyonların toplamına çevirir.

SAT problemi bir NP-tam sınıfı problemidir.

Bilgisayar bilimlerinde, alt küme toplamı problemi karmaşıklık kuramında ve kriptografide önemli yeri olan bir problemdir.

Katalan sayıları, kombinatorik matematikte birçok problemin çözümünde kullanılabilen özel bir sayı dizisi. Adını Belçikalı matematikçi Eugène Charles Catalan(1814-1894)’dan alan bu dizinin terimleri,

Sayı teorisinde, asal çarpanlara ayırma bir bileşik sayının, çarpıldıklarında yine aynı sayıyı verecek şekilde, bir ve kendisi dışındaki bölenlerine ayrılmasıdır.

Merkle-Hellman kripto sistemi, 1978 yılında Martin Hellman ve Ralph Merkle tarafından geliştirilen ilk açık anahtarlı kriptosistemlerden biridir. RSA'dan daha hızlı gerçekleştirilebilmesine rağmen Adi Shamir tarafından 1982'de güvensiz olduğu gösterilmiştir.

Kuantum harmonik salınıcı, klasik harmonik salınıcın benzeşiğidir. Rastgele seçilmiş potansiyeli denge noktası civarında harmonik potansiyele yakınsanabildiğinden nicem mekanğindeki en önemli model sistemlerden biridir. Dahası, nicem mekaniğinde kesin analitik çözümü olan çok az sistemden biridir.

Jacobi metodu, sayısal lineer cebirde lineer denklemlerin diyagonal olarak baskın sistemlerin çözümlerinin belirlenmesi için oluşturulmuş bir algoritmadır. Her diyagonal eleman tek tek çözülür ve yaklaşık bir değer olarak alınır. Bu aşama onlar yakınsayana kadar tekrarlanır. Bu algoritma matris köşegenleştirilmesi Jacobi dönüşüm metodunun sadeleştirilmiş şeklidir. Bu metot daha sonra Carl Gustav Jacob Jacobi olarak isimlendirilmiştir.

Perceptron (Algılayıcı), tek katmanlı bir yapay sinir ağının temel birimidir. Eğitilebilecek tek bir yapay sinir hücresinden oluşmaktadır. Denetimli bir öğrenme algoritmasıdır. Bir perceptron giriş değerleri, ağırlıklar ve sapma, ağırlıklı toplam ve aktivasyon işlevi olmak üzere dört bölümden oluşmaktadır. Hem giriş hem de çıkış değerleri verilir ve sinir ağının öğrenmesi beklenir.

Matematik alanında, toplam veya genel toplam olarak sonuçlanan, toplananlar ya da toplamalar diye adlandırılan bir sayı dizisinin eklenme sürecine toplam/toplama denir. Sayıların yanı sıra, fonksiyonlar, vektörler, matrisler, polinomlar ve genelde "+" işareti ile tanımlanmış işleme sahip diğer tüm matematiksel nesne türleri de toplanabilir.