ТАҒАЙЫНДАУ ТУРАЛЫ ЕСЕПТІҢ МАТЕМАТИКАЛЫҚ МОДЕЛІ



Жұмыс түрі:  Курстық жұмыс
Тегін:  Антиплагиат
Көлемі: 27 бет
Таңдаулыға:   
Кіріспе

Тәжірибеде дискретті программалау әдістерімен шығарылатын есептердің бірі - тағайындау есебі. Халық шаруашылығында, оның ішінде агроөнеркәсіп кешенінде тағайындау есебіне ұқсас есептер көптеп кездеседі. Мысалға, ауыл шаруашылығында бір түрлі техникалармен бірнеше түрлі жұмыстар орындалады, бір жұмысшы бірнеше түрлі жұмыс орындай алады, бірақ бір жұмысшының немесе бір техника түрінің кез келген жұмыста еңбек өнімділігі (жұмыс өнімділігі) немесе берілген уақыт аралығында жұмыс көлемін орындау қабілеті, ақырында әрбір жұмыста олардың тиімділігі әртүрлі болуы мүмкін. Сондықтан техника түрлерін немесе жұмысшыларды тиімді бөліп, әрбір жұмысқа бекітіп, тағайындау маңызды экономикалық есептердің бірі. Мұндай мағынадағы есептер жалпы тағайындау есебі делінеді. Тағайындау есептеріне айнымалылардың теріс болмау шарты жазылмайды.
Тағайындау есебі Тасымалдау есебімен өте жақын екенін байқауға болады. Осы типтегі есептертің математикалық құрамында, жұмысшылар және жұмыс түрлері, жүкті жіберу және қабылдау пунктеріне сәйкес келетіні арқылы байқалса, ал айырмашылығы жұмысшылар саны жұмыс түрлерінің санына тең болуы (бірақ, мұндай жағдай тағайындау есебі үшін міндетті шарт емес), сонымен қатар айнымалылардың екілік типте болуы және олардың жолдар және бағаналар бойынша сомасы бірдей бірге тең болуында.
Егер жұмыскерлер санымен жұмыс түрлерінің саны бірдей болса, онда мұндай есептерді баланысталған дейді де, ал керісінше жағдайда баланысталмаған делінді.
Егер кейбір жұмыстар бірнеше жұмыскерлер арқылы орындалса, бірақ жалпы керекті жұмыскерлер санымен бар жұмысшылар саны тең болса, онда мұндай тағайындау есептері де баланысталған делінеді. Мұндай есептерді ұжымы мен жұмыстарды орындау деп те атауға болады.
Тақырыптың маңыздылығы. Оқыту процесінде компьютерлік математика жүйесін қолдану көптеген есептерді шешеді. Компьютерлік математика жүйесі білім алушылардың оқуға деген ынтасын арттырады, математика, информатика бойынша білімдерін тереңдетеді және кеңейтеді, сондай-ақ олардың ғылыми шығармашылығын дамытуға ықпалын тигізеді. Сондықтан осындай жұмысты іске асыру маңызды деп санаймыз. Мұның практикалық қажеттілігі де айқын.
Зерттеу нысаны. Анығырақ айтқанда, бұл жұмыстың нақты зерттеу нысаны болып транспорттық есептердің ішіндегі тағайындау туралы есептерді Maple жүйеге салу болып табылады.
Жұмыстың мақсаты. Жоғарыда аталғандарға сәйкес жұмыс келесі мәселелерді шешу мақсатын көздейді:
- Тағайындау туралы есептің математикалық моделін құру;
- Тағайындау туралы есептің шешімін табуға арналған Maple кітапханасын әзірлеу.
Дипломдық жұмыстың мақсатына жету үшін келесі міндеттер қарастырылды:
oo Maple пакетінің нысандары мен құрылымынмен танысу;
oo Maple компьютерлік математикасының жүйелерін қолдану;
oo Maple кітапханасын статистикалық талдау;
oo Тағайындау туралы есептің математикалық моделін әзірлеу
Жұмыстың жаңашылдығы. Жұмыста келесі нәтижелер алынған:
1) Бастапқы шарттардың моделі жасалды
2) Математикалық моделге арналған Maple алгоритмі құрылды
3) Maple кітапханасы әзірленді.
Дипломдық жұмыс Maple пакетінің берілгендерінің нысаны мен құрылымы, тағайындау туралы есептің математикалық моделі, тағайындау туралы есептің шешімін табуға арналған maple кітапханасын әзірлеу деген үлкен үш бөлімнен тұрады.

1. MAPLE ПАКЕТІНІҢ БЕРІЛГЕНДЕРІНІҢ НЫСАНЫ МЕН ҚҰРЫЛЫМЫ
1.1 MAPLE- ТІЛ ЖӘНЕ ОНЫҢ СИНТАКСИСІ

Maple тілі - 7-ші Maple - мен байланысқан немесе оның бағдарламалау тілі болып табылады. Оған кіретін барлық құрылғылар (атап айтқанда, операторлары мен функциялары) өте толық деңгейде және ыңғайлы таңдалынған, себебі көптеген типтік математикалық есептерді шешуде тұтынушыдан бағдарламалау тілдері туралы көп білімінің бар болуын қажет етпейді. Қажетті есепті шешу үшін негізінен алгоритм құру жеткілікті және оған қажетті функциялардың жүзеге асуына қажетті функциялар мен Maple тілінің басқа да құрылғыларын таңдау жеткілікті.
Сондай-ақ, Maple-тілі -- 3000 оператордан, негізгі кітапханадан және 7-ші Maple-дің функциялар пакетінен тұратын командалар мен функциялардан тұратын ең қуатты математикалық есептерді бағдарламалау тілдерінің бірі. Сонымен қатар, қазіргі бағдарламалауға қатысты Maple-тілінің бөлігі арнайы белгілер мен бекітілген сөздердің қарапайым жиынтығының көмегімен жүзеге асырылған.
7-ші Maple мүмкіндіктерінің көпшілігі (атап айтқанда, пакеттерге кіретін барлық) осы тілде жазылған. Сондықтан бұл тілді білу маңыздылығы Maple тереңірек біліп-үйренуде анықтаушы болып табылады. Төменде Maple тілі типтік бағдарламалау тілі ретінде сипатталады.
Maple тілінің алфавитінде 26 кішкене латын әріптері (а -дан z-ке дейінгі), 26 үлкен латын әріптері (А-дан Z-ке дейінгі), 10 араб цифрлары (0-ден 9-ға дейінгі) және 32 арнайы символдар (+, -, *, , дәрежеге шығару және тағы да басқа арифметикалық операторлар). Осы арифметикалық операторлардың барлығы осы тарауда қарастырылатын болады. Бес жұп альтернативті символдар (екеуі де бір нәрсені білдіретін) бар:
и** [и ( ] и ) {и (* } и *)
Арнайы бір және құрамдас белгілерге тіл синтаксисінің элементтері жатады:
* % -- алдыңғы операцияның нәтижесін сақтайтын жүйелік айнымалы;
* : -- есептеу нәтижесін шығару ұяшығына шығаруды айқындайтын өрнек есептегіші;
* ; -- қорытынды ұяшығына есептеу нәтижесін шығаратын өрнек есептегіші;
* # -- бағдарламалық түсініктеме көрсеткіші;
* " -- жол шектегіші (мысалы үшін, 'string');
* := -- беру операторы (мысалы үшін, х:=5);
* : ; -- бос оператор;
* :: -- айнымалы типінің көрсеткіші (мысалы үшін, n::integer или z: -.complex);
* \ -- мәнмәтінге байланысты көп мағынасы бар кері бөлу белгісі (backslash белгісі бойынша анықтаманы қараңыз).
Енгізу ұяшықтарына шықпайтын бағдарламадағы ұсыныстар # таңбасынан кейін орнатылады. Онда барлық таңбаларды кодтық кестелерде қолдануға болады, бұл кириллицаны пайдаланатын орыс тіліндегі түсініктемелерді енгізгенде маңызды. Соңғы нысандарды (аттарды) идентификаторлар үшін пайдалануға болмайды.

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

and
break
by
catch
description
do
done
el if
else
end
error
export
fi
finally
for
from
global
if
in
intersect
local
minus
mod
module
next
not
od
option
options
or
proc
quit
read
return
save
stop
then
to
try
union
use
while

1.2 Maple компьютерлік математика жүйесін қолдану

Maple-бағдарламалық пакет, компьютерлік алгебра жүйесі. Waterloo Maple Inc компаниясының өнімі болып табылады. 1984 жылдан бастап күрделі математикалық есептеулерге, деректерді визуализациялауға және моделдеуге бағытталған бағдарламалық өнімдерді шығаратын (Канада) балалар оқу үдерісінде нақты ғылымдарға, тереңірек ойлауды қажет ететін мектеп пәндеріне қызығушылық танытады. Білім алушылардың осы пәндерді оқуға деген ынтасын арттыру үшін соңғы уақытта жаңа ақпараттық технологиялар мен Maple компьютерлік математика жүйелері табысты қолданылып келеді. Maple - математика саласындағы кеңейтілген мүмкіндіктері бар кешенді компьютерлік жүйе. Ол интерактивті алгебра, математикалық талдау, дискреттік математика, графика, сандық есептер және математиканың басқа да көптеген салалары үшін бағдарламалық құралдарды қамтиды. Ол сондай-ақ үлкен кітапханасындағы енгізілген функциялары мен операцияларының арқасында математикалық бағдарламаларды әзірлеуді жылдамдататын бірегей бағдарламалық орта болып табылады.
Оқыту үдерісінде компьютерлік математика жүйесін қолдану көптеген есептерді шешеді. Компьютерлік математика жүйесі оқушылардың оқуға деген ынтасын арттырады, математика, информатика бойынша білімдерін тереңдетеді және кеңейтеді, сондай-ақ олардың ғылыми шығармашылығын дамытуға ықпалын тигізеді.
Функциялардың графиктерін салуға мысалдар:
1. y=tgx функциясының графигі
plot(tan(x), x=-2*Pi..2*Pi,y=-2..2);

y=tgx функциясының графигі

1.3 Maple- кітапханасының статистикалық анализі

Өз Maple-процедуралар кітапханасын құру арқылы жоғарыда аталған әдістерді немесе қандай да бір басқа тәсілмен, әрине, оны тиімділеу есебі, атап айтқанда, онда қамтылған құрылғыларды және олар пайдаланатын компьютердің негізгі ресурстарын пайдалану жиілігін ашу мақсатында туындайды. Бұл тұрғыда пайдаланушы кітапханаларын оңтайландыру мәселесі өте өзекті. Осы мақсаттар үшін L кітапхана бойынша негізгі статистиканы жинауды және кейінгі талдау үшін статистиканы қайтаруды қамтамасыз ететін StatLib (L) [13] процедурасы жеткілікті пайдалы болып табылады. Ең алдымен, бұл процедура талданатын L кітапханасы Maple бас кітапханасымен LIB каталогында орналасқан.
StatLib(L) процедурасы L бірінші міндетті аргументі ретінде пакеттің бас кітапханасымен қисынды байланысты пакеттің бас каталогының LIB ішкі каталогында орналасқан Maple кітапхананың атын пайдаланады. Оның басқа формальды аргументтері (3-ке дейін) қосымша болып табылады және олардың мәндерінің кортеждерін тағайындау: StatLib (L) - кітапхана құралдары бойынша статистиканы жинауды бастау l жалпы; StatLib(L, 0) - statlib (L) кітапханасы бойынша статистикалық ақпараты бар барлық файлдарды жою L бірінші міндетті аргументі ретінде пакеттің бас каталогының LIB ішкі каталогында орналасқан кітапхана Maple атын пайдаланады, ол пакеттің бас кітапханасымен қисынды байланысты. Оның басқа формальды дәлелдері(3 - ке дейінгі мөлшерде) қосымша болып табылады және олардың мәндерінің кортеждерін тағайындау: StatLib(L) - кітапхана құралдары бойынша жалпы l статистиканы жинауды бастау; StatLib (L, 0) - кітапхана бойынша статистикалық ақпараты бар барлық файлдарды жою; StatLib(L, 1) - нәтижелерін сақтай отырып L кітапхана бойынша статистика жинағын алып тастау; StatLib(L, P) - L кітапханасынан P процедурасы бойынша статистика жинағын жинауға бастамашылық ету; StatLib (L, T, 2) - L кітапхана бойынша немесе оның P процедурасы бойынша жиналған статистиканы берілген t бөлінісінде қайтару; StatLib(L, T, 2, m) - жиналған статистиканы l кітапхана бойынша немесе оның P процедурасы бойынша m санымен сипатталатын берілген қимада қайтару; StatLib(L, T, N) - жиналған статистиканы N берілген процедурасы бойынша талап етілетін қимада қайтару {calls, bytes, depth, maxdepth, time}; StatLib (L, abend) - сыни қателер туындаған кезде StatLib рәсімін аяқтау.
Бір нақты l аргументі бар StatLib(L) процедурасын шақыру l кітапхана процедурасын құрайтын шақырулар бойынша статистиканы жинау үдерісін бастайды. Бұл жинау үдерісі statlib(L,1) процедурасын шақыру арқылы тоқтатылуы мүмкін, ол пакетпен жұмыс істеудің кейінгі сеанстарында статистиканы жинауды жалғастыру қажет болған жағдайда міндетті, өйткені ол жиналған статистиканы L кітапхана каталогында орналасқан бес файлда сақтайды. Бұл деректер файлдарының атаулары бірдей "$@_ " - префикс. Екінші нақты аргументтің нөлдік мәні бар процедураны шақыру осы l кітапхана үшін статистика жинау файлдарын жою арқылы NULL мәнін қайтарады. Бұл қоңырауды l кітапхана каталогында оның нәтижелерін сақтау мақсатында жаңа процедураларды профильдеу процесін қайта растау ұсынылады. Бұл ретте бұрын жиналған ақпараты бар деректердің қолданыстағы статистикалық файлдары басқа каталогта алдын ала сақталуы немесе басқа аттарының астында қалуы мүмкін. StatLib(L, P) процедурасын шақыру L кітапхананы құрайтын және олардың p-тізімімен анықталатын процедураларды шақыру бойынша статистиканы жинау үдерісіне бастамашылық етеді. Бұл ретте, кәсіби сұралатын процедуралар міндетті түрде L кітапханаға тиесілі болмауы керек - олар пакеттің негізгі кітапханасымен логикалық байланысқан кез келген кітапханада болуы немесе ағымдағы Maple сеансында белсенді болуы мүмкін. Әйтпесе, тиісті диагностиканы қайтарумен қате жағдай туындайды. Бұл барлық l кітапханасына жалпы, сондай-ақ кітапхананы құраушы процедуралар бойынша (осы үрдістерді қоспай-ақ), сондай-ақ ағымдағы сеанстың кез келген белсенді немесе қол жетімді процедураларына талдау жасауға мүмкіндік береді. Рәсім T = {calls, bytes, depth, maxdepth, time} негізгі сөздерімен анықталатын келесі бес тілікте статистикалық ақпаратты қайтаруды қамтамасыз етеді: (1) шақырулар саны, (2) пайдаланылатын жад көлемі, (3) Тереңдігі және (4) салынудың максималды тереңдігі, сондай-ақ (5) пайдаланылған уақыт сек. StatLib(L, T, 2) процедурасының шақыруы L кітапхана {немесе StatLib(L, P) қоңырауы кезінде P-аргументпен анықталған процедуралардың барлық кәсіби процедуралары үшін Сандық сипаттамалар массивін қайтарады. Мұндай жолдар болмаған жағдайда, рәсім lack-мәнді қайтарады, қазіргі уақытта кәсіби процедуралардың бірде-бірінің m-ден кем емес мәні бар тиісті T-қимаға сәйкес сипаттамасы жоқ екендігі туралы хабардар етеді.

2. ТАҒАЙЫНДАУ ТУРАЛЫ ЕСЕПТІҢ МАТЕМАТИКАЛЫҚ МОДЕЛІ
2.1 Тағайындау туралы есептің қойылуы

Айталық, n тұтынушылар болсын (машиналар, механизмдер, адамдар және тағы басқа), олар n жұмыс істейтін болсын. Пайдалылығы белгілі (өнімділігі, пайдасы) немесе жұмысты -ші жұмыстың () -ші орындаушының () шығыны.
Әрбір орындаушы тек бір жұмысқа ғана тағайындалуы мүмкін және әрбір жұмысқа тек бір орындаушы бекітілуі тиіс болған жағдайда барынша пайдалы немесе ең аз шығындарға қол жеткізу үшін орындаушыларды жұмысқа тағайындау қажет.
Көрнекілік үшін, тағайындау туралы есептің шартын кестемен көрсетуге болады (3.1-кесте).

3.1 - кесте

Орындаушылар
Жұмыстар
Орындаушылар саны

...

...

1

...

1
...
...
...
...
...
...

...

1
Жұмыс саны
1
1
...
1

Тағайындау туралы есептің математикалық моделін құрамыз. айнымалыларын енгіземіз - -ші жұмысты -ші орындаушыны тағайындау фактісі (, егер тағайындалса және , егер тағайындалмаса).

матрицасын тағайындау матрицасы деп атаймыз.

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

(3.1)
Жұмыстың саны орындаушылар санына тең болған жағадайда, (3.2) шектелер жүйесін құрамыз.

(3.2)

Тағайындау туралы есеп - транспорттық есептің және , болғандағы дербес жағдайы.

Тағайындау туралы есептің ашық және жабық модельдері

Егер орындаушылар саны жұмыс санына тең болса, онда Тағайындау туралы есептің моделі жабық (теңдестірілген) деп аталады. Әйтпесе, есеп моделі ашық (теңгерілмеген) деп аталады.
Математикалық модель құру үшін және ашық модельді тағайындау туралы есепті шешу үшін оны жабық модельге айналдыру қажет.
Мысалы, егер жұмыс саны аз болса, онда фиктивті жұмысты енгізу қажет, сонымен қатар есеп матрицасына баған қосылады және ол . Егер айнымалы болса, онда то исполнитель орындаушы жұмысты орындайтын болады.
Осыған сәйкес, егер орындаушылар саны аз болса, онда фиктивті орындаушыны енгізу қажет, сонымен қатар есеп матрицасына жол қосылады және ол . Егер айнымалы болса, онда жұмыс орындалмайды.
(3.1) мақсатты функция және (3.2) шектеу жүйесі тағайындау туралы теңдестірілген есептің математикалық моделі болып табылады.

0.2 Тағайындау туралы есептің математикалық моделі

1) Егер есеп үлгісі ашық болса, онда тағайындау туралы есептің сәйкесінше жабық моделіне өту.
2) матрицасының әрбір сызығында (жол және баған) кем дегенде бір нөлді алу мақсатында матрицаны түрлендіру. Бұл үшін
а 1) Егер максимум есебі (яғни -пайдалылық) болса, онда матрицаның әрбір бағанында осы бағанның элементтері кезекпен шегерілетін ең жоғарғы элемент таңдалады және айырмасы олардың орнына жазылады;
а 2) егер минимум есебі (яғни - шығындар) болса, онда матрицаның әрбір бағанында осы баған элементтерінен кезекпен шегерілетін ең аз элемент таңдалады және айырмасы олардың орнына жазылады;
б) матрицаның әрбір жолында ең аз элемент таңдалады, ол осы жолдың элементтерінен кезекпен шегеріледі және айырмасы олардың орнына жазылады.
3) матрицада ең жоғары мүмкін тәуелсіз нөлдер жүйесін табу және оларды (*) жұлдызшамен белгілейміз. Бұл үшін
а) бірінші бағанада еркін нөлді таңдаймыз, келесі бағаналарда, егер ол белгіленген бір жолда болмаса ғана нөлді белгілеу;
б) егер тәуелсіз нөлдер саны n тең болса, онда есеп шешілді және оңтайлы тағайындаулар тәуелсіз нөлдер орындарымен анықталады, ал жиынтық пайдалылық (шығындар) оңтайлы тағайындауларға сәйкес жиынтықтаумен анықталады. Әйтпесе, біз ең мүмкін тәуелсіз нөлдер жүйесін аламыз. Ол үшін тәуелсіз нөлдер бар матрицаның бағандарын "+" белгісімен ерекшелеу керек және ерекшеленбеген элементтерді қарастырамыз.
:: Егер олардың арасында нөлдер болмаса, онда тәуелсіз нөлдер жүйесін ұлғайтуға болмайды. 4-тармаққа өту.
:: * Бөлінбеген нөлдер болған кезде. Егер бұл жолда Жұлдызшамен белгіленген нөл болса, оң жақта "+" белгісімен жолды бөліп, Жұлдызшамен нөл бар бағанды бөлу белгісін алып тастаймыз. Бұл іс-қимылдарды әзірге істейміз
o Барлық нөлдер таңдалып алынады (баған немесе жолда). 4-тармаққа өту;
o штрих бар нөлмен жол жұлдызша жоқ. Соңғы белгіленген нөлден басталатын элементтер тізбегін штрих және баған бойынша Жұлдызшамен нөлге, содан кейін сол жолда штрих бар нөлге және т. б. саламыз. Содан кейін тізбекке кіретін жұлдызшалары бар нөлдерді алып тастаймыз, ал штрихтар бар нөлдерді жұлдызшалармен ауыстырамыз. Матрицада жұлдыздардан басқа барлық бөлу белгілерін алып тастаңыз. Бұл ретте тәуелсіз нөлдер саны бірлікке артады. 3б тармағына өту.
4) матрицадағы нөлдер санын көбейту. Бұл үшін бөлінбеген сызықтардағы (жолдар мен бағандар) элементтердің арасында бөлінбеген элементтерден алынып, екі рет бөлінген элементтерге (жолда және бағанда) қосылатын ең аз таңдалып алынады. Матрицадағы барлық бөлу белгілерін алып тастаңыз. 3-тармаққа өту.
3.1-мысал. Алты орындаушы алты жұмысты орындауы тиіс (әрқайсысы бір жұмыстан). пайда (ден. i -ші орындаушы j-жұмысты орындағанда белгілі:

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

Есептерді шектеу жүйелері:

Есепті венгерлік әдіспен шешеміз.
Орындаушының саны жұмыстың санына тең болғандықтан, модель жабық болып табылады (1- алгоритмді қараңыз).
матрицасын әрбір сызықта (жол және бағанада) кем дегенде бір нөлді алу мақсатында түрлендіреміз (алгоритмнің 2-тармағын қараңыз). Ол үшін әрбір бағанада матрицалар ең үлкен элемент таңдалады (3.2-кесте), одан осы баған элементтері кезекпен азайтылады және айырмасы олардың орнына жазылады (3.3-кесте)):
3.2-кесте

2
8
4
3
5
6

7
3
5
2
7
4

5
2
6
5
8
6

9
7
2
6
4
9

3
8
6
4
2
5

7
9
3
1
7
6

9
9
6
6
8
9

3.3-кесте
7
1
2
3
3
3
2
6
1
4
1
5
4
7
0
1
0
3
0
2
4
0
4
0
6
1
0
2
6
4
2
0
3
5
1
3

Содан кейін матрицаның әрбір жолында ең кішкентай элемент таңдалады (3.4-кесте), ол осы жолдың элементтерінен кезекпен азайтылады және айырмасы олардың орнына жазылады (3.5-кесте)):

3.4-кесте

7
1
2
3
3
3
1
2
6
1
4
1
5
1
4
7
0
1
0
3
0
0
2
4
0
4
0
0
6
1
0
2
6
4
0
2
0
3
5
1
3
0
3.5-кесте

6
0
1
2
2
2
1
5
0
3
0
4
4
7
0
1
0
3
0
2
4
0
4
0
6
1
0
2
6
4
2
0
3
5
1
3

Сонымен, матрицада әр сызықта кем дегенде бір нөл алынды (3.5-кесте).
Матрицада тәуелсіз нөлдер жүйесін табамыз (алгоритмнің 3а тармағын қараңыз) (3.6 - кесте) және тәуелсіз нөлдердің барынша мүмкін жүйесін аламыз (алгоритмнің 3б тармағын қараңыз), (3.6-кесте-3.7-кесте)):

3.6-кесте
+
+
+

+

6
0*
1
2
2
2
1
5
0*
3
0
4
4
7
0
1
0*
3
0*
2
4
0
4
0
6
1
0
2
6
4
2
0
3
5
1
3
3.7-кесте

+
+

+

6
0*
1
2
2
2

1
5
0*
3
0
4

4
7
0
1
0*
3

0*
2
4
0
4
0'
+
6
1
0
2
6
4

2
0
3
5
1
3

Сонымен, барлық нөлдер белгіленген. Алгоритмнің 4 тармағына өтіңіз. Матрицадағы нөлдер санын көбейтеміз. Ол үшін белгіленбеген сызықтардағы элементтердің арасында (3.7-кестеде майлы шрифтпен анықталған), ең кішкене санды таңдап аламыз, ол сан 1-ге тең, ол белгіленбеген элементтерден алынады және екі рет белгіленген элементтерге қосылады (3.7-кестеде асты сызылады). Матрицадағы барлық белгіленген белгілерін алып тастаймыз (3.8-кесте):
3.8-кесте
5
0
1
1
2
1
0
5
0
2
0
3
3
7
0
0
0
2
0
3
5
0
5
0
5
1
0
1
6
3
1
0
3
4
1
2

Алгоритмнің 3 тармағына өтеміз.
Матрицада тәуелсіз нөлдер жүйесін табамыз (алгоритмнің 3а - тармағын қараңыз) (3.9-кесте) және тәуелсіз нөлдердің ең жоғары мүмкін жүйесін аламыз (алгоритм 3б-тармағын қараңыз) (3.9-кесте-3.14-кесте)):
3.9 -кесте
+
+
+
+

5
0*
1
1
2
1
0*
5
0
2
0
3
3
7
0*
0
0
2
0
3
5
0*
5
0
5
1
0
1
6
3
1
0
3
4
1
2
3.10 -кесте

+
+
+

5
0*
1
1
2
1

0*
5
0
2
0'
3
+
3
7
0*
0
0
2

0
3
5
0*
5
0

5
1
0
1
6
3

1
0
3
4
1
2

3.11-кесте

+

+

5
0*
1
1
2
1

0*
5
0
2
0'
3
+
3
7
0*
0
0'
2
+
0
3
5
0*
5
0

5
1
0
1
6
3

1
0
3
4
1
2

3.12 -кесте

+

5
0*
1
1
2
1

0*
5
0
2
0'
3
+
3
7
0*
0
0'
2
+
0
3
5
0*
5
0'
+
5
1
0
1
6
3

1
0
3
4
1
2

3.13-кесте

+

5
0*
1
1
2
1

0*
5
0
2
0'
3
+
3
7
0*
0
0'
2
+
0
3
5
0*
5
0'
+
5
1
0'
1
6
3

1
0
3
4
1
2

Штрихі мен нөлі бар жол жұлдызшалы нөлі жоқ (3.13-кесте). Элементтердің тізбегін құрайық, ол соңғы белгіленген нөлден бастап штрих және баған бойынша жұлдызшалы нөлге, содан кейін сол жолда штрихы бар нөлге (3.13-кестеде тізбек сұр түспен бөлінген) өтеді. Содан кейін тізбекке кіретін жұлдызшалары бар нөлдерді алып тастаймыз, ал штрихтары бар нөлдерді жұлдызшалармен ауыстырамыз. Бұл ретте тәуелсіз нөлдер саны бірлікке артты. Матрицада жұлдызшалардан басқа барлық белгіленген белгілерін алып тастаймыз (3.14-кесте).
Штрихі мен нөлі бар жолда жұлдызшалы нөлі болмайды (3.13-кесте). Элементтердің тізбегін құрайық, ол соңғы белгіленген нөлден бастап штрих және баған бойынша жұлдызшалы нөлге өтеді, содан кейін сол жолда штрихы бар нөлге ... жалғасы

Сіз бұл жұмысты біздің қосымшамыз арқылы толығымен тегін көре аласыз.
Ұқсас жұмыстар
Excel-де шешімді іздеу қондырмасының көмегімен сызықтық программалау есептерін шешу технологиясы
Құрама есептерді іріктеу және оқыту әдістемесі
Бастауыш сынып оқушыларының математика пәніне қызығушылығын арттыру (анализ және синтез әдісі негізінде)
«Транспорттық тапсырма»
Бастауыш сыныпта мәтіндік есептерді талдау әдістемесі
Дискреттік модельдеу
Физикадан есептер шығару
Компьютерлік технология көмегімен оптимизациялау әдістері
Тасымалдау есебі ұғымы
Бастауыш сынып оқушыларының құрама есептерді шешу біліктерін қалыптастыру
Пәндер