14.7. Заключительные замечания
14.7. Заключительные замечания
Нашу оболочку экспертной системы можно развивать в целом ряде направлений. В данный момент уместно сделать несколько критических замечаний и высказать предложения по усовершенствованию нашей программы.
В нашей программе, являющейся упрощенной реализацией, не уделено достаточного внимания вопросам эффективности. В более эффективной реализации потребовалось бы использовать более сложные структуры данных, ввести индексирование или иерархическую структуризацию множества правил и т.п.
Наша процедура рассмотреть подвержена зацикливанию в тех случаях, когда в правилах базы знаний "циклически" упоминается одна и та же цель. Этот недостаток легко исправить, предусмотрев в рассмотреть соответствующий контроль, т.е. проверку, не является ли текущая цель частным случаем некоторой цели, уже введенной в состав объекта Трасса.
Наше объяснение типа "как" выводит дерево доказательства целиком. В случае больших деревьев, удобнее было бы вывести только верхнюю часть дерева, а затем дать пользователю возможность "гулять" по остальной части дерева по своему желанию. Тогда пользователь смог бы просматривать дерево выборочным образом, используя команды, такие как "Вниз по ветви 1", "Вниз по ветви 2", …, "Вверх", "Достаточно".
В объяснениях типа "как" и "почему" наша оболочка ссылается на правила, указывая их имена, и не показывает их в явном виде. Необходимо, чтобы во время консультационного сеанса пользователь мог, по желанию, запрашивать те или иные правила и получать их явные изображения.
Известно, что придать диалогу с пользователем естественный характер при помощи умелой постановки вопросов - сложная задача. Наш способ ее решения работает только в определенных пределах и во многих случаях приводит к самым разным проблемам, например:
Это правда: сьюзен летает?
нет.
Это правда: сьюзен летает хорошо?
Конечно же нет, раз она совсем не летает! Другой пример:
Есть (еще) решения для: Кто-нибудь летает?
да.
Кто-нибудь = птица.
Это правда: альбатрос летает?
Для того, чтобы справиться с подобными нежелательными эффектами, следует ввести в экспертную систему дополнительные отношения между понятиями вместе с механизмами их обработки. Обычно эти новые отношения задают иерархию объектов и их свойств.
Возможно еще одно усовершенствование процедуры взаимодействия с пользователем, предусматривающее планирование оптимальной стратегии постановки вопросов. Целью оптимизации является минимизация количества вопросов, которые необходимо задать пользователю для достижения некоторого окончательного логического заключения. Разумеется, возникнут различные варианты таких стратегий, и то, какая из них окажется оптимальной, будет зависеть от ответов пользователя. Принятие решения о выборе той или иной альтернативной стратегии можно основывать на априорных вероятностях, являющихся вероятностными оценками "стоимостей" альтернатив. Величины оценок, возможно, придется пересчитывать после каждого ответа пользователя.
Существует еще одна величина, поддающаяся оптимизации: длина цепочки вывода. Такая оптимизация позволила бы давать более простые объяснения типа "как". Сложность объяснений можно также уменьшить за счет селективного подхода к правилам. Некоторые из правил можно было бы не включать в состав объектов Трасса и Ответ, порождаемых процедурой рассмотреть. С этой целью необходимо указывать в базе знаний, какие из правил "трассируемы", а следовательно, должны появляться в объяснениях, а какие можно опускать.
В "разумной" экспертной системе следует предусмотреть вероятностные механизмы, заставляющие ее концентрировать свое внимание на наиболее правдоподобных гипотезах среди всех конкурирующих между собой гипотез. Такая экспертная система должна запрашивать у пользователя ту информацию, которая позволила бы распознать наилучшую среди наиболее правдоподобных гипотез.
Наша экспертная система была классификационного или "анализирующего" типа, в противоположность системам "синтезирующего" типа, в которых ставится задача построить что-либо. В последнем случае результат работы - это план действий, предпринимаемых для выполнения этой задачи, например план действий робота, компьютерная конфигурация, удовлетворяющая заданным требованиям, или форсированная комбинация в шахматах. Наш пример, относящийся к локализации неисправностей, можно естественным образом расширить, чтобы включить в рассмотрение действия. Например, если система не может прийти к определенному выводу, поскольку приборы выключены, она даст рекомендацию: "Включить лампу 3". Здесь сразу возникнет задача построения оптимального плана: минимизировать число действий, необходимых для достижения окончательного вывода.
Проекты
Завершите программирование нашей оболочки в части, касающейся неопределенной информации (процедура ответпольз и другие).
Рассмотрите перечисленные выше критические замечания, а также возможные расширения нашей экспертной системы. Разработайте и реализуйте соответствующие усовершенствования.
Более 800 000 книг и аудиокниг! 📚
Получи 2 месяца Литрес Подписки в подарок и наслаждайся неограниченным чтением
ПОЛУЧИТЬ ПОДАРОКЧитайте также
Заключительные замечания
Заключительные замечания В последних главах описываются и демонстрируются на примерах несколько технологий, предназначенных для достижения одной цели: максимально эффективного использования базы данных для экономии денежных средств. Использование новых технологий
Типы, характеризуемые значениями, и ссылочные типы: заключительные замечания
Типы, характеризуемые значениями, и ссылочные типы: заключительные замечания Чтобы завершить обсуждение данной темы, изучите информацию табл. 3.8, в которой приводится краткая сводка основных отличий между типами, характеризуемыми значением, и ссылочными типами.Таблица
Заключительные замечания об индексаторах
Заключительные замечания об индексаторах Чтобы получить настоящую экзотику, вы можете создать индексатор, который имеет множество параметров. Предположим, что у нас есть пользовательская кол-лекция, которая хранит элементы в двумерном массиве. В этом случае вы можете
Заключительные замечания о перегрузке операций
Заключительные замечания о перегрузке операций Вы могли убедиться в том, что C# обеспечивает возможность построения типов, по-своему отвечающих на встроенные всем известные операции. Перед тем как перейти к непосредственной модификации классов для поддержки такого
4.5.4. Заключительные замечания
4.5.4. Заключительные замечания Три решения задачи о восьми ферзях показывают, как к одной и той же задаче можно применять различные подходы. Мы варьировали также и представление данных. В одних случаях это представление было более экономным, в других — более наглядным и,
16.4. Заключительные замечания
16.4. Заключительные замечания Нашего простого интерпретатора было вполне достаточно для того, чтобы проиллюстрировать некоторые идеи, лежащие в основе программирования в терминах образцов. Применение этого интерпретатора для более сложных приложений потребовало бы
Заключительные слова
Заключительные слова Статистика, которую ведет CERT, показывает, что количество нарушений безопасности более чем удваивается каждый год. По данной статистике, число инцидентов возросло с 3934 в 1998 году до 9859 в 1999 году, а затем до 211 7569 в 2000 году и до 52 658 в 2001 году. Только за
Заключительные слова
Заключительные слова Во многих компаниях компьютерная безопасность сводится к наличию брандмауэра. Ну ладно, вам так понравилась эта интернетовская штучка, и вам не терпится подключиться к сети. Вы направляете всю свою энергию на выбор правильного брандмауэра и на
Заключительные слова
Заключительные слова Если вы генеральный директор и надеетесь, что ваша интранет будет в безопасности и не проверяете ее, то вас может ждать большой сюрприз. Угрозы благополучию предприятий продолжают возрастать и требуют все более высоких уровней защиты корпоративных
Заключительные слова
Заключительные слова Сегодня в насыщенной различными видами связи деловой среде внешние подключения стали такой же частью бизнес-структуры, как телефоны, круглосуточная доставка и межофисные низкие перегородки. На то, что ваш партнер расставил все средства защиты,
Заключительные слова
Заключительные слова В мире компьютеров время — это все! Время вычислений процессора, время доступа памяти, время появления на рынке и т. д. — все протекает невероятно быстро. За 30 миллисекунд сигнал, летящий со скоростью света, может пройти расстояние от одного
Заключительные слова
Заключительные слова Оценка риска является одной из важнейших и наиболее игнорируемых задач в области безопасности. Как ни печально, но это действительно так. Вы должны понять, что у вас есть и что из вашего имущества заслуживает охраны.По данным опроса Global Security Survey,
Заключительные слова
Заключительные слова Когда дело касается обеспечения безопасности, то роли и обязанности должны быть четко определены. Так как каждая компания имеет свою структуру технической поддержки, то эти роли и обязанности могут быть различными (даже в соседних подразделениях) в
Заключительные слова
Заключительные слова В рассказанной истории руководители обеих групп должны были помогать решению проблемы — для этого руководство и существует. К сожалению, эти менеджеры «зависли» на своих политических амбициях. Вдохновляйте ваших менеджеров на то, чтобы они
Заключительные слова
Заключительные слова Аутсорсинг быстро становится стратегией корпораций нашего десятилетия. Если ваша компания не воспользовалась аутсорсингом для каких-либо своих нужд, то велика вероятность, что она скоро это сделает.Перед тем как проводить какую-либо
Заключительные слова
Заключительные слова Ежедневно миллионы предпринимателей вкладывают свои надежды и мечты в почтовые послания, которые затем отправляют в плавание по Интернету. Если они делают это, не применяя шифрования, то, следовательно, забывают о всякой осторожности.Применение