- •Учебно-методическое обеспечение дисциплины
- •1. Введение в экспертные системы.
- •Перспективная экспертная интеллектуальная система
- •2. Организация и средства построения тэс.
- •3. Приобретение знаний от технолога-эксперта.
- •Методы извлечения знаний.
- •4. Структурирование и формализация знаний.
- •4.1. Методология структурирования знаний.
- •Семантическое кодирование
- •Стимуляция
- •4.2. Формализация знаний.
- •1. Структуризация общей задачи на связанные подзадачи
- •2. Структуризация предметной области на основе иерархии классов
- •3. Структуризация знаний на декларативные и процедурные
- •4. Структуризация приложения на основе иерархии «часть/целое»
- •5. Представление знаний.
- •6. Принятие решений в технологических экспертных системах.
- •Корень дерева
- •Дочерние вершины
- •Начальное состояние
- •Целевое состояние
- •7. Исследование технологических процессов изготовления тонкопленочных интегральных микросхем.
- •7.3. Фотолитография
- •8. Оборудование для промышленного изготовления тонкопленочных интегральных микросхем.
- •8.5 Вакуумноные напылительные установки и линии непрерывного действия.
- •8.6 Оборудование для флг.
- •9. Толстопленочная технология изготовления имс
- •9.1. Схема технологического процесса изготовления толстопленичных микросхем.
- •9.2. Методы получения толстых пленок.
- •9.2.1. Метод контактной печати.
- •9.3. Изготовление трафаретов.
- •9.4.Процесс сушки и вжигания.
- •9.5. Толстопленочные элементы.
- •10. Технологическое оборудование для промышленного изготовления толстопленочных имс.
- •10.2 Термическое оборудование.
- •10.3 Оборудование для подгонки параметров толстопленочных элементов.
- •11. Технология изготовления печатных плат
- •12. Технология сборочно-монтажного производства эс
2. Организация и средства построения тэс.
Технологические экспертные системы (ТЭС) представляют собой особый класс ЭС. Основой ТЭС является совокупность знаний, структурированная в целях упрощения процесса принятия решений экспертной системой.
Рассмотрим структуру ТЭС, представляемую на рис.2.1

|
Технологическая Экспертная Система |
База знаний о технологической науке (Знания предметной области)
Механизм вывода (Общие знания о решении задач) | ||||
|
Рис. 2.1 | |||||
Термин "знания" означает информацию, представленную в форме фактов или правил, которые необходимы программе ТЭС для принятия каких-либо решений.
Факты и правила в ТЭС не всегда либо истинны, либо ложны, т.е. существует некоторая степень неуверенности в достоверности факта или точности правила. Многие правила ТЭС являются эвристическими, т.е. эмпирическими правилами или упрощениями, которые эффективно ограничивают поиск решения. ТЭС использует эвристики, потому что задачи, которые она решает не всегда поддаются строгому математическому анализу или алгоритмическому решению.
Например, к таким задачам можно отнести задачи проектирования ТП. Структура ТП не будет однозначна,т.к. каждый технолог обладает различным уровнем профессиональных знаний, использует различные технологии, свойственные конкретному предприятию с конкретной оснащенностью. Алгоритмические методы организации знаний гарантируют оптимальное и корректное решение. Например задачи оптимизации технологических режимов, ряд задач моделирования ТП, задачи отработки изделия на технологичность.
В последнем случае подбор ТЭС "коэффициентов уверенности" при определении бальных показателей технологичности.
На рис 2.2 показано различие между алгоритмическими и эвристическими методами. Если при алгоритмическом методе определена последовательность точных действий, то при использовании эвристики присутствует элемент неопределенности. В реальной жизни, как правило, используются смешанные методы.
|
Проектирование ТП |
| |||
|
|
| |||
|
В |
| |||
|
|
| |||
|
Алгоритм |
Эвристика |
| ||
|
|
| |||
|
Алгоритм: |
Эвристика: | |||
|
По разработаной структуре ТП подобрать технологические операции реализуемые только в отделах N, N1, N2. Оборудование рассматривать только то, которое обладает лучшей производительностью и незначительным расходом электроэнергии. И, П, О могут быть использованы самые простые, материалы самые доступные для приобретения и дешевые. | |||
Рис. 2.2
Знания о предметной области в ЭС отделяют от общих знаний, как решать задачу и т.п..
Выделенные таким образом знания называют базой знаний, а общие знания о нахождении решений задачи называют механизмом вывода. Поэтому ТЭС и называют системой, основанной на знаниях.
База знаний (БЗ) ТЭС содержит факты (данные) и правила (или другие представления знаний), использующие эти факты как основу для принятия решений.
Механизм вывода содержит интерпретатор, определяющий, каким образом применять правила для вывода новых знаний и диспетчер, устанавливающий порядок применения этих правил.
Уровень эффективности ТЭС зависит от базы знаний, содержащей высококачественные знания о технологической предметной области, и механизма вывода, содержащего знания о том, как рациональнее использовать знания о предметной области. Каким образом система использует свои знания, имеет первоочередное значение, т.к. содержит и адекватные знания, и средства эффективного использования знаний.
Концепция механизма вывода состоит в следующем:
Любые знания о технологической предметной области могут быть записаны в виде фактов и правил.
Метод организации логического вывода зависит от специфики предметной области, и от структуры представления знаний в базе знаний.
Выбранный язык должен обеспечить оптимальный способ организации знаний,доступ к ним, а схема управления процессом решения должна быть адекватной предметной области. Например языки высокого уровня типа EMYGN, ПРОЛОГ имеют механизм вывода встроенный в язык, а языки типа LISP требуют проектирования и реализации механизма вывода.
Методы представления знаний отражают способы структуирования знаний в ТЭС. Существует много стандартных способов представлений знаний, которые могут быть использованы самостоятельно или в сочетании друг с другом. К числу наиболее распространенных относятся методы основанные на правилах, методы использующие семантические сети и методы, основанные на фреймах (табл.2.1).
Представление знаний, основаное на правилах, построено на использовании выражений вида:
|
Е |
|
ТО (ДЕЙСТВИЕ) |
Например: Если используется ЛИНИЯ ХИМИЧЕСКОЙ ОЧИСТКИ ПЛАТ, то способ изготовления можно считать АВТОМАТИЗИРОВАННЫМ.
Методы, использующие семантические сети используют сеть узлов, связанных отношениями и организованных иерархически.
Методы, основанные на фреймах, используют иерархию фреймов для построения механизма наследования свойств и прикрепления процедур.
Кроме перечисленных выше методов могут быть применены методы, ориентированные на объекты, на процедуры, на доступные методы, основанные на логике и т.д..
Методы представления знаний более подробно будут рассмотрены в разделе 5.
|
Таблица 2.1
| ||
|
Методы представления знаний | ||
|
Основанные |
Использующие |
Ориентированные |
|
|
|
Что же мы будем понимать под ТЭС ?
Рассмотрим основные характеристики ТЭС (рис. 2.3), отличающие ее от обычных программ.
Под ТЭС понимается ЭС, обладающая следующими свойствами:




Рис. 2.3
Компетентность - достигать в предметной области того же уровня профессионализма, что и эксперты-технологи; быть умелой, быстро и эффективно, используя примеры и ухищрения эксперта, применять знания для получения правильного решения; достаточно глубоко и широко понимать предмет.
Символьные рассуждения - использование математического аппарата вычисления, стратегии и эвристики в процессе манипулирования символьными понятиями.
Глубина - возможность решения нетривиальных и трудоемких задач в узкой технологической предметной области, с использованием сложных правил, отражающих закономерности и факты предметной области.
Самосознание - умение рассуждать о своих собственных действиях, обеспечивающееся механизмом объяснений; наличие метазнаний; возможность демонстрации цепочки выводов и доводов, объясняющих на каком основании было применено каждое правило в цепочке; возможность проверять собственные процессы рассуждений.
СРЕДСТВА И РАЗРАБОТЧИКИ ЭС.
ЭС представляют собой набор программ, которые решают задачи в интересующей предметной области. ЭС называется системой, а не просто программой, т.к. она содержит компоненту, решающую проблему и компоненту поддержки. На рис.2.4 изображены средства построения ЭС.

Рис. 2.4
Процесс разработки ЭС можно разделить на шесть этапов, практически независимых от предметной области (рис.2.5).
...
Рис. 2.5
1. Выбор проблемы.
Этот этап включает в себя:
нахождение опытного эксперта;
определение коллектива разработчиков;
анализ расходов и прибылей от разработки;
подготовка подробного плана разработки.
Правильный выбор проблемы представляет самую критическую часть разработки вцелом. Если знание, необходимое для решения задач постоянное, четко формулируемое и связано с вычислительной обработкой, то обычные алгоритмические программы будут целесообразным способом решения проблемы в этой области.
Приведем факты, свидетельствующие о необходимости разработки и внедрения ЭС:
малочисленность специалистов, обладающих достаточными знаниями предметной области;
необходимость анализа большого количества фактов и условий;
узкоспециализированность проблемы;
проблема, требующая затраты значительного времени эксперта для ее решения;
большое расхождение в решении между самыми хорошими и самыми плохими исполнителями.
2. Разработка прототипа ЭС.
При разработке экспертных систем часто используется концепция быстрого прототипа. Суть её в следующем: поначалу создается не экспертная система, а её прототип, который обязан решать узкий круг задач и требовать на свою разработку незначительное время. Прототип должен продемонстрировать пригодность будущей экспертной системы для данной предметной области, проверить правильность кодировки фактов, связей и стратегий рассуждения эксперта. Он также дает возможность инженеру по знаниям привлечь эксперта к активной роли в разработке экспертной системы. Размер прототипа – несколько десятков правил.
На сегодняшний день сложилась определенная технология разработки экспертных систем, включающая 6 этапов.
Этап 1. Идентификация
Определяются задачи, которые подлежат решению. Планируется ход разработки прототипа экспертной системы, определяются: нужные ресурсы (время, люди, ЭВМ и т.д.), источники знаний (книги, дополнительные специалисты, методики), имеющиеся аналогичные экспертные системы, цели (распространение опыта, автоматизация рутинных действий и др.), классы решаемых задач и т.д. Этап идентификации – это знакомство и обучение коллектива разработчиков. Средняя длительность 1-2 недели.
На этом же этапе разработки экспертных систем проходит извлечение знаний. Инженер по знаниям помогает эксперту выявить и структурировать знания, необходимые для работы экспертной системы, с использованием различных способов: анализ текстов, диалоги, экспертные игры, лекции, дискуссии, интервью, наблюдение и другие. Извлечение знаний – это получение инженером по знаниям более полного представления о предметной области и методах принятия решения в ней. Средняя длительность 1-3 месяца.
Этап 2. Концептуализация
Выявляется структура полученных знаний о предметной области. Определяются: терминология, перечень главных понятий и их атрибутов, структура входной и выходной информации, стратегия принятия решений и т.д. Концептуализация – это разработка неформального описания знаний о предметной области в виде графа, таблицы, диаграммы либо текста, которое отражает главные концепции и взаимосвязи между понятиями предметной области. Средняя длительность этапа 2-4 недели.
Этап 3. Формализация
На этапе формализации все ключевые понятия и отношения, выявленные на этапе концептуализации, выражаются на некотором формальном языке, предложенном (выбранном) инженером по знаниям. Здесь он определяет, подходят ли имеющиеся инструментальные средства для решения рассматриваемой проблемы или необходим выбор другого инструментария, или требуются оригинальные разработки. Средняя длительность 1-2 месяца.
Этап 4. Реализация
Создается прототип экспертной системы, включающий базу знаний и другие подсистемы. На данном этапе применяются следующие инструментальные средства: программирование на обычных языках (Паскаль, Си и др.), программирование на специализированных языках, применяемых в задачах искусственного интеллекта (LISP, FRL, SmallTalk и др.) и др. Четвертый этап разработки экспертных систем в какой-то степени является ключевым, так как здесь происходит создание программного комплекса, демонстрирующего жизнеспособность подхода в целом. Средняя длительность 1-2 месяца.
Этап 5. Тестирование
Прототип проверяется на удобство и адекватность интерфейсов ввода-вывода, эффективность стратегии управления, качество проверочных примеров, корректность базы знаний. Тестирование – это выявление ошибок в выбранном подходе, выявление ошибок в реализации прототипа, а также выработка рекомендаций по доводке системы до промышленного варианта.
Этап 6. Опытная эксплуатация
Проверяется пригодность экспертной системы для конечных пользователей. По результатам этого этапа может потребоваться существенная модификация экспертной системы.
Процесс разработки экспертной системы не сводится к строгой последовательности перечисленных выше этапов. В ходе работ приходится неоднократно возвращаться на более ранние этапы и пересматривать принятые там решения.
3. Доработка прототипа до промышленной ЭС.
Осуществляется посредством следующих этапов:
демонстрационный прототип ЭС решает часть задачи, демонстрируя жизнеспособность подхода;
исследовательский прототип ЭС решает большинство задач, но неустойчив в работе;
действующий прототип ЭС - решает все задачи на реальных примерах, но требует много времени и памяти.
Промышленная ЭС обеспечивает высокое качество решений при минимизации требуемого времени и памяти; переписывается с использованием более эффективных средств представления знаний и языков ( Си, Паскаль ).
Коммерческая ЭС пригодна к продаже, т.е. хорошо документирована и снабжена сервисом.
4. Оценка ЭС необходима для того, чтобы проверить точность работы программы и ее полезность. Оценка ЭС осуществляется путем тестирования с широким привлечением других экспертов с целью апробирования работоспособности на различных примерах.
Оценку проводят исходя из следующих критериев:
критерий пользователей (понятность, удобство интерфейсов и др.)
критерий приглашенных экспертов (оценка советов-решений, предлагаемых системой, сравнение их с собственными решениями, оценка подсистемы объяснений и др.)
критерий коллектива разработчиков (эффективность реализации, производительность, время отклика, дизайн, широта охвата предметной области, непротиворечивость БЗ, анализ чувствительности программы к незначительным изменениям в представлении знаний, весовых коэффициентах и т.п.).
5. Стыковка системы осуществляется с другими программными средствами в среде, в которой она будет работать. На данном этапе происходит обучение пользователей, которых ЭС будет обслуживать. Иногда результаты стыковки влекут за собой внесение существенных изменений в ЭС.
Стыковка включает обеспечение связи ЭС с существующими БЗ и другими средствами на предприятии, а также улучшение системных файлов, зависящих от времени, от технических средств и т.п..
6. Поддержка ЭС обеспечивается ее перекодированием на эффективные языки программирования (типа Си) с целью повышения ее быстродействия и оптимизации памяти. Но при этом уменьшается гибкость ЭС. Такая перекодировка целесообразна только в случае, когда знания предметной области необходимо сохранить и не изменять в ближайшем будущем.
Средства построения ЭС - это системы программирования, которые упрощают проектирование ЭС, это язык программирования, используемый инженером знаний или программистом для построения ЭС. Инструмент - это также средство построения ЭС и включает язык, используемый для доступа к знаниям, поддерживающие средства - программы, обеспечивающие решение проблемы.
Разделим инструментальные средства построения ЭС на четыре категории, как показано на рис.2.7.




Рис. 2.7
ЯЗЫКИ ПРОГРАММИРОВАНИЯ используются:
проблемно-ориентированные (фортран, Паскаль и др.) для решения задач, связанных с большими алгебраическими вычислениями, статистическими исследованиями;
языки обработки текстов (Лисп, Пролог, Диамс и др.) для манипулирования символами в форме списковых структур для представления сложных понятий.
ЯЗЫКИ ИНЖЕНЕРИИ ЗНАНИЙ являются искусным инструментальным средством построения ЭС и используют:
скелетные языки ("раздетая" ЭС без специальных профессиональных знаний, т.е. оболочка), с механизмом вывода и средствами поддержки;
универсальный язык, который может быть применен к проблемам различного типа в различных прикладных областях и, обеспечивающий большие возможности управления поиска данных и доступа к ним.
ВСПОМОГАТЕЛЬНЫЕ СРЕДСТВА состоят из программ, оказывающих помощь в:
приобретении знаний у эксперта и в представлении их;
в разработке проектов ЭС.
СРЕДСТВА ПОДДЕРЖКИ облегчают:
программирование и содержат: средства отладки, средства ввода - вывода, редакторы базы знания, средства объяснений.
ИНСТРУМЕНТАЛЬНЫЕ СРЕДСТВА ПОСТРОЕНИЯ ЭКСПЕРТНЫХ СИСТЕМ
Традиционные языки программирования
Языки искусственного интеллекта
Это прежде всего Лисп (LISP) и Пролог (Prolog) - наиболее распространенные языки, предназначенные для решения задач искусственного интеллекта. Есть и менее распространенные языки искусственного интеллекта, например РЕФАЛ, разработанный в России. Универсальность этих языков меньшая, нежели традиционных языков, но ее потерю языки искусственного интеллекта компенсируют богатыми возможностями по работе с символьными и логическими данными, что крайне важно для задач искусственного интеллекта. На основе языков искусственного интеллекта создаются специализированные компьютеры (например, Лисп-машины), предназначенные для решения задач искусственного интеллекта. Недостаток этих языков - неприменимость для создания гибридных экспертных систем.
Специальный программный инструментарий
В эту группу программных средств искусственного интеллекта входят специальные инструментарии общего назначения. Как правило, это библиотеки и надстройки над языком искусственного интеллекта Лисп: KEE (Knowledge Engineering Environment), FRL (Frame Representation Language), KRL (Knowledge Represantation Language), ARTS и др., позволяющие пользователям работать с заготовками экспертных систем на более высоком уровне, нежели это возможно в обычных языках искусственного интеллекта.
"Оболочки"
Под "оболочками : (shells) понимают "пустые" версии существующих экспертных систем, т.е. готовые экспертные системы без базы знаний. Примером такой оболочки может служить EMYCIN (Empty MYCIN - пустой MYC1N), которая представляет собой незаполненную экспертную систему MYCIN. Достоинство оболочек в том, что они вообще не требуют работы программистов для создания готовой экспертной системы. Требуется только специалисты) в предметной области для заполнения базы знаний. Однако если некоторая предметная область плохо укладывается в модель, используемую в некоторой оболочке, заполнить базу знаний в этом случае весьма не просто.
Pазвитие средств построения ЭС можно проиллюстрировать рис. 2.8.

Рис. 2.8
Разработка средств построения ЭС часто начинают в процессе научных исследований, как экспериментальную систему, созданную для конкретной задачи, не проверяя ее систематически и исчерпывающе на других задачах.
Средства построения ЭС могут достичь уровня исследовательской системы после достаточно полного тестирования и поддержки разработчиком, но при этом могут оказаться относительно медленными и неэффективными из-за наделения излишней экзотичностью.
Уровня коммерческой системы достигают лишь немногие средства построения ЭС. Такие средства разрабатываются с учетом пожелания пользователя и облегчают проблему взаимодействия человек-ЭВМ.



ыбор
оптимального варианта ТП
СЛИ
(УСЛОВИЕ)