Проблем паковања у простору
Проблем паковања у простору подразумева паковање објеката различитих запремина у коначно много контејнера са циљем да се минимизује број потребних контејнера за складиштење датих објеката. У теорији сложености овај проблем се класификује као NP-тежак проблем. Постоје различите варијације овог проблема, 2Д Паковање, Линеарно паковање, Паковање у односу на тежину, Паковање у односу на цену итд. Области у којима се примењује решење овог проблема су: Попуњавање контејнера, Утовар у камион са задатим тежинским ограничењем, Проналажење оптималног распореда предмета у простору са задатим условима баланса итд.

Иако је проблем класификован као NP-тежак (што значи да за велике инстанце проблема не постоји егзактни алгоритам полиномијалне сложености који даје оптимално решење, осим ако P = NP) развијено је мноштво хеуристика које проналазе задовољавајућа решења (блиска оптималном, која задовољавају све критеријуме паковања) у полиномијалном времену. Већина описаних хеуристика користе сортирање као круцијални корак у алгоритму и тиме се постиже логаритамска сложеност у односу на број објеката .

Формална дефиниција проблема 

Проблем паковања у простору се дефинише на следећи начин, дато је  елемената (квадрова) и неограничен број идентичних контејнера димензија . Димензије -тог објекта, , дефинишу се са . Претпоставка је да се објекти не могу ротирати. Циљ је упаковати  објеката тако да су испуњени следећи услови:
 Свака поставка предмета мора бити ортогонална (паралелна у односу на осу)
 Сваки објекат се мора налазити у потпуности унутар контејнера
 За свака два објекта унутар истог контејнера важи да се не секу
 Потребно је минимизовати број потребних контејнера

Приступ решавању проблема 
Један од главних проблема који се јављају приликом проучавања овог проблема је како на ефикасан начин одабрати позицију објекта унутар простора (контејнера) тако да се позиционирањем објекта на одабрано место не наруше ограничења (баланса, редоследа, итд.) Перформансе као и квалитет добијеног решења алгоритама кој се користи за паковање објеката у великој мери зависи од стратегије за одабир тачака које одређују позицију објекта. Хеуристика која је у досадашњем истраживању произвела најбоље резултате, како по питању ефикасности тако и по квалитету крајњих решења, уводи концепт Екстремних тачака које представљају скуп потенцијалних позиција на које је могуће сместити текући објекат у односу на текућу конфигурацију.

Применом претходно описане стратегије добијају се квалитетна решења приближна оптималном али се такође примећују и недостаци. Наиме приликом уметања објеката долази до фрагментисања простора на испуњен простор (простор који заузима тренутна конфигурација објеката) и резидуални простор (простор који је слободан за уметање преосталих објеката). Могуће је да се приликом уметања објекта простор фрагментише тако да резидуални простор запремински може да прихвати текући објекат али не постоји ни једна екстремна тачка у резидуалном простору која задовољава услов да се након смештања објекта на њену позицију може избећи пресек са неким од објеката у тренутној конфигурацији. Што чини уметање текућег објекта немогућим.

Приликом решавања проблема паковања у простору неопходно је дакле размотрити два суштинска подпроблема:
 Како одабрати скуп тачака које представљају потенцијалне позиције објекта који је потребно спаковати?
 Како учинити да резидуални простор буде што боље искоришћен?

Хеуристика уметања коришћењем екстремних тачака 

Хеуристика уметања коришћењем екстремних тачака је конструктивна хеуристика која умеће објекте редом, један по један у односу на задату секвенцу објеката док сви објекти нису уметнути у простор (контејнер). Ова хеуристика је тренутно најбоља у овом домену. Концепт екстремних тачака посматра простор као листу екстремних тачака, где свака тачка представља потенцијалну позицију за уметање новог објекта. Празан простор (контејнер) се посматра као листа која садржи само једну екстремну тачку . Уметање новог објекта повлачи заузимање једне екстремне тачке из листе и увођење константног броја нових тачака. Слика 1(а) и 1(б) илуструју увођење 2 односно 6 екстремних тачака уметањем новог објекта за (редом) 2Д и 3Д случај.

За задату секвенцу објеката описана хеуристика покушава да уметне објекат на екстремну тачку у постојећем простору. Уколико не постоји екстремна тачка која задовољава критеријуме, инстанцира се нови простор (контејнер) и објекат се умеће на позицију . Поступак се понавља док се не уметну сви објекти. Природно може постојати подскуп скупа екстремних тачака који задовољава услове уметања у том случају потребно је одабрати стратегију за одабир неке од потенцијалних тачака. Неке од стратегија су: Најмање еуклидско растојање, Одабир прве тачке која задовољава критеријуме, итд.

Хеуристика за дефрагментисање простора 

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

Да би се наведени поступак спровео посматрају се геометријска својства објеката, за сваки објекат се посматра његова пројекција на   и  осу. Поступак је довољно описати за једну од оса за преостале се поступак спроводи аналогно. За сбаки објекат  посматра се његова пројекција на  осу означена са , скуп пројекција називаће се скуп крајњих тачака. Поступак се може дефинисати на следећи начин замишљајући вертикалну линију која се креће здесна улево:
 Сортирати скуп од  крајњих тачака, леви крајеви се пореде уколико су десни једнаки.
 Вертикална линија у сваком тренутку дефинише скуп интервала који се налазе потпуно лево од објекта ,  где је  позиција вертикалне линије.
 Вертикална линија ажурира граничну вредност  која представља највећу вредност десног краја за све интервале из 
 Када вертикална линија скенира  ажурира се 
 Када вертикална линија скенира  ажурира се

Види још 
 Проблеми паковања
 Проблем ранца
 Оптимизациони проблеми

Референце 
 
 
 
 
 
 
 
 
 Silvano Martello and Paolo Toth (1990), Knapsack Problems Algorithms and Computer Implementations.
 Michael R. Garey and David S. Johnson , Computers and Intractability: A Guide to the Theory of NP-Completeness. W.H. Freeman.  A4.1: SR1. стр. 226.
 David S. Johnson, Alan J. Demers, Jeffrey D. Ullman, M. R. Garey, Ronald L. Graham. Worst-Case Performance Bounds for Simple One-Dimensional Packing Algorithms. SICOMP, Volume 3, Issue 4. 1974.
 Lodi A., Martello S., Monaci, M., Vigo, D. (2010) Two-Dimensional Bin Packing Problems. In V.Th. Paschos (Ed.), “Paradigms of Combinatorial Optimization”, Wiley/ISTE. стр. 107-129
 Dósa G., Sgall J. (2013) First Fit bin packing: A tight analysis. To appear in STACS 2013.
Проблем паковања у простору подразумева паковање објеката различитих запремина у коначно много контејнера са циљем да се минимизује број потребних контејнера за складиштење датих објеката . У теорији сложености овај проблем се класификује као NP-тежак проблем . Постоје различите варијације овог проблема , Паковање , Линеарно паковање , Паковање у односу на тежину , Паковање у односу на цену итд . Области у којима се примењује решење овог проблема су : Попуњавање контејнера , Утовар у камион са задатим тежинским ограничењем , Проналажење оптималног распореда предмета у простору са задатим условима баланса итд . Иако је проблем класификован као NP-тежак ( што значи да за велике инстанце проблема не постоји егзактни алгоритам полиномијалне сложености који даје оптимално решење , осим ако P = NP ) развијено је мноштво хеуристика које проналазе задовољавајућа решења ( блиска оптималном , која задовољавају све критеријуме паковања ) у полиномијалном времену . Већина описаних хеуристика користе сортирање као круцијални корак у алгоритму и тиме се постиже логаритамска сложеност у односу на број објеката \ . Формална дефиниција проблема Проблем паковања у простору се дефинише на следећи начин , дато је елемената ( квадрова ) и неограничен број идентичних контејнера димензија \ . Димензије -тог објекта , , дефинишу се са \ . Претпоставка је да се објекти не могу ротирати . Циљ је упаковати објеката тако да су испуњени следећи услови : Свака поставка предмета мора бити ортогонална ( паралелна у односу на осу ) Сваки објекат се мора налазити у потпуности унутар контејнера За свака два објекта унутар истог контејнера важи да се не секу Потребно је минимизовати број потребних контејнера Приступ решавању проблема Један од главних проблема који се јављају приликом проучавања овог проблема је како на ефикасан начин одабрати позицију објекта унутар простора ( контејнера ) тако да се позиционирањем објекта на одабрано место не наруше ограничења ( баланса , редоследа , итд . ) Перформансе као и квалитет добијеног решења алгоритама кој се користи за паковање објеката у великој мери зависи од стратегије за одабир тачака које одређују позицију објекта . Хеуристика која је у досадашњем истраживању произвела најбоље резултате , како по питању ефикасности тако и по квалитету крајњих решења , уводи концепт Екстремних тачака које представљају скуп потенцијалних позиција на које је могуће сместити текући објекат у односу на текућу конфигурацију . Применом претходно описане стратегије добијају се квалитетна решења приближна оптималном али се такође примећују и недостаци . Наиме приликом уметања објеката долази до фрагментисања простора на испуњен простор ( простор који заузима тренутна конфигурација објеката ) и резидуални простор ( простор који је слободан за уметање преосталих објеката ) . Могуће је да се приликом уметања објекта простор фрагментише тако да резидуални простор запремински може да прихвати текући објекат али не постоји ни једна екстремна тачка у резидуалном простору која задовољава услов да се након смештања објекта на њену позицију може избећи пресек са неким од објеката у тренутној конфигурацији . Што чини уметање текућег објекта немогућим . Приликом решавања проблема паковања у простору неопходно је дакле размотрити два суштинска подпроблема : Како одабрати скуп тачака које представљају потенцијалне позиције објекта који је потребно спаковати ? Како учинити да резидуални простор буде што боље искоришћен ? Хеуристика уметања коришћењем екстремних тачака Хеуристика уметања коришћењем екстремних тачака је конструктивна хеуристика која умеће објекте редом , један по један у односу на задату секвенцу објеката док сви објекти нису уметнути у простор ( контејнер ) . Ова хеуристика је тренутно најбоља у овом домену . Концепт екстремних тачака посматра простор као листу екстремних тачака , где свака тачка представља потенцијалну позицију за уметање новог објекта . Празан простор ( контејнер ) се посматра као листа која садржи само једну екстремну тачку \ . Уметање новог објекта повлачи заузимање једне екстремне тачке из листе и увођење константног броја нових тачака . Сликаа ) иб ) илуструју увођењеодносноекстремних тачака уметањем новог објекта за ( редом ) и случај . За задату секвенцу објеката описана хеуристика покушава да уметне објекат на екстремну тачку у постојећем простору . Уколико не постоји екстремна тачка која задовољава критеријуме , инстанцира се нови простор ( контејнер ) и објекат се умеће на позицију \ . Поступак се понавља док се не уметну сви објекти . Природно може постојати подскуп скупа екстремних тачака који задовољава услове уметања у том случају потребно је одабрати стратегију за одабир неке од потенцијалних тачака . Неке од стратегија су : Најмање еуклидско растојање , Одабир прве тачке која задовољава критеријуме , итд . Хеуристика за дефрагментисање простора Главни циљ код проблема паковања у простору је добијање густих конфигурација чиме се постиже висока искоришћеност датог простора за паковање . Конструкцијом густих конфигурација објеката природно се смањује број потребних контејнера за смештање објеката из секвенце . Хеуристика за дефрегментисање простора у суштини покушава да постави објекат на позицију , уколико је позиција заузета ( на позицији се налази неки од објеката из тренутне конфигурације ) хеуристика транслира све објекте максимално у односу на координатни почетак како би се направило место за нови објекат . Приликом имплементирања овог поступка прво је потребно утврдити да ли овјекат и може да се постави на позицију а затим и мора бити постављен на позицију \ . Да би се наведени поступак спровео посматрају се геометријска својства објеката , за сваки објекат се посматра његова пројекција на и осу . Поступак је довољно описати за једну од оса за преостале се поступак спроводи аналогно . За сбаки објекат посматра се његова пројекција на осу означена са , скуп пројекција називаће се скуп крајњих тачака . Поступак се може дефинисати на следећи начин замишљајући вертикалну линију која се креће здесна улево : Сортирати скуп од крајњих тачака , леви крајеви се пореде уколико су десни једнаки . Вертикална линија у сваком тренутку дефинише скуп интервала који се налазе потпуно лево од објекта , где је позиција вертикалне линије . Вертикална линија ажурира граничну вредност која представља највећу вредност десног краја за све интервале из Када вертикална линија скенира ажурира се Када вертикална линија скенира ажурира се Види још Проблеми паковања Проблем ранца Оптимизациони проблеми Референце Silvano Martello and Paolo Toth Knapsack Problems Algorithms and Computer Implementations . Michael R . Garey and David S . Johnson , Computers and Intractability : A Guide to the Theory of NP-Completeness. W.H . Freeman . A4.1 : SR1. стр . David S. Johnson , Alan J . Demers , Jeffrey D . Ullman , M. R. Garey , Ronald L . Graham. Worst-Case Performance Bounds for Simple One-Dimensional Packing Algorithms . SICOMP , Volume Issue Lodi A . , Martello S . , Monaci , M . , Vigo , D.Two -Dimensional Bin Packing Problems . In V.Th . Paschos ( Ed . ) , “ Paradigms of Combinatorial Optimization ” , Wiley / ISTE. стр . Dósa G . , Sgall J.First Fit bin packing : A tight analysis . To appear in STACS