считать также, что интеллектуальная система функционирует в некоторые дискретные моменты времени
Последнее допущение позволяет ввести понятие
Если в некоторый момент
Для выбора важен вопрос о влиянии порядка выбора на окончательный результат рассуждений. Если имеются две продукции и ситуация такова, что изменение состояния базы знаний, которое может возникнуть при срабатывании одной из них, сказывается на выполнимости условий срабатывания для другой, то такие продукции естественно назвать зависимыми. Если две продукции независимы, то порядок их выбора из фронта не может сказаться на результате рассуждения. Поэтому интерес представляют лишь зависимые продукции.
Как осуществлять выбор в этом случае? Для пояснения складывающейся ситуации рассмотрим следующий пример. Только что кончилась лекция, наступил двухчасовой перерыв и группа студентов обсуждает проблему: куда сейчас пойти? В имеющихся условиях есть две альтернативы: пойти в кино (но никто не знает, какая там идет картина) или пойти в кафе-мороженое (но ни у кого нет уверенности, что кафе работает). Ясно лишь одно, что выбор одного варианта исключает выбор другого, так как кино и кафе-мороженое находятся в разных концах города. Убедившись, что кафе не работает, нет надежды успеть в кино, а обнаружив, что в кино ничего интересного не идет, нет надежды поесть мороженое. В условиях, когда никто из студентов не имеет никакой информации о кино и кафе, единственным разумным способом выбора является известное бросание монетки, т.е. случайный выбор. Но если в момент обсуждения появляется их сокурсник, который говорит, что только что был в кино и ушел, не досмотрев скучную картину (тем самым он меняет состояние «баз знаний» остальных студентов), то выбор активизируемой «продукции», соответствующей программе достижения кафе-мороженого, станет однозначным.
Описанная ситуация является в некотором смысле экстремальной. Один выбор исключает другой. Чаще это не так – после неудачного выбора можно вернуться к альтернативному выбору и попробовать другой вариант. Чтобы так можно было делать в процессах рассуждений, необходимо сохранять состояние базы знаний в момент выбора. Для реализации этого при принятии решения об альтернативном выборе можно, например, запоминать не всю информацию, имеющуюся в данный момент в базе знаний, а только ту ее часть, которая меняется в результате применения продукций из выбранного варианта. Если вариант окажется удачным, то новое состояние базы знаний будет сформировано на основе полученной в ходе проверки варианта информации. Если попытка окажется безрезультатной, то произойдет возвращение к состоянию базы знаний в момент выбора, а информация, полученная в ходе плохого варианта, сотрется из памяти. Практически все системы моделирования рассуждений в интеллектуальных системах используют этот прием, который называется «бэктрекинг».
Но в любом случае остается проблема выбора продукции из готового фронта. Психологов весьма интересует вопрос, как это делают люди. К сожалению, однозначного ответа на этот вопрос пока нет. При экспериментах с программой «Логик-теоретик» ее авторы проводили сравнение работы программы с тем, как ведут себя в многочисленных возникающих по ходу доказательства случаях альтернативного выбора люди. В частности, последовательность, в которой перечислены различия в формулах, используемая для выбора преобразований в программе «Логик-теоретик», отражает экспериментально наблюдаемые приоритеты, демонстрируемые людьми.
Отсутствие точных психологических данных о способах выбора продукций из фронта людьми привело к тому, что в интеллектуальных системах стали использовать эвристические соображения, которые могут и не отражать особенности человеческих рассуждений. Так, весьма популярной стратегией выбора является принцип «стопки книг». Этот принцип описывает процедуру наиболее быстрого (в среднем) способа поиска нужной книги в стопке книг. Если каждый раз, использовав некоторую книгу, класть ее в стопку сверху, то часто используемые книги постепенно сосредоточатся в ее верхней части, а внизу будут лежать те, которые почти никогда не требовались. Если при поиске очередной нужной книги начинать просмотр стопки сверху, то она, как правило, встретится довольно скоро. Если продукции во фронте будут упорядочены по частоте их предшествующего успешного использования и активизироваться будет первая продукция этого фронта, то принцип стопки книг будет реализован.
У этого принципа есть определенный аналог в процедурах работы с информацией у человека. Если потребовать от испытуемых «не задумываться», говорить первое, что «приходит в голову», то на просьбу «Назовите поэта XIX века», как правило, будет дан ответ «Пушкин», а на просьбу «Назовите плодовое дерево» в подавляющем большинстве случаев ответ «Яблоня». Это, конечно, справедливо для испытуемых, живущих в средней полосе СССР. В других местах и социо-культурах возникнут свои приоритетные ответы. Человек как бы всегда имеет наготове, «на языке», подходящие отклики на часто встречающиеся ситуации.
Другой эвристический прием, заставляющий вспомнить герменевтические рассуждения, состоит в проверке в первую очередь продукции с самым длинным условием
Но такие априорные внешние способы задания продукций, выбираемых из фронта, не всегда оправданы. В большинстве случаев тот или иной выбор зависит от текущего состояния базы знаний
Мы специально не расшифровываем латинские термины, так как они совершенно не мешают понять суть работы метапродукции в данной экспертной системе.
Довольно часто возможность применения той или иной продукции зависит не только от того, какие именно продукции входят во фронт (как в только что приведенном примере метапродукции), но и от того, какие продукции в этот фронт не вошли. Другими словами, влияние может оказывать как «положительный», так и «отрицательный» контекст, в котором происходит выбор продукции из фронта готовых продукций.
Когда имеется выбор из нескольких продукций, то их можно выполнять последовательно, альтернативно или параллельно. Если считать, что в период реализации продукций из фронта время как бы останавливается (т.е. сохраняется неизменной база знаний со своим состоянием
Другой проблемой управления реализацией системы продукций является поиск наиболее эффективных способов проверки выполнения условий