Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

книги из ГПНТБ / Слэйгл Д. Искусственный интеллект. Подход на основе эвристического программирования

.pdf
Скачиваний:
13
Добавлен:
25.10.2023
Размер:
12.47 Mб
Скачать

Д Р У Г И Е П Р О Г Р А М М Ы Д Л Я

Р Е Ш Е Н И Я МАТЕМАТИЧЕСКИХ З А Д А Ч

131.

называется реакцией.

Другой

вход в программу есть k,

принимающее значения 3, 4

или 5, но не превышающее

п2. Программа вычисляет

модель, связанную с

каж­

дым из 2п различных наборов k предикторов. По опреде­

лению

модель, связанная с k предикторами

дг,-,

хіз, ...

...,xik,

есть функция

вида у = а0 + алхіх

- f a2xit

+ ...

+

+ akxik,

которая «наилучшим

образом

соответствует»

наборам из (п + 1) переменных. а,-называются

множествен­

ными коэффициентам

и

регрессии.

Выход

программы

со­

стоит из трех наилучших

моделей, порожденных програм­

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

A. Для запуска программы ввести наблюдаемые дан­ ные, т. е. набор из (п + 1) переменных. Вначале поло­ жить каждое Р} = 1/л, где Pt—вероятность выбора пре­ диктора X] на шаге С.

B. Начать опыт. Во время каждого опыта выбирается набор из k предикторов.

C. Выбрать предиктор вероятностным образом в со­ ответствии с вероятностями Р>.

D.Если выбранный предиктор уже был выбран в этом опыте, отбросить его и перейти к шагу С.

E.Если набор из k предикторов еще не выбран, пе­

рейти к шагу С.

 

 

F. Если набор из k предикторов такой же,

как набор,

выбранный в каком-то

предыдущем опыте,

исключить

его и перейти к шагу

С.

 

!£••" G. Применить регрессионный анализ для

нахождения

модели, связанной с набором из k предикторов.

Н. Сохранить эту модель, если она принадлежит к

числу трех наилучших

моделей, полученных

до сих пор

в этом^прогоне.

 

 

9*

132

 

 

 

 

 

 

 

Г Л А ВА 6

I . Скорректировать вероятность Р}

выбираемого

предик­

тора Xj (мы не

останавливаемся на

технической

стороне

реализации

этого

шага).

 

 

 

 

 

J. Если

прогон

не закончился,

т. е. если было порож­

дено менее 2п моделей, перейти к шагу В.

 

 

 

К. Напечатать три наилучшие модели и остановиться.

Программа

работает отлично. Она реализуется в че­

тыре раза быстрее первоначально составленных

программ.

С 1964 г. она решила более тысячи

различных

практиче­

ских задач в разных промышленных

компаниях, включая

«Celanese Corporation of America»

и «Glidden

Comnany»

[см. об этом, например, в статьях

Блэкмора

и др. (1966)

и Драттелла

( 1968)]. Программа

выбрала

предикторы,

послужившие основанием для назначения высоких окла­

дов

канадским специалистам по исследованию

операций-,

и

выявила важные причины (предикторы)

смертности

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

6.7. О Б Щ И Е ВЫВОДЫ, КАСАЮЩИЕСЯ ПРОГРАММ Д Л Я Р Е Ш Е Н И Я М А Т Е М А Т И Ч Е С К И Х З А Д А Ч

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

Д Р У Г И Е П Р О Г Р А М М Ы Д Л Я Р Е Ш Е Н И Я МАТЕМАТИЧЕСКИХ З А Д А Ч 133

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

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

УПРАЖНЕНИЯ

 

 

 

1.

Объясните,

почему утверждение

3 в табл. 6.1 является за­

конным

следствием утверждения

2.

 

2.

Какова первоначально заданная (высшая) цель дизъюнк­

тивного

дерева,

использованного

для

получения доказательства

втабл. 6.1 ?

3.Составьте задачу средней трудности о шахматном коне и дайте ее решение.

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

дачи о

шахматном

коне.

 

 

5.

В предположении, что

леммы не

использовались, опреде­

лите, какого

плана

придерживалась программа при решении при­

веденной на

фиг.

6.1 задачи о

шахматном

коне.

6.Составьте задачу на геометрическую аналогию и дайте е« решение.

7.Объясните своими словами цели создания каждой из сле­ дующих программ:

а) программы, проверяющей

математические

доказательства;

б) программы, помогающей людям оперировать с математи­

ческими

выражениями;

 

 

 

 

в) эвристической

программы

регрессионного

анализа.

Л И Т Е Р А Т У Р А

 

 

 

 

 

 

A b r a h a m s P., «Machine Verification

of Mathemathical Proofs ,

doct. diss., Dept. of Math.,

MIT , Cambridge, Mass., May 1963.

B 1 а с k m о r e

W. R.

et al.,

«Annual

CORS Salary Survey for

1965», Can. Oper. Res. Soc,

B u l l . , Fall, 1966,

 

134

 

 

 

 

 

 

 

 

 

 

Г Л А В А 6

D r a t t e l l

A.,

«Management Training Ground at Glidden», Bu­

siness

Autorr..,

15, №

4 (1968).

 

 

 

 

E V a n s T., A Heuristic Program

to Solve Geometric Analogy Prob­

lems,

Proc. AF1PS. Ann. Spring Joint Computer Conf., 1964.

M a r t i n

W. A.,

«Symbolic

Mathematical

Laboratory*, doct. diss.,

M I T ,

Cambridge, Mass.,

Jan,

1967.

 

 

 

 

M i l l e r

F. A.,

«Improving

Heuristic

Regression

Analysis*, pre­

sented

at

the

 

6Ui Annual

 

Southeastern

Regional

Meeting of the

ACM,

Chapel

 

H i l l ,

North

Caroline,

June 1967.

 

 

M o s e s

J.,

((Symbolic

Integration», MAC-TR-47,

Project

MAC,

M I T ,

Cambridge, Mass.,

Dec.

1967.

 

 

 

 

N e w e l l

 

A., S h a w

J. C ,

S i m o n

H . , «Empirical Explora­

tions of the Logic Theory Machine», Proc. Western Joint Computer

Conf.,

Febr.

1957; см. Computers and

Thought

(eds.:

Feigen­

baum

E. A. and Feldman J.), New

York, McGraw-Hill, 1963;

русский

перевод см. сб. «Вычислительные машины и мышление»,

изл-во «Мир», 1968.

 

 

 

 

 

 

 

 

Т г а V i s L. Е.,

 

«Experiments with a Theorem Utilising Program»,

Proc.

AFIPS AnnSpring Joint Computer Cnnf.,

April

1964.

W h i t e h e a d

A. N . .

R ü s s e l В.,

Principia Mathematica, 2d

ed., vol. I , Cambridge Univ.

Press,

1935.

 

 

7

Универсальная эвристическая программа ( M U L T I P L E )

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

В этой книге рассматриваются следующие универ­ сальные (многоцелевые) эвристические программы: MULTIPLE (в настоящей главе) [Слэйгл (1965), Слэйгл и Барский (1968), Слэйгл и Конайвер (1970)1; Общий Ре­ шатель Задач (GPS) А. Ныоэлла и др. (гл. 8); общая вероятностная процедура Ф. Тонге (разд. 9.1) и некоторые программы, отвечающие на вопросы (гл. 10).

MULTIPLE — сокращенное обозначение многоцеле­ вой обучающейся программы (MULTIpurpose Program

136

jT\

Г Л А ВА 7

that

LEarns). Она состоит из двух частей—

программы

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

ных

программ,

а именно программы, решающей задачи

по

геометрии,

программы нахождения неопределенных

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

торое представляется наилучшим.

РР выполняет это,

1) поочередно порождая дерево из

наиболее

подходящего

непроверенного высказывания на

дереве

высказываний

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

ренного высказывания

от заданных свойств

этого

выс­

казывания.

 

 

 

 

 

В одном из экспериментов РР была дана задача поиска

доказательств и опровержений высказываний,

относящих­

ся

к критериям окончания игры в

калах (правила

игры

в

калах см. в разд. 2.5). В другом

эксперименте несколь­

ко модифицированная

программа

действительно

играла

в калах. В обоих экспериментах эта программа сравнива­ лась с альфа-бета-программой. Результаты обнадежи-

У Н И В Е Р С А Л Ь Н А Я Э В Р И С Т И Ч Е С К А Я П Р О Г Р А М М А ( M U L T I P L E )

137

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

7.1. ПРОГРАММА Д О К А З А Т Е Л Ь С Т В А

Чтобы читатель мог получить достаточно ясное пред­ ставление о РР-части MULIPLE, мы, прежде чем присту­ пить к ее абстрактному описанию, приведем гипотетиче­ ский пример ее действия.

Гипотетический пример. В качестве примера покажем, как РР искала бы доказательство конкретного высказы­ вания, относящегося к игре в шашки. Хотя РР такие высказывания в действительности и не предъявлялись, мы для примера воспользуемся шашками, поскольку боль­ шинству читателей эта игра более знакома, чем калах. (Как мы увидим ниже, программа доказывала и высказы­ вания, касающиеся игры в калах, которые значительно сложнее предлагаемых здесь в качестве примера три­ виальных шашечных утверждений.) Предположим, что РР пытается найти конструктивное доказательство или опровержение высказывания, согласно которому белые могут выиграть в верхней позиции на фиг. 7.1. РР по­ рождает из высказывания G высказывания d и G2 . Вы­ сказывание Gj гласит: «Черные начинают, и белые выигры­ вают» в позиции, обозначенной G\ на фиг. 7.1. РР с учетом правил игры в шашки оценивает вероятность Gx числом 0,4. «Самооценка», строго определяемая ниже, выражает­ ся числом 0,1, а выбор G* есть позиция Gj. Вообще гово­ ря, выбор в данной вершине дерева есть то непроверенное высказывание на поддереве, начинающемся в данной вер­ шине, которое представляется наилучшим. Аналогично РР определяет вероятность, самооценку и выбор для вы­ сказывания G,. Эти величины отсылаются из Gx и G2 в G.

Поскольку белые могут выиграть в позиции

G тогда и

только тогда,

когда они могут

выиграть либо

в Glt

либо

в Go, либо в обеих

позициях, и поскольку

d

и G2

пред­

полагаются

для

простоты

независимыми,

то

р —

= 1 — (1 — р,) (1 — ро) = 0,82.

Рабочая

оценка

пози­

ции G равняется 0,12, а рабочим

выбором

будет позиция

G2 . Это означает,

что наилучшим

в данный момент

непро-

Ф и г. L 7.1. Белые начинают и выигрывают.

Ф и г . 7.2.

У Н И В Е Р С А Л Ь Н А Я Э В Р И С Т И Ч Е С К А Я П Р О Г Р А М М А ( M U L T I P L E )

139

верейным высказыванием, расположенным на дереве вы­ сказываний ниже G, является высказывание G2 . Грубо говоря, данный выбор обусловлен тем фактом, что выска­ зывание G2 обладает более высокой вероятностью (благо­ приятной для дизъюнкции) и более высокой самооценкой, чем конкурирующее с ней высказывание G r Поэтому РР пытается порождать дерево, исходя из G2 , результат чего показан на фиг. 7.2. РР определяет вероятность, само­

оценку

и выбор

каждого

из вновь выращенных

непрове­

ренных высказываний G2 1

и G2 2 . Эти величины отсылаются

в позицию G2 . Поскольку

белые могут добиться

победы в

позиции G2 тогда и только.тогда,

когда они могут выиграть

в G2 1

и G2 2 , и поскольку

позиции G2 1 и G2 2

принимаются

для

простоты независимыми,

получаем

р й — роЛр22

=

= 0,72.

Рабочая

оценка

позиции G2 равняется

0,24,

а

рабочим

выбором

будет позиция

G2 1 . Эта новая

информа­

ция относительно позиции G2 и старая информация отно­ сительно позиции Gi отсылаются в позицию G. Очень важно отметить, что информацию в Gx не нужно вычислятзаново, и это остается справедливым, даже если Gx яв­ ляется началом очень большого поддерева. Таким обра­ зом, стоимость отсылок приблизительно пропорциональна глубине дерева, начинающегося от выбранного непрове­ ренного высказывания, а не размеру всего дерева выска­ зываний. Это важный момент, поскольку встречающиеся на практике деревья могут оказаться чрезвычайно боль­ шими. Поскольку теперь выбор G* в позиции G есть пози­

ция G2 i, то для

всего дерева наилучшим

непроверенным

высказыванием

представляется G2 1 . РР порождает дерево

из позиции G2i

(фиг. 7.3). В позиции G2 1 1 вероятность выиг­

рыша белых

равна 1,0,

ибо белые

уже

выиграли.

Эта

информация

отсылается

в G2 1 . Затем

новая информация

из позиции

G2 i

и старая информация

из

позиции G2 2

от­

сылаются в Go- Наконец, старая информация из позиции Gx

и новая информация из

позиции G2 отсылаются в G.

 

Далее РР порождает дерево из G2 2 (фиг. 7.4).

Вероят­

ность выигрыша белых

в G2 2 1 равна 1,0, ибо они

уже вы­

играли. Эта информация

отсылается в G2 2 . Затем

старая

информация из G2 1 и новая информация из G2 2 отсылаются

в

G2 , а старая информация из Gx и новая информация из

G2

в свою очередь отсылаются в G. Из того факта,

что от-

Ф и г . 7.3.

Соседние файлы в папке книги из ГПНТБ