Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
123.doc
Скачиваний:
0
Добавлен:
01.05.2025
Размер:
4.57 Mб
Скачать
  1. Шешуші элемент дегеніміз не ?

Жалпы түрде қойылған сызықты программалаудың әуелгі есебін шешу керек болсын:

,

, .

Мәселен, барлық векторлары үшін орындалатын, векторының кемінде бір компоненті (мысалы, ) теріс базисі таңдалсын дейік. теріс компонентіне сай векторын базистен шығарып, ал теріс бағалауға сәйкес векторды түйіндес айнымалының базисіне енгізу қажет.

Әуелгі есептің базисіне енгізілетін векторды анықтау үшін -ші жолды қарастырамыз: егер онда қамстылмаса, онда түйіндес есептің сызықтық функциясы шешімдер облысында шектелмеген, ал бастапқы есептің шешімі жоқ. Егер де қайбір болса, онда осындай теріс мәндерді қамтитын бағандар үшін мәндерін есептейміз. Есеп минимумге шешілсе мәніне сай векторды анықтаймыз, ал есеп максимумге шешілсе, мәніне сай векторды анықтаймыз.

Осы вектор әуелгі есептің базисіне енгізіледі. Базистен шығарылатын вектор бағыттаушы жолдан анықталады.

Егер болса, онда жағдайында ғана шешуші элемент ретінде қабылданады. Шешуші элементті осылай таңдау бұл кезеңде векторының теріс компоненттері санының өсуіне соқтырмайды. Бұл процесс болғанша жалғаса береді.

Мұны барлық кезінде пайдаланған ыңғайлы. Онда бір итерацияда әуелгі есептің жоспарына көшу үшін өрнегі қолданылады. Бұл әдіс шектеулер жүйесінде түрлендірулер санын азайтуға, сонымен қатар симплекс-кесте өлшемін кішірейтуге мүмкіндік береді.

  1. Жасанды айнымалылар нені білдіреді ?

Жасанды айнымалы әдісі. Егер сызықты программалау есебінің шектелуі Ax A0 болсын, онда егер bi  0, i = 1, 2,..., m бірлік матрицаны құрайтын бос векторлар базисті құрады, ал оларға сәйкес айнымалылар – бастапқы базистік шешім.

Жалпы жағдайда кейде шектеулер таңбалы болса, мысалы

ai1x1 + ai2x2 +…+ainxn bi , i=1,2,...., m,

онда осы шектеулерді стандартты формалар теңдігіне келтіру үшін бос айнымалыларды шығару керек. Онда есептің кеңейтілген түрі мынадай болады:

a11x1 + a12x2 +…+ a1nxn –1xn+1 + 0xn+2 +…+0xn+m = b1;

   a21x1 + a22x2 +…+ a2nxn +0xn+1–1xn+2 +…+0xn+m = b2;    (1)

. . . . . . . . . . . . . . . . . . . . . .

am1x1 + am2x2 +…+ amnxn + 0xn+1 + 0xn+2 +…–1xn+m = bm.

{xn+1,…,xn+m} бос айнымалылар бұл жағдайда бастапқы базис ретінде қолдануға келмейді, өйткені xn+1<0,…,xn+m<0. Сол себепті (1) теңдікке қосымша жасанды айнымалы xn+m+1,…,xn+m+k қосады. Бұл айнымалылар шынайы есеппен ешқандай ортақ қасиеті жоқ, сондықтан оларды базистен тез арада шығару керек. Ол үшін итерацияның басында жасанды айнымалыларды бүтін функция түрінде максимизациялау өте үлкен теріс коэффициенттерді жазамыз, яғни (–М)-ді M>>ci , (i = 1, 2, ..,m)тұрған жерлерге.

Минимизациялау есебін шешу үшін жасанды айнымалыларды енгізу үшін үлкен оң коэффициенттерді (+М) енгіземіз.

Жасанды айнымалылардың таңбалары xn+m+1,…,xn+m+k  сәйкесінше бос мүшелерінің таңбаларына сәйкес келуі керек. Жасанды айнымалылар бастапқы базистік шешімді қалыптастырады. Симплекс-әдісті қолдана отырып, базистен жасанды айнымалыларды шығару керек. Егер жасанды айнымалыларды базистен шығара алмайтынымызды дәлелдей алсақ, онда бұл есептің шешімі жоқ, яғни оның шектеулері қарама-қарсы.

Егер ағымдағы итерациядағы базистен жасанды айнымалы шығарылса, онда сол келесі симплекс-кестеде сәйкесінше бағанды өшіруге болады, келесі итерацияларда ол қатыспайтын болады.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]