Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
УМКД,Капарова Р.М.,ДМиМЛ,МОК,3,2012-2013.doc
Скачиваний:
29
Добавлен:
01.05.2025
Размер:
9.62 Mб
Скачать

Алгорифмдердің композициясы. Марков алгорифмдердің таралуы және бірігуі. Басқарушы алгорифм. Марковтың тармақталатын алгорифмі. Есептелнтін функциялар.

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

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

І Алгоритмдер суперпозициясы. А мен В екі алгоритмді суперпозициялау барысында бірінші алгоритмнің шығыс сөзі екінші В алгоритмінің кіріс сөзі ретінде қарастырылады, суперпозиция нәтижесі С мына түрде беріледі:

С(р)=В(А(р))

ІІ Алгоритмдерді біріктіру. А мен В алгоритмдерінің бір әріппеде біріктірілуі деп, А мен В алгоритмдерінің анықталу облыстарының қиылысын қамтитын кез келген р сөзін қатар жазылған А(р)және В(р) сөздеріне түрлендіретін сол әріппедегі С алгоритмін айтамыз.

ІІІ Алгоритмдердің тармақталуы. Алгоритмдердің тармақталуы үш А,В және С алгоритмдерінің композициясын білдіреді; сонымен бірге D алгоритмінің анықталу облысы үш бірдей А,В,С алгоритмдерінің анықталу облыстарының қиылысы болып табылады, ал осы қиылыстағы кез келген р сөзі үшін D(р)=А(р), егер С(р)=е; D(р)=В(р), егер С(р)=е, мұндағы е- бос жол.

ІV Алгоритмдер итерациясы. Итерация (қайталану) дегеніміз, кез келген р кіріс сөзі үшін сәйкес С(р) сөзі В алгоритмі түрлендіретін сөз пайда болғанға дейін біртіндеп А алгоритмін бірнеше рет қолдану нәтижесінде алынатын А мен В екі алгоритмінің С композициясы.

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

Түрлендіру мүмкіндігіне қарай Марковтың қалыпты алгоритмі Тьюринг машиналаларына пара-пар екендігінің қатаң дәлелденбеген.

Алгоритмді шешімсіз есептер

Математиктерді алгоритм ұғымын формальдау мәселесімен айналысуға мұқтаж еткен себептердің бірі - оларды шешу алгоритмі бар болуын немесе жоқ болуын кейбір мәселелер үшін анықтауға мүмкіндік беретін тәсілдерді алу қажеттілігі.

Егер есеп үшін алгоритм құрылған болса, онда есеп алгоритм тұрғысынан шешімді. Ал егер құрылмаса, онда екі нұсқа бар:

алгоритм әзірге құрылмаған (не біздің біліміміздің жеткіліксіздігіне, не қандай да бір себептерге байланысты);

алгоритмді құру мүмкін емес, және есеп алгоритм тұрғысынан шешімсіз деп аталады.

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

Есептің алгоритм тұрғысынан шешімсіздігіне екі мысал келтірейік.

1. Алгоритмді тоқтату мәселесі. Кез келген А алгоритмі және бастапқы мәліметтері үшін бастапқы мәліметтері бар А алгоритмінің орындалуы нәтиже беретінін анықтау қажет. Бұдан да тұрпаттырақ: А( ) -ға қолданылып, егер А( ) нәтиже берсе Ақиқатты қайтаратын, ал кері жағдайда Жалғанды қайтаратын Ақиқат, егер А( ) нәтиже берсе, Жалған егер А(а) нәтиже бермеген жағдайда, болатын В алгоритмін құруға бола ма?

Бұл есеп алгоритм тұрғысынан шешімсіз, яғни В алгоритмін құру мүмкін емес.

2. Гильберттің оныншы мәселесі. 1901 жылы Париждегі Халықаралық математикалық конгрессте Гильберт математикалық қоғамның алдында тұрган бірнеше мәселелерді тұжырымдады. Солардың ішіндегі 10-шы мәселе: бірнеше айнымал бүтін коэффициентті кез келген алгебралық теңдеу берілген. Осы берілген теңдеудің бүтін санды шешімі бар ма, соны анықтау керек.

1970 жылы, есептің қойылғанына 70 жыл өткеннен кейін, математик Ю.Матиясевич (ССРО) осы есепті шешетін алгоритмді жасау мүмкін емес екендігін дәлелдеді. Есептің “алгоритм тұрғысынан шешімсіздігі” ұғымын енгізудің практикалық құндылығы түсінікті: алгоритм тұрғысынан шешімсіздігі дәлелденген есептерді компьютерде шешуге тырысудың керегі жоқ.