Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Казо диплом — копия.docx
Скачиваний:
41
Добавлен:
15.02.2016
Размер:
573.08 Кб
Скачать

1.Сызықтық программалаудың негізгі есептері.

1.1 Сызықтық программалау есептері.

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

Соңғы жылдар бедерінде халық шаруашылығын тиімді басқаруда математикалық әдістер мен есептеуіш техникалары жиі қолданылуда. Осының негізінде еліміздің экономикасын жоспарлы түрде дамытып, еңбек тиімділігін арттырудың жаңа мүмкіндіктері пайда болды. Осы ретте қол жеткен мүмкіндіктерді қысқаша ғана атап айтсақ, олар: экономиканың даму жоспары; шаруашылықты басқару шешімдерінің нақтылығы мен дәлелділігінің артуы; жоспарді іс жүзінде асыру барысында жасалынатын бақылау процестеріне ерекше жылдамдық беру, т.б.

Адамзат қоғамы дами бастауынан үнемділік, тиімділік деген мәселелер бірге жасасып келеді. Үнемділік, тиімділіктің математикалық түбірі функциялардың экстремум мәндерімен тығыз байланысты. Экономикалық есептердің алғашқы үлгісі гректерде кездеседі. Ұзындығы белгілі l доғамен шектеуге болатын ең үлкен ауданды табу керек. Ең үлкен және ең кіші мәндерді табу есептері экономикалық мәселелерде жиі кездеседі. Мұндай экономикалық есептерді экономикалық-математикалық мделдеу пәні қарастырады.

Экономикалық-математикалық моделдеу математикада қарастырылатын экстремалдық есептер курсының бөлімі болып табылады. Экономикалық есептер үш топқа бөлініп қарастырылады: сызықтық программалау есептері, сызықтық емес программалау есептері және динамикалық программалау есептері.

Бұл көптен бері құлаш жайып, дамып келе жатқан ғылым. Бұл салада алғашқылардың бірі совет экономисті А.Н.Толстой (1930ж) еңбектері. Венгер математигі Б.Эгервари (1931ж) “таңдау проблемасы” есебінің математикалық қойылымын қарастырып, сызықтық программалау есебінің шешімін тапқан. Бұл есепті шешу әдісі осы ғалым құрметіне венгер әдісі деп аталады. Совет ғалымдары Л.В.Канторович, В.С.Немчинов, В.В.Новожилов, А.Л.Луръе және т.б. математиктер мен экономистердің жұмыстарында сызықтық және сызықтық емес программалаудың математикалық теориясы экономикалық проблемаларды зерттеудің әдістері ретінде дамып отырды. Бұл салада тек совет ғалымдары емес сонымен қатар басқа елдер ғалымдарының да атқарған қызметі мол. Солардың ішінде америка ғалымы Хичкок (1941ж) транспорт есебінің берілуін қойды, Данциг (1949ж) сызықтық программалау есебін шығарудың симплекс әдісін жасады. Сызықтық және сызықтық емес программалау есептерінің шығару әдістері Форд, Фалкерсон, Кун, Ламке, Гасс, Чарнес, Бил еңбектерінде берілді. Толық зерттелген есептер сызықтық программалау есептері. Динамикалық программалау есептері үлкен қарқынмен өрістеп келеді.

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

Сызықтық программалау есептерінің жалпы түрі былай жазылады.

Берілген

(1.1.1)

мақсат функциясына минимал мән әперетін және мына теңсіздіктерді:

(1.1.2)

(1.1.3) қанағаттандыратын

векторын табу.

Бұл жердегі берілген тұрақты сандар, оның үстіне m < n

Жоғарыда келтірілген мысалдарға сәйкес, (1.1.2), (1.1.3) теңсіздіктерін есептің шектеуіш шарты деп, ал (1.1.1) сызықтық формасын есептің мақсат функциясы деп атайды.

Сызықтық программалау есептерінде барлық деп жорамалдауға болады, өйткені олардың ішінде теріс сандар кездесетін болса, онда сәйкес теңдеуді (-I) көбейту арқылы ді оң санға айналдыруға болады.

Жеке мысалдарда есептің негізгі (1.1.2) щарты бірнеше түрде берілуі мүмкін. Мысалы, есептің негізгі теңсіздіктері тек қана түрінде немесе түрінде жазылуы мүмкін. Сол себептен,есептің негізгі теңсіздіктерініңформасына қарай сызықтық программалау есептерін бірнеше түрге бөлуге болады.

Егер сызықты программалау есептері мына түрде берілсе:

(1.1.4)

(1.1.5)

(1.1.6)

онда бұндай мысалды сызықтық программалау есебінің канон түрі деп атайды.

Егер сызықтық программалау есептері мына түрде берілсе:

онда мұндай мысалды сызықтық программалау есебінің стандартты түрі деп атайды.

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

Онда осы теңсіздікке белгісізін қосу арқылы оны теңдікке айналдырамыз, яғни

осы теңсіздікті теңдеуге айналдырушы белгісізін есептің қосымша белгісізі деп атайды.

Енді есептің негізгі шарты теңдеу түрінде берілсін:

онда осы теңдеуді екі теңсіздіктер түрінде жазуға болады, яғни

соңғы теңсіздіктердің екіншісін (-I) көбейтіп, кез-келген теңдеудің төмендегі екі теңсіздіктер түрінде жазылатынын көреміз:

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

Енді сызықтық программалау есептерін бір түрден екінші түрге көшіруге мысал қарастыралық.

Берілген мысалды сызықтық программалаудың канон түріне келтір.

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

Егер сызықтық программалау есебінің негізгі шарты (1.1.5) теңдеулер системасы түрінде беріліп, ал белгісіздерінің кейбіреулері үшін (1.1.6) теңсіздігі орындалмайтын болса, онда ол мысал канон түріндегі есепке жатпайды. Осындай есептерді толық канон түріне келтіру үшін оның барлық белгісіздері (1.1.3) шартын қанағаттандыратындай жағдай жасау қажет.

1.2 Сызықтық программалаудың негізгі теоремалары.

Сызықтық программалаудың негізін құрайтын теоремалармен танысайық:

1-теорема. Сызықтық программалау есебінің шешімдерінің жиыны – дөңес.

Дәлелдеу. Сызықтық программалау есебінің шешімінің сызықтық комбинациясы да сол есептің шешімі болатынын дәлелдеу қажет. Ол үшін векторлары сызықтық программалау есебінің шешімдері делік. Олай болса

,

және

,

Енді осы жоспарлардың кез-келген сызықтық комбинациясын қарастыралық:

,

Осы жоспардың есептің шешімі болатынын көрсетелік. Ол үшін мына амалдарды орындаймыз.

бұдан AX=B екендігі шығады.

Жорамалымыз бойынша

болғандықтан . Демек теорема дәлелденді.

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

Дәлелдеу. Теореманың шарты бойынша сызықтық программалау есебінің анықталу облысын төбелерінің саны шекті көпжақ құрайды. Жазықтықта көпжақтың көпбұрыш болатыны белгілі. Теореманың дәлелдеуін жазықтықта қарастыралық. Көпбұрышты Д – деп, ал оның шет нүктелерін деп белгілейік. Есептің оптимал шешімі болсын (сурет 1). Олай болса кез-келген X үшін болады.

сурет 1

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

бұл жердегі

бізде сызықтық функционал болған себепті:

Барлық ішіндегі ең кішісін тауып, оны m-ге тең делік. Ал барлық ішіндегі ең кіші мәні үшін орындалсын делік. Демек

Енді соңғы өрнектегі барлық - ді ге ауыстырсақ, онда мынадай теңсіздік аламыз:

яғни

Теореманің шарты бойынша оптимал жоспар. Ал соңғы теңсіздік көпбұрыштың шеткі нүктесінде басқа оптимал шешім болатынын көрсетеді. Бұл қарама-қайшылық дің шет нүкте екенін дәлелдейді.

Енді осы теореманың екінші жартысын дәлелдейік. Ол үшін функциясы бірнеше нүктеде минимал мән қабылдайды делік. Ол нүктелерді біз деп белгілейік. Демек

Енді X нүктесі осы нүктелердің дөңес сызықтық комбинациясы делік, яғни

функционалдың осы нүктедегі мәнін қарастырамыз:

Бұдан нүктелерінің дөңес сызықтық комбинациясының да есептің минимал мәнін беретінін көрдік. Теорема дәлелденді.

3-теорема. Егер k(k=n) өзара тәуелсіз векторлар системасы берілген болып, олар үшін теңдігі барлық тар үшін орындалса, онда векторы есептің анықталу облысын беретін көпжақтың шеткі нүктесі болады.

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

Берілген векторының n-k компоненті нөлге тең болғандықтан, ал векторларының компоненттерінің теріс болуы мүмкін емес екенін және 0<<1 екенін ескерсек, онда векторларының да n-k компоненттері нөлге тең болады. Демек

Жорамалдауымыз бойынша осы екі нүкте есептің анықталу облысында жатыр. Демек олар үйлесімді жоспарлар. Олар үшін мынадай теңдіктер:

орындалады. Осы теңдіктерді векторлар түрінде жазсақ, онда:

осы екі теңдеудің айырымы:

теореманың шарты бойынша векторлар системасы сызықтық тәуелсіз. Демек соңғы теңдік тек қана

болғанда орындалады.

Бұдан

екені шығады. Басқа сөзбен айтқанда, X нүктесін екі шеткі нүктенің сызықтық комбинациясы түрінде бейнелеуге болатынын аламыз. Бұрыш нүктесінің (шет нүктенің) анықтамасын еске түсірсек, онда X нүктесінің шет нүкте екенін аламыз. Сонымен теорема дәлелденді.

4-теорема. Егер шеткі нүкте болса, онда барлық оң

болатын терге сәйкес келетін векторлар өзара сызықтық тәуелсіз.

Дәлелдеу. X векторының алғашқы компоненті нөлге тең емес делік. Олай болса алғашқы векторлары үшін

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

(1.2.2)

теңдігі орындалады. Теореманың шарты бойынша

Кез-келген санын алып, оны (1.2.2) теңдеуіне көбейтеміз деодан шыққан қорытындыны теңдеуіне бірінші, қосу, сосын алу нәтижесінде мынадай теңдеулер аламыз:

Соңғы теңдеулер системасы теңдеуінің екі шешімі бар екенін және олардың

тең екенін көрсетеді. Бұл жерде барлық болғандықтан ді және векторларының барлық компоненттері оң болатындай етіп таңдап алуға болады. Бұл жағдайда мен жоспар болады, ал

Демек X векторы басқа екі нүктенің сызықты комбинациясы түрінде бейнеленіп отыр. Бұл жағдай теореманың шартында айтылған, X шеткі нүкте деген шартқа қайшы келеді. Демек X шеткі нүкте (бұрыш нүктесі).

1.3 Сызықтық программалау есептерін шешудің графиктік әдісі.

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

Сызықтық программалау есебі екі өлшемді кеңістікте берілсін, яғни шектеулері екі айнымалыдан болсын

(1.3.2)

(1.3.3)

Жүйе (1.3.2), (1.3.3) үйлесімді, шешімдер көпбұрышы шектеулі делік. Әрбір теңсіздік (1.3.2), (1.3.3) жарты жазықтықты шеттік түзулерімен , , бірге анықтайды. Сызықтық функция (1.3.1) Z=h мәніндегі түзулерді береді; . Шектеулер жүйесінің шешімдер көпбұрышын (1.3.2) және сызықтық функцияның (1.3.1) Z=0 мәніндеі графигін тұрғызайық. Онда қойылған сызықтық программалау есебіне мынадай геометриялық мағына беріледі. тірек түзуі және мұнда функция Z min мәнін қабылдайтын шешімдер көпбұрышының нүктесін табу керек.

мәндері N = () векторы бағытында өсетіндіктен, Z=0 түзуін N бағытында өзіне-өзін параллель жылжытамыз.

Сурет 1-ден шешімдер көпбұрышының екі тірек түзуі (А және С нүктелерінде) болатындығын, әрі min мәні қабылданатын нүктесінің координаталарын АB және AE түзулерінің теңдеулер жүйесін шешу арқылы табу керектігін көреміз.

Егер шешімдер көпбұрышы шекеусіз облыс болса, екі жағдай мүмкін.

1 – жағдай. түзуі N векторы бағытында немесе оған қарама-қарсы бағытта қозғала отырып шешімдер көпбұрышын кесіп отырады және бірде-бір нүктесінде оған тірек болмайды. Бұл жағдайда сызықтық функция шешімдер көпбұрышында жоғарыдан да, төменнен де шектеусіз (сурет 2).

2 – жағдай. Түзу қозғала отырып, шешімдер көпбұрышына тірек болады (сурет 3). Онда облыс түріне байланысты сызықтық функция жоғарыдан шектеулі және төменнен шектеусіз (сурет За), төменнен шектеулі және жоғарыдан шектеусіз (сурет 3б) немесе жоғарыдан да, төменнен де шектеулі (сурет 3в) болуы мүмкін.

сурет 3

Мысалдар.

  1. Шикізатты пайдалану есебі.

Екі түрлі , Р2 өнім шығару үшін үш түрлі шикізат қолданылады. Шикізат қорлары, әрбір өнімнің бір өлшемі үшін жұмсалатын әрбір шикізат шамасы және өнімнің бір өлшемін өткізуден түсетін пайда шамасы кестеде көрсетілген. Өнімді max пайда алатындай етіп, ұйымдастыру қажет.

Шикізат

түрлері

Шикізат

Қоры

Өнім өлшемін жасауға жұмсалатын шикізат мөлшері

6

1

1

10

3

1

20

2

5

Өнім өлшемінен түсетін пайда

10

8

Шешуі. -ден , Р2 -ден х2 мөлшерінде өнімдер дайындалсын. Өнімнің бір өлшем шамасын дайындауда жұмсалатын шикізаттар мөлшерін жөне олардың қорларын: ескерсек келесі шектеулер жүйесін аламыз

Теңсіздіктер жұмсалатын шикізаттар қордағы барынан аспайтындығын көрсетеді.

Есептің мақсаты, өнімдерді өткізуден түсетін max пайданы, екі айнымалының және х2 функциясы деп қарастырамыз. P1 өнімінің х1 мөлшері өткізгенде 10х1, Р2 өнімінің х2 мөлшері өткізгенде 8х2, барлығы, қосындыда Z=10x1+8x2 (теңге) пайда келтіреді. Сонымен, шектеулер жүйесінің

сызықтық функция Z=10x1+8x2max мәнін қабылдайтын нақты шешімдерін табу керек. Шешімдер көпбұрышын шекаралық түзулер арқылы

,

тұрғызамыз. Ол үшін кезкелген нүктені, мысалы координаталар бас нүктесін алып, теңсіздік қай жарты жазықтықты беретінін анықтаймыз. Теңсіздік жарты жазықтығын белгілеу арқылы, шешімдер көпбұрышын ОАВС құрамыз.

N = (10; 8) = 2(5; 4) векторын және (Z) түзуін тұрғызамыз. (Z) түзуін өзіне-өзін параллель N векторы бағытында жылжыта отырып, шешімдер көпбұрышының В нүктесінде тірек түзуіне айналып, бұл нүктеде функция Zmax мәнін қабылдайтынын көреміз.

В нүктесі және түзулердің қиылысында жатқандықтан, оньң координаталарын тендеулер жүйесін

шешіп табамыз . Есептің оптималдық шеімі , Zmax.

Сонымен 47,69т. көлеміндегі пайда келтіру үшін мөлшерінде , мөлшерінде Р2 өнімдерін шығаруды жоспарлау тиімді.