Ուսապարկի խնդիր

Վիքիպեդիայից՝ ազատ հանրագիտարանից
Jump to navigation Jump to search
Ուսապարկի խնդրի օրինակ․ անհրաժեշտ է 15 կգ տարողությամբ ուսապարկում տեղավորել արկղեր այնպես, որ ընդհանուր արժեքականությունը լինի առավելագույնը

Ուսապարկի խնդիրը կոմբինատոր օպտիմիզացման NP-խնդիրներից է։ Խնդիրը իրենից ներկայացնում է սահմանափակ տարողությամբ ուսապարկում, որում պետք է տեղավորել մաքսիմալ թանկարժեք իրեր։ Հենց այդտեղից է ստացել անվանումը։ Ուսապարկի խնդրի տարբեր տարբերակների հետ կարելի է հանդիպել այլ բնագավառներում՝ տնտեսագիտությունում, կիրառական մաթեմատիկայում, կրիպտոգրաֆիայում, գենետիկայում և լոգիստիկայում։

Ընդհանուր առմամբ խնդիրը իր դասական տարբերակում կարելի է ձևակերպել այսպես․ տրված բազմությամբ առարկաներով,որոնք ունեն քաշ և արժեք պետք է ընտրել ամենամեծ արժեքականությամբ ենթաբազմությունը, որը չի գերազանցում ընդհանուր քաշը։

Խնդրի դասական ձևակերպումը[խմբագրել | խմբագրել կոդը]

Ենթադրենք ունենք իրերի հավաքածու, որից յուրաքանչյուրը ունի երկու պարամետր՝ քաշ և արժեք։ Ունենք նույնպես ուսապարկ սահմանափակ տարողությամբ։ Խնդիրը կայանում է նրանում, որ պետք է ուսապարկը հավաքել մաքսիմալ արժեքավոր իրերով և հետևել քաշային սահմանափակմանը։

Մաթեմատիկորեն խնդիրը կարելի է ձևակերպել այսպես․ ունենք բեռ։ Յուրաքանչյուր i-րդ բեռի համար սահմանված է քաշ և արժեք , ։ Տրված է W տարողություն։ Պետք է ընտրել բեռերի ենթաբազմություն, որ նրանց քաշը չգերազանցի W քաշը և գումարային արժեքականությունը լինի առավելագույնը։[1]

Ուսապարկի խնդրի այլ տարբերակներ[խմբագրել | խմբագրել կոդը]

Գոյություն ունի խնդրի շատ տարբերակներ։ Տարբերվում են միայն ուսապարկի, իրերի և ընտրությունների պայմաններով։

  1. 0-1 ուսապարկի խնդիրը (անգլ.՝ 0-1 Knapsack Problem), յուրաքանչյուրից իրից մեկից ոչ ավելի։
  2. Սահմանափակված ուսապարկի խնդիր (անգլ.՝ Bounded Knapsack Problem), յուրաքանչյուրից իրից տրված քանակից ոչ ավելի։
  3. Անսահմանափակ ուսապարկի խնդիր (ամբողջ թվանի ուսապարկ) (անգլ.՝ Unbounded Knapsack Problem (integer knapsack))[2], յուրաքանչյուր առարկայից կամայական քանակությամբ։
  4. Այլ ընտրություններով ուսապարկի խնդիր (անգլ.՝ Multiple-choice Knapsack Problem)[3].
  5. Ուսապարկերի խնդիր (անգլ.՝ Multiple Knapsack Problem)[4], ունենք ուսապարկեր, յուրաքաանչյուրը իր առավելագույն տարողությամբ։ Յուրաքանչյուր առարկան կարելի է դնել ցանկացած ուսապարկում կամ ոչ։
  6. Բազամաչափ ուսապարկի խնդիր (անգլ.՝ Multy-dimensional knapsack problem): քաշի փոխարեն տրված է ուրիշ այլ ռեսուրսներ (օրինակ՝ քաշ,ծավալ, տեղավորման ժամանակ)։

Արտաքին հղումներ[խմբագրել | խմբագրել կոդը]

Ծանոթագրություններ[խմբագրել | խմբագրել կոդը]

  1. Silvano, 1990, էջ` 1
  2. Pisinger, 1995, էջ` 127
  3. Pisinger, 1995, էջ` 147
  4. Silvano, 1990, էջ` 157