A× X = B (3.7)
C × X → max (3.8)
ko'rinishda ifodalash mumkin. Bu yerda X = (x1 , x2 ,…, xn )T noma'lumlarga mos ustun matritsa.
Aj ( j =1,2, …, n) vektorlar m o'lchovli chiziqli fazo vektorlari bo'lib, ularning soni n aksariyat hollarda m dan ancha katta bo'ladi. Shuning uchun (3.7) sistema yechimlari cheksiz ko'p bo'ladi. Ular orasida (3.8) shartni qanoatlantiradiganini topishimiz kerak.
Buning uchun Aj vektorlar orasidan X musbat koordinatalariga mos keluvchi mta chiziqli erklisini ajratishimiz kerak. Fazo m o'lchovli bo'lganligi uchun Aj lar orasida chiziqli erklisi m tadan ortiq bo'lmaydi. Bu vektorlar bazis vektorlar deb belgilanadi. Masala shartlari shu bazisga moslanadi. Bazis vektorlardan qolgan barcha Ak vektorlarga mos X k lar nol deb olinadi. Shundan keyin berilgan bazisga mos tayanch yechim topiladi va u optimallikka tekshiriladi.
Biz bu yerda usulning faqat amaliy taraflariga to'xtalamiz. Usulning nazariy asoslariga qiziqqanlar maxsus adabiyotlarga murojaat qilishi mumkin. Usul mohiyati va tartibini amaliy misolni ishlash jarayonida izohlab boramiz. Quyidagi ChPM berilgan bo'lsin.
7x1 +8x2 +5x3 ≤ 56
2x1 + x2 + x3 ≤10
x1 + x3 ≤ 6
L(x1; x2 ; x3 ) =10x1 +12x2 + 25x3 → max
Bu masalani kanonik ko'rinishga keltiramiz
7x1 +8x2 +5x3 + x4 = 56
2x1 + x2 + x3 + x5 =10
x1 + x3 + x6 = 6
L(x1 , x2 , x3 , x4 , x5 , x6 ) =10x1 +12x2 + 25x3 +0×x4 +0×x5 +0×x6 → max
Berilgan masala shartlaridan A1 = (7;2;1)T , A2 = (8;1;0), A3 = (5;1;1)T , A4 = (1;0;0)T ,
A5 = (1;0;0)T , A6 = (0;0;1)T ekanligini ko'ramiz. Bu yerda yangi kiritilgan o'zgaruvchilarga mos A4 , A5 , A6 vektorlar bazis ekanligi ko'rinib turibdi, haqiqatdan
ham A1 = 7× A4 + 2× A5 +1× A6
ekanligini ko'rishimiz mumkin. Qolgan vektorlar, shuningdek cheklash vektori B = (56;10;6)T ni ham ular orqali ifodalash mumkin. Masala shartlariga ko'ra shu bazisga mos tayanch yechimni topish uchun bazisga kirmagan x1 , x2 , x3 o'zgaruvchilarni nol deb olishimiz kerak. U holda x4 = 56, x5 =10; x6 = 6 ekanligi kelib chiqadi. Keltririlgan shartlarni ifodalovchi barcha sonlarni quyidagi jadval ko'rinishda ifodalaymiz.
←
i
|
|
|
|
10
|
12
|
25
|
0
|
0
|
0
|
|
|
|
Baz
|
A0
|
A1
|
A2
|
A3
|
A4
|
A5
|
A6
|
Өi
|
1
|
0
|
A4
|
56
|
7
|
8
|
5
|
1
|
0
|
0
|
11,2
|
2
|
0
|
A5
|
10
|
2
|
1
|
1
|
0
|
1
|
0
|
10
|
3
|
0
|
A6
|
6
|
1
|
0
|
1
|
0
|
0
|
1
|
6
|
|
∆ j
|
|
|
-10
|
-12
|
-25
|
0
|
0
|
0
|
|
↑
1 – jadval
1 – jadvalda A0 ustun shartlardagi o'ng taraf qiymatlari (resurslar miqdori) A1 , A2 , A3 , A4 , A5 , A6 ustunlar shartlardagi x1 , x2 , x3 , x4 , x5 , x6 larning koeffisiyentlaridan tuzilgan. Shartlarda koeffisiyentlari birlik ustunni ifodalayotgan vektorlar bazis vektorlar deb belgilanib, ularning 1 elementlari joylashgan qator boshida bazis deb atalgan ustunda shu vektor belgisi AK deb qo'yiladi. CKi deb atalgan ustunga esa bazisga kirgan shu qatordagi Ak vektor tepasidagi narx qiymati Ck qo'yiladi. i- ustunda tenglama nomeri belgilanadi. Shu bilan masala shartlariga kiruvchi barcha sonlar jadvalda o'z o'rnini egallaydi. Shundan keyin jadvalning so'nggi qator va so'nggi ustunini to'lg'azishga o'tiladi. Dastlab
m
∆ j =∑aij ×CKi −C j j =1, 2, …, n (3.9)
i=1
formula bo'yicha ∆ j lar hisoblanadi. Agar barcha ∆ j lar manfiy bo'lmasa jadvalga mos tayanch yechim optimal yechim deyiladi va hisob to'xtatiladi. Agar ∆ j lar orasida manfiylari bo'lsa jadvalga mos tayanch yechim optimal emas, uni yaxshilash kerak degan xulosa qilinadi. Buning uchun manfiy ∆ j lar orasidan eng kichigi joylashgan ustunni hal qiluvchi ustun deb belgilanadi. Agar bu ustundagi Ak elementlari (a1k ,a2k ,…, amk )T lar orasida musbatlari bo'lmasa masala yechimi yo'q degan xulosaga kelamiz. Agar aik i =1, 2, …, m lar orasida musbatlari bo'lsa
Ular uchun Өi = aio / aik qiymatlar hisoblanadi.
ulardan kichigi Өi tanlanadi va bu Өi jolashgan qator hal qiluvchi qator deb e'lon qilinadi, hamda hal qiluvchi ustun va hal qiluvchi qatorlar kesishgan joydagi aek elementni esa hal qiluvchi element deb belgilanadi.
Bu jarayonni biz tahlil qilayotgan misol (1 – jadval) uchun quyidagi tartibda bajariladi. Avvalo (3.9) formulalar bo'yicha ∆ j larni hisoblaymiz.
×CKi −C1 = 7×0+ 2×0+1×0−10 =−10
i=1
×CKi −C2 = 8×0+ 2×0+0×0−12 =−12
i=1
×CKi −C3 = 5×0+1×0+1×0−25 =−25
×CKi −C4 =1×0+0×0+0×0−0 = 0
i=1
×CKi −C5 =0×0+1×0+0×0−0 = 0
i=1
×CKi −C6 = 0×0+0×0+1×0−0 = 0
i=1
Bu qiymatlar jadvalga kiritilgan ∆ j larni taqqoslash yordamida eng kichigi
∆ 3 =−25ga mos kelgan 3 – ustun hal qiluvchi ustun deb belgilanadi. Bu ustun elementlari yordamida Ө i = ai0 / ai3 qiymatlar hisoblanadi. Ө1 = 56/5=11,2 ; Ө2 = 10/1 = 10; Ө3 = 6/1=6 ular ham jadvalga kiritilgan. Ө i lar orasida eng kichigi Ө3 ga mos kelgan 3 – qator hal qiluvchi qator deb belgilanadi. Jadvalda bu ustun va qator strelka bilan belgilangan. Ular kesishgan joydagi hal qiluvchi a33 element ham qalin chegara bilan ajratilgan Agar hal qiluvchi element 1ga teng bo'lmasa hal qiluvchi qator barcha elementlarini hal qiluvchi elementga bo'lib yuborib bunga erishish mumkin. 3 – qator elementlarini 5ga ko'paytirib, 1 – qator elementlaridan ayiramiz, so'ngra 3 – qator elementlarini 1ga ko'paytirib, 2 – qator elementlaridan ayiramiz. Hosil bo'lgan qiymatlari 2 – jadval tarzida ifodalangan.
←
2 – jadval
i
|
|
|
|
10
|
12
|
25
|
0
|
0
|
0
|
|
|
|
Baz
|
A0
|
A1
|
A2
|
A3
|
A4
|
A5
|
A6
|
Өi
|
1
|
0
|
A4
|
26
|
2
|
8
|
0
|
1
|
0
|
-5
|
3,25
|
2
|
0
|
A5
|
4
|
1
|
1
|
0
|
0
|
1
|
-1
|
4
|
3
|
25
|
A3
|
6
|
1
|
0
|
1
|
0
|
0
|
1
|
|
|
∆ j
|
|
|
15
|
-12
|
0
|
0
|
0
|
25
|
|
– jadval uchun ham (3.9) formulalar yordamida ∆ j lar hisoblanadi. Bu qiymatlar hisoblanib jadvalga kiritilgan. ∆ j lar orasida manfiysi bo'lganligi uchun bu
jadvalga mos tayanch yechim ham optimal yechim emas. Shuning uchun manfiy ∆ 2 ga mos 2 – ustun hal qiluvchi ustun deb belgilandi. Hal qiluvchi ustunning musbat elementlari uchun Өj = 26/8 = 13/4= 3,25; Ө2 = 4/1=4 lar hisoblanadi. Eslatma: Manfiy va nol bo'lgan elementlar uchun Өi hisoblanmaydi. Agar aik lar orasida musbatlari bo'lmasa, ChPM yechimi yo'q deb hisoblash to'xtatiladi. Bizning misolda Өi lardan kichigi Ө1 = 3,25 ga mos qator hal qiluvchi qator deb belgilandi. Simpleks usul algoritmiga ko'ra 3 – jadvalni to'lg'azamiz.
i
|
Cj
Cik
|
|
|
10
|
12
|
25
|
0
|
0
|
0
|
|
|
|
Baz
|
A0
|
A1
|
A2
|
A3
|
A4
|
A5
|
A6
|
Өi
|
1
|
12
|
A2
|
3,25
|
0,25
|
1
|
0
|
0,125
|
0
|
-0,625
|
|
2
|
0
|
A5
|
0,75
|
0,75
|
0
|
0
|
-0,125
|
1
|
-0,375
|
|
3
|
25
|
A3
|
6
|
1
|
0
|
1
|
0
|
0
|
1
|
|
|
|
∆ j
|
|
18
|
0
|
0
|
1,5
|
0
|
17,5
|
|
– jadval
3 – jadvalda barcha ∆ j ≥ 0 bo'lganligi uchun bu jadvalga mos tayanch yechimda bazis o'zgaruvchilar x2 = 3,25; x3 = 6;x5 = 0,75deb olinadi. Bazisga kirmagan o'zgaruvchilar esa nolga teng deb olinadi, ya'ni x1 = 0;x5 = 0;x6 = 0. Bu yechim ChPM uchun optimal planni beradi. Yordamchi noma'lumlardan holi bo'lgan holda berilgan ChPM uchun optimal plan x1 = 0; x2 = 3,25; x3 = 6ko'rinishda belgilanadi. Bunda maqsad funksiyasi o'zining maksimal qiymatiga erishar ekan va L =10×0 +12×3,25 + 25× 6 =189ga teng bo'ladi. Keltirilgan misol planni bosqichma – bosqich yaxshilash, ya'ni simpleks usulning barcha amallari va ularning bajarilish tartibini o'zida aks ettirgan. Shuning bilan birga masalani ishlash tartibiga e'tibor berilsa, geometrik usuldan farqli noma'lumlar soni ortgan, ya'ni masala murakkablashgan holda ham bu usul shundayligicha tatbiq qilinaveradi. Tabiiy bunda simpleks jadval ustun va qatorlar soni ortadi, shunga ko'ra hisoblashlar hajmi ham ortadi. Optimal planga yetib borish uchun bajariladigan qadamlar soni ham ortishi mumkin.
Simpleks usulning umumiy holdagi algoritmi (ixtiyoriy n , m lar uchun) dasturlangan va zamonaviy kompyuterlar matematik ta'minotida bu dasturlar mavjud. Ulardan foydalanish uchun iste'molchi, ya'ni tadqiqotchi, o'zi yechmoqchi bo'lgan ChPM ga taalluqli barcha qiymatlarni ko'rsatilgan tartibda kompyuter xotirasiga kiritib, shu dasturlarga murojaat qilishi yetarli.
Biz bu yerda e'tiborni qaratmoqchi bo'lgan yana bir hol, simpleks usul bo'yicha hisobni boshlashda dastlabki simpleks jadvalda bazis berilishi kerakligi. Bu bazis qanday tanlanadi, bunda nimalarga e'tiborni qaratish kerak?
Dostları ilə paylaş: |