Hátizsák feladatlista

A hátizsák (vagy hátizsák) probléma a kombinatorikus optimalizálási problémák  egyike . Nevét arról a maximalizálási problémáról kapta, hogy minél több dolgot csomagoljunk egy hátizsákba, feltéve, hogy a hátizsákba elférő összes tárgy teljes térfogata (vagy súlya) korlátozott. Ezért a feladatnak több fajtája van.

Minden típusra jellemző, hogy van egy elemkészlet , két paraméterrel - súly és érték . Van egy bizonyos kapacitású hátizsák . A feladat egy olyan hátizsák összeállítása, amelyben a benne lévő tárgyak maximális értéke van, a hátizsák súlyhatárának betartása mellett. Általában minden paraméter egész szám, nem negatív szám.

Hátizsák 0-1 ( eng.  0-1 Hátizsák Probléma )

Ez a hátizsák leggyakoribb típusa. Legyen két érték: ha a rakomány be van csomagolva, és egyébként hol . Egy feladat:

maximalizálni

ha a hátizsák befogadóképessége korlátozott [1] [2] .

Határozott hátizsák probléma  _

Minden elem korlátozott számú alkalommal választható ki. Egy feladat:

maximalizálni

hogy a kapacitásfeltétel teljesüljön

és mindenkinek [3] .

A számot határnak [3] nevezzük .

Korlátlan  hátizsák probléma ( integer hátizsák )

Minden elem korlátlan számú alkalommal választható ki. Egy feladat:

maximalizálni

hogy a kapacitásfeltétel teljesüljön

és egy egész szám mindenre [4] .

  hátizsák probléma [ szerkesztés

Minden elem osztályokra van osztva . Minden osztályból csak egy tantárgyat kötelező kiválasztani. csak 0 és 1. Feladat:

maximalizálni

hogy a kapacitás feltétel teljesüljön,

mindenkinek

Több hátizsák probléma  _

Tegyük fel, hogy vannak tárgyaink és hátizsákjaink ( ). Minden elemnek, mint korábban, van súlya és értéke , minden hátizsáknak saját kapacitása van . . Egy feladat:

maximalizálni

hogy a feltétel mindenki számára teljesüljön ,

mindenkinek [5] .

Többdimenziós hátizsák   szerkesztés _

Ha egynél több kényszer van a hátizsákon, például térfogat és súly, a problémát m-dimenziós hátizsák-problémának nevezzük. Például a korlátlan opcióhoz:

maximalizálni

szóval ,

és mindenkinek [4] .

Kvadratikus hátizsák probléma  _

A kvadratikus hátizsák-probléma a klasszikus hátizsák-problémák olyan módosítása, amelynek értéke a négyzetes formája . Legyen egy vektor, amely megadja, hogy az egyes elemek hány példányban kerüljenek a hátizsákba. Egy feladat:

maximalizálni

feltételek mellett , , vagy

minimalizálni

feltételek mellett , .

Ugyanakkor a méret nemnegatív definit mátrixa korlátozza az elemek számát [6] .

Jegyzetek

  1. Burkov, 1974 , p. 217.
  2. Silvano, 1990 , p. 2.
  3. 1 2 Pisinger, 1995 , p. 127.
  4. 1 2 Pisinger, 1995 , p. 147.
  5. Silvano, 1990 , p. 157.
  6. G. Gallo, P. L. Hammer, B. Simeone. Kvadratikus hátizsák problémák  //  Mathematical Programming Studies. - 2009. - február 24. ( 12. köt. ). - 132-149 . o . — ISSN 0303-3929 . Archiválva az eredetiből 2016. október 24-én.

Irodalom

oroszul
  1. V. N. Burkov, I. A. Gorgidze, S. E. Lovetsky. A gráfelmélet alkalmazott problémái. - M. , 1974. - 232 p.
angolul
  1. Silvano Martelo, Paolo Toth. Hátizsák problémák. - Wiley, 1990. - 306 p.
  2. David Pisinger. Hátizsák problémák . - 1995. Archiválva : 2012. december 22. a Wayback Machine -nál

Linkek

  1. Hátizsák algoritmus