Проблем ранца је проблем који је највише истраживан у комбинаторној оптимизацији, са много примена у стварном животу. Због овога је испитано много специјалних случајева и направљено је много генерализација.

Заједничко за све верзије је н предмета, а сваки предмет има придружену вредност пј и тежину wј. Циљ је сакупити одређени број предмета, тако да вредност ранца буде максимална, али да тежина ранца не пређе задату вредност W. Углавном, ови коефицијенти се скалирају да би били цели бројеви и готово увек се претпоставља да су позитивни.

Проблем ранца у основној форми:

максимално
предмет

Директне генерализације уреди

Једна од чешћих варијанти је да се сваки предмет може бирати више пута. Конкретно, код проблема ограниченог ранца за сваки предмет ј, и горњу границу уј (која може бити позитиван цео број или бесконачно) за број предмета ј може бити изабрано:

максимално  
предмет  
  цео број за све ј

Неограничени проблем ранца (који се некада назива и целобројни проблем ранца) не поставља горњу границу за број предмета који могу да се одаберу:

максимално  
предмет  
  цео број за све ј

Луекер је показао 1975. године [1] да је варијата без границе НП-комплетан проблем. Обе варијатне, и са ограничењем и без ограничења, имају апроскимативну шему полиномијалног времена - ФПТАС (у суштини, као и код 0-1 проблемна ранца).

Ако се предмети поделе на к класа означене са  , и ако из сваке класе мора да се узме тачно један предмет, добија се проблем ранца са вишетруким избором:

максимално  
предмет  
  за све  
  за све   и све  

Ако су за све предмете вредност и тежина идентични, добијамо проблем збира подскупа (често је дат одговарајући проблем, проблем одлучивања ):

максимално  
предмет  
 

Ако имамо н предмета и м ранчева са капацитетима  , добијамо вишеструки проблем ранца:

максимално  
предмет   за све  
  за све  
  за све   и све  

Као специјалан случај вишетруког проблема ранца, када су вредности једнаке тежинама и сви бинови имају исти капацитет, можемо имати и проблем збира вишетруког подскупа:

Квадратни проблем ранца:

максимално  
предмет  
  за све  

Проблем ранца - Унија скупа:

СУКП (Сет-Унион Кнапсацк Проблем) је дефинисао Келлерер и др.[2]:

Дат је скуп од   предмета   и скуп од  , тако рећи, елемената  , где сваки предмет   одговара подскупу   скупа елемената  . Предмети   имају ненегативне вредности  ,  , а елементи   ненегативне тежине  ,  . Коначна тежина скупа предемета је дата коначном тежином елемената уније одговарајућих скупа елемената. Циљ је наћи подскуп предмета са коначном тежином која не прелази капацитет ранца и максималну вредност.

Вишеструко ограничење уреди

Ако постоји више од једног ограничења (на пример, и граница за обим и граница за тежину, где обим и тежина сваког предмета нису повезани), добијамо проблем ранца са вишеструким ограничењем, вишедимензионални проблем ранца, или м-димензионални проблем ранца. (Напомена, "димензија" се овде не односи на облик предмета.) Ово има 0-1, ограничену, и неограничену варијанту; неограничена је приказана испод.

максимално  
предмет   за све  
 ,   интегер за све  

Показано је да је варијанта 0-1 (за све фиксне  ) НП-комплентна око 1980. године и да нема ФПТАС осим ако је П=НП.[3][4]

Ограничена и неограничена варијанта (за све фиксне  ) имају исту сложеност.[5]

За било које фиксно  , ови проблеми имају псеудо-полиномијални алгоритам (сличан оном за класичн проблем ранца) и ПТАС.[2]

Ранац-слични проблеми уреди

Ако су све вредности једнаке 1, можемо да покушамо да минимизујемо број предмета који тачно попуњују ранац:

минимално  
предмет  
   

Ако имамо број складишта (исте величине), и желимо да спакујемо свих н предмета у што је мање могуће складишта, добијамо бин-проблем ранца, који је урађен тако да има индикатор за варијабле   складиште и се тренутно користи:

милимално  
предмет    
   
   
   
  • Проблем сецкања залиха је идентичан бин-проблему ранца, али пошто парцијалне истанце обично имају много мање типова предмета, често се користи друга формулација. Предмет ј је потребан Бј пута, сваки пример премдета који може да стане у само један ранац има променљиву, xи (постоји м примера), и пример и користи предмет ј биј пута:
минимално  
предмет   за све  
  за све  

Ако на вишеструки проблем ранца, додамо ограничење да је сваки подскуп величине н и уклонимо ограничење за коначну тежину, добијамо проблем задатка, који је такође проблем проналажења максималног бипартитивног поклапања:

максимално  
предмет   за све  
  за све  
  за све   и све  

У варијанти ранац максималне густине постоји иницијална тежина  , и ми увећавамо густину изабраног предемта кои не угрожава капацитет ограничења: [6]

максимално  
предмет  
   

Иако су мање познади од проблема поменутих изнад, постоји још неколико ранац-сличних проблема, укључујући:

  • Угнеждени проблем ранца
  • Колапсирајући проблем ранца
  • Нелинеаран проблем ранца
  • Обрнуто-параметарски проблем ранца

Од ових, последња три су обрађена у референцном раду Келлерер-а и других, Кнапсацк Проблемс.[2]

Референце уреди

  1. ^ Луекер, Г.С. (1975). „Репорт Но. 178, Цомпутер Сциенце Лабораторy, Принцетон; Тwо НП-цомплете проблемс ин ноннегативе интегер программинг”. 
  2. ^ а б в Келлерер, Ханс; Пферсцхy, Улрицх; Писингер, Давид (2004). Кнапсацк Проблемс. Спрингер Верлаг. стр. 423. ИСБН 3-540-40286-1. 
  3. ^ Генс, Г. V.; Левнер, Е. V. (1979). „Цомплеxитy анд Аппроxиматион Алгоритхмс фор Цомбинаториал Проблемс: А Сурвеy”. Централ Ецономиц анд Матхематицал Институте, Ацадемy оф Сциенцес оф тхе УССР, Мосцоw. 
  4. ^ Корте, Б.; Сцхрадер, Р. (1980). „Он тхе Еxистенце оф Фаст Аппроxиматион Сцхемес”. Нонлинеар Программинг. Ацадемиц Пресс. 4: 415—437. 
  5. ^ Магазине, M. Ј.; Цхерн, M.-С.; Магазине, Мицхаел Ј.; Цхерн, Маw-Схенг (1984). „А Ноте он Аппроxиматион Сцхемес фор Мултидименсионал Кнапсацк Проблемс”. Матхематицс оф Оператионс Ресеарцх. 9 (2): 244—247. дои:10.1287/моор.9.2.244. 
  6. ^ Цохен, Реувен; Катзир, Лиран (2008). „Тхе Генерализед Маxимум Цовераге Проблем”. Информатион Процессинг Леттерс. 108: 15—22. дои:10.1016/ј.ипл.2008.03.017. 

Литература уреди