Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
лекци1.doc
Скачиваний:
0
Добавлен:
01.04.2025
Размер:
457.22 Кб
Скачать

5. Алгоритми

Під алгоритмом розумітимемо впорядковану та скінчену послідовність заданих дій, які однозначно визначені і можуть бути здійснені за допомогою сучасних ЕОМ за прийнятний для даного завдання час.

Термін "алгоритм" відбувається від імені узбецького математика Аль-хорезмі, який ще в IX столітті запропонував прості арифметичні алгоритми. У математиці і кібернетиці клас завдань певного типу вважається вирішеним, коли для її вирішення встановлений алгоритм. Знаходження алгоритмів є природною метою людини при рішенні ним різноманітних класів завдань. Відшукання алгоритму для завдань деякого даного типу пов’язане з тонкими і складними міркуваннями, що вимагають великої винахідливості і високої кваліфікації. Прийнято вважати, що подібного роду діяльність вимагає участі інтелекту людини. Завдання, пов’язані з відшуканням алгоритму рішення класу завдань певного типу, називатимемо інтелектуальними.

Основні вимоги до алгоритмів:

1. Кожний алгоритм має справу з даними – вхідними, проміжними, вихідними. Для того, щоб уточними поняття даних, фіксується кінцевий алфавіт вхідних символів (цифри, букви та ін.) та вказуються правила побудови алгоритмічних об’єктів.

2. Алгоритм для розміщення даних вимагає пам’яті. Пам’ять зазвичай вважається однорідною та дискретною, тобто вона складається з однакових комірок, причому кожна комірка може містити один символ даних, що дозволяє узгодити одиниці вимірювання об’єму даних та пам’яті.

3. Алгоритм складається з окремих елементарних кроків, причому множина різних кроків, з яких складний алгоритм, є скінченною.

4. Послідовність кроків алгоритму є детермінованою, тобто після кожного кроку вказується який крок необхідно виконати потім, або вказується коли роботу алгоритму вважати закінченою.

5. Алгоритм повинен володіти результативністю, тобто зупинятися після скінченої кількості кроків з виданням результату. Дану властивість іноді називають збіжністю.

6. Алгоритм передбачає наявність механізму реалізації, який за описом алгоритму створює процес обчислення на основі початкових (вхідних) даних.

Що ж до завдань, алгоритми рішення яких вже встановлені, то, як відзначає відомий фахівець в області штучного інтелекту М. Мінський, "надмірно приписувати їм таке містичне властивості, як "інтелектуальність". Насправді, після того, як такий алгоритм вже знайдений, процес рішення відповідних завдань стає таким, що його можуть в точності виконати чоловік, обчислювальна машина (належним чином запрограмована) або робот, що не мають щодного уявлення об суть самого завдання. Потрібний тільки, щоб особа, вирішальна завдання, була здатна виконувати ті елементарні операції, їх яких складається процес, і, крім того, щоб воно педантичне і акуратно керувалося запропонованим алгоритмом. Така особа, діючи, як говорять в таких випадках, чисто машинально, може успішно вирішувати будь-яку задачу даного типу.

Тому представляється абсолютно природним виключити їх класу інтелектуальних такі завдання, для яких існують стандартні методи рішення. Прикладами таких завдань можуть служити чисто обчислювальні завдання: рішення системи лінійних рівнянь алгебри, чисельна інтеграція диференціальних рівнянь і т.д. Для вирішення подібного роду завдань є стандартні алгоритми, що є певною послідовністю елементарних операцій, яка може бути легко реалізована у вигляді програми для обчислювальної машини. В протилежність цьому для широкого класу інтелектуальних завдань, таких, як розпізнавання образів, гра в шахи, доведення теорем і т. п., навпроти це формальне розбиття процесу пошуку рішення на окремі елементарні кроки часто виявляється вельми скрутним, навіть якщо само їх рішення нескладне.

Таким чином, ми можемо перефразовувати визначення інтелекту як універсальний надалгоритм, який здатний створювати алгоритми розв’язання конкретних завдань.

Ще цікавим зауваженням тут є те, що професія програміста, виходячи з наших визначень, є однією з самих інтелектуальних, оскільки продуктом діяльності програміста є програми – алгоритми в чистому вигляді. Саме тому, створення навіть елементів штучного інтелекту повинно дуже сильно підвищити продуктивність його праці.

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