Выбрать главу

Он писал: "Если вы хотите, чтобы машина могла выводить абстракции, скорее всего, это значит, что она должна уметь представлять эти абстракции некоторым достаточно простым способом".

Еще тогда возникла идея увеличения общности, которая заключается в том, чтобы воспользоваться логикой для такого описания фактов, которое не зависело бы от того, как эти факты будут использоваться впоследствии. Тогда Маккарти казалось (как, впрочем, и сейчас), что люди по объективным причинам предпочитают общаться с помощью декларативных предложений, а не языков программирования, все равно, является ли субъект общения человеком, существом с Альфа Центавра или компьютерной программой. Более того, и для внутреннего представления проявляются преимущества декларативной информации.

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

В это же время Маккарти вместе с Хэйесом занимался проблемами эпистемологических и эвристических аспектов задач искусственного интеллекта. Они предположили, что изучать проблемы общности гораздо проще в рамках эпистемологического подхода. Разница состоит в том, что при эпистемологическом подходе требуется полный набор фактов, гарантирующий, что некоторая стратегия достигает цели, в то время как эвристический подход предполагает поиск приемлемой стратегии исходя из наличных фактов.

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

Джон Маккарти (80-е годы)

Изучение этой проблемы привело к созданию в 1960 году "исчисления ситуаций", целью которого было нахождение способа описания результатов действий вне зависимости от проблемной области. Однако ситуационное вычисление было применимо только в том случае, когда рассуждения о дискретных событиях, результатом каждого из которых является новая общая ситуация, имеют смысл. Непрерывные события и события, происходящие одновременно, теорией не охватывались. Оказалось, что, к сожалению, практически невозможно использовать ситуационное исчисление даже для довольно ограниченных задач. Использование универсальных программ для доказательства теорем приводило к слишком медленной работе программы, потому что в 1969 году программы для доказательства теорем не имели средств управления поиском. Все это привело к созданию системы STRIPS, в которой использовались только логические рассуждения в рамках конкретной ситуации. Формализм системы STRIPS был более ограниченным, чем исчисление ситуаций в полном объеме. Чтобы избежать противоречий, необходимо было аккуратно выбирать факты, входившие в число аксиом. Эти противоречия могли возникать при невозможности удалить высказывание, которое не являлось бы истинным в результате действия происшедшей ситуации.

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

В 1971 году Джон Маккарти был награжден премией Тьюринга за достижения в области искусственного интеллекта. Ныне он профессор информатики, профессор кафедры им. Шарля М. Пижо Инженерной школы Стэнфордского университета. Маккарти работает над новым языком программирования Elephant. Этот язык предназначен для программ, взаимодействующих с людьми или с программами, принадлежащими другим организациям. В настоящие время наиболее важный из его проектов заключается в формализации контекста и его приложений к искусственному интеллекту. Маккарти по праву можно назвать генератором идей, которые помогают приблизить компьютеры к более высокому уровню интеллекта. Только время покажет, верно ли его утверждение о возможности создания компьютера, более умного, чем человеческий мозг.

Джон Кемени и Томас Курц

Создатели популярного языка BASIC

В прошлом веке один английский миссионер, желая приобщить туземцев к цивилизации, выделил из английского языка самую распространенную и самую простую его часть и стал учить туземцев такому упрошенному английскому языку… Назвали его "Basic English", т. е. "основной английский". Язык привлекал своей простотой и вскоре завоевал популярность не только среди туземцев, но и эмигрантов.

В 1964 году был разработан новый Бэйсик, но уже для других "туземцев" — людей, не владеющих языком общения с ЭВМ. Назвали его тоже BASIC, что является аббревиатурой английской фразы: "Beginner’s All — purpose Symbolic Instruction Code", т. e. "многоцелевой язык символических инструкций для начинающих"… Как и первый Бэйсик, второй быстро завоевал популярность среди "туземцев" — пользователей ввиду своей простоты и доступности.

Леонард Растригнн

Джон Кемени

Действительно, история создания BASIC связана с поисками путей решения проблемы, как обучать студентов доступному пониманию техники программирования, как научить их простому общению с компьютером.

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

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

Кроме того, решению указанной проблемы содействовала необходимость разработки нового языка программирования, который можно было легко изучать и которым легко было бы пользоваться. Применение языка ассемблера или таких языков, как ALGOL или FORTRAN, было вне обсуждения, исходя из предшествующего опыта преподавания.

Джон Кемени и Томас Курц успешно решили перечисленные проблемы и создали самый популярный язык программирования XX века.

Джон Джордж Кемени родился 31 мая 1926 года.

Томас Курц

В 1938 году после захвата Австрии Гитлером его отец уехал их Венгрии в США, а в начале 1940 года туда же перебралась вся его семья — жена, дочь и сын Джон. Они поселились в Нью- Йорке. Джон поступил в Высшую школу имени Джорджа Вашингтона и закончил ее лучшим в классе за три года. Кемени позднее рассказывал про свой школьный опыт с тестом на вербальные способности: "У меня не было словаря, и я мог понимать только несколько слов в каждом вопросе, но это был тест с вариантами ответов, и я понимал достаточно, чтобы найти правильный. Я "взломал" код и получил одну из самых высших оценок в Нью-Йорке".

В 1943 году он поступил в Принстонский университет, чтобы изучать математику. Он получил американское гражданство и в 1945 году, когда ему исполнилось 18 лет, был призван в армию.