Алгоритмы и работа мозга. Мозг человека и искусственный интеллект. Напалков А. В., Прагина Л. Л.. Условный рефлекс и алгоритм.

Итак, попытки решения проблемы расшифровки механизмов формирования сложного поведения и компонентов психической деятельности на основе изучения систем рефлексов привели к определенным трудностям. Ученые понимали, что для их преодоления необходимы новые идеи и методы, которые могли бы не просто дополнить уже имеющийся арсенал фактов, а качественным образом изменить подходы к исследованию. Начались поиски в различных направлениях. Одно из них было связано с привлечением идей кибернетики и представлений о работе алгоритмов.

Понятие алгоритма сформировалось сначала в области математики, и в течение длительного периода времени исследователи не улавливали связи между этим понятием и решением различных актуальных проблем в биологии. Только в наше время удалось обнаружить сходство различных явлений, изучаемых математикой и физиологией.

Первые представления об алгоритмах были сформулированы более тысячи лет тому назад в работах знаменитого узбекского математика Ал-Хорезми. Он описал целый ряд формальных процедур, при помощи которых можно было решать некоторые математические задачи. Такие процедуры обладали удивительным свойством. Если не использовать алгоритмы, то каждый раз приходилось выдумывать новый способ решения, на что уходило много времени и много творческих усилий. В то же время знание алгоритма, формальной процедуры, записанной в виде комплекса последовательно осуществляемых правил преобразования данных, приводило к желаемому результату, т. е. к решению задач. Отсюда следовало и определение понятия «алгоритм».

Алгоритм — это система последовательных правил переработки информации, приводящая к решению задач определенного класса. Это понятие в настоящее время рассматривается как интуитивное, так как оно не соответствует тем требованиям, которые предъявляются к формальному описанию. Пока мы удовлетворимся такой характеристикой, и для того чтобы она стала понятной, приведем ряд примеров работы алгоритмов.

Простейшие примеры алгоритмов — это алгоритмы сложения, вычитания, деления и умножения многозначных чисел. Как известно, в этом случае следует подписать одно число под другим и, последовательно проводя операции над отдельными знаками, преобразовывать системы записей. Процедура решения задач является абстрактной, формальной, она не содержит никаких двусмысленностей. Эта процедура не может включать таких понятий, которые относятся к конкретным числам. Если бы такие понятия (например, число 126) были включены в алгоритм, то он мог бы быть применен только к определенным частным случаям решения, например к задачам деления одного конкретного числа на другое, т. е. он бы не позволял решать целый класс задач.

Другой класс алгоритмов — алгоритмы игр. Эти алгоритмы обычно относятся к категории «логических алгоритмов». Широко известны такие игры, как игра в «крестики-нолики», «побеждает чет», «поиск в лабиринте» и т. д. Оказалось, что для этих игр существуют формальные процедуры, используя которые участник игры может либо выигрывать, либо сводить игру вничью, но никогда не будет проигрывать. При наблюдении за поведением такого человека может создаться впечатление, что он обладает какими-то интересными и даже «замечательными» свойствами, какой-то способностью к игре. Между тем он использует стандартную процедуру. Причем он осуществляет эту процедуру чисто механически, не обращаясь к своим способностям творческого мышления.

В качестве примера приведем алгоритмическую процедуру, эффективную при игре «побеждает чет». В этой игре участвуют два человека. На столе лежат спички Каждый игрок имеет право вынимать одну или две спички. Побеждает тот, у кого останется чет­ное число спичек. Оказалось, что может быть най­ден алгоритм, который обеспечивает успех в игре по­добного типа. Этот алгоритм может быть реализован на вычислительной машине, которая будет осущест­влять игру в «побеждает чет» более успешно, чем любой человек, не знающий алгоритма. В данном случае имеет значение применение четко сформули­рованных систем правил. Приведем систему этих пра­вил для игрока А.

Первый ход: А берет два предмета. Очередной ход А в случае, если Б имеет четное число предме­тов, оставить противнику число предметов, которое на единицу больше кратного шести (19, 13, 7); если это невозможно, то при наличии пяти или трех еще не взятых предметов взять четыре или два соответ­ственно. Очередной ход А в случае, если Б имеет нечетное число предметов: оставить противнику ко­личество предметов на единицу меньше кратного шести (23, 17, 11); если это невозможно, то при на­личии еще трех или одного предмета следует взять три или один соответственно.

При анализе правил следует обратить внимание на то, что они не содержат каких-либо слов, отно­сящихся к конкретной игре. Все понятия являются более общими, абстрактными, что и позволяет при­менять их в любых ситуациях игры.

Интересный пример применения алгоритма может быть проиллюстрирован на основе древнегреческой мифологии. Один из мифов говорит о том, что леген­дарный герой Тезей должен был победить чудовище Минотавра и убить его. При этом найти его нужно было в лабиринте. Ариадна дала Тезею клубок ни­ток, при помощи которого он нашел своего против­ника, выполнил поставленную перед ним задачу и затем вышел из лабиринта. Проведем описание ал­горитма. Продвигаясь по лабиринту, Тезей постепен­но разматывал клубок ниток, отмечая те части ла­биринта, которые он уже проходил один раз или Дважды. В этом и заключался смысл той помощи, которую оказала ему Ариадна. Тезей действовал по следующей системе правил:

Признак Характер действия
Через площадку уже протянута нить Ариадны.

Нить Ариадны отсутствует.

Встреча с Минотавром.

Отсутствие всех перечисленных признаков.

Наматывание нити (движение назад)

Разматывание нити (движение вперед).
Остановка. Начало поединка.

Наматывание нити,

страницы: 1 2 3 4 5

Rambler's Top100