Инженерия знаний ( KE ) относится ко всем техническим, научным и социальным аспектам, связанным с созданием, поддержанием и использованием систем, основанных на знаниях .
Одним из первых примеров экспертной системы было MYCIN — приложение для проведения медицинской диагностики. В примере MYCIN экспертами в области были врачи, а представленные знания представляли собой их опыт в диагностике.
Экспертные системы были впервые разработаны в лабораториях искусственного интеллекта как попытка понять сложные процессы принятия решений человеком. Основываясь на положительных результатах этих первоначальных прототипов, технология была принята деловым сообществом США (а затем и во всем мире) в 1980-х годах. Стэнфордский проект эвристического программирования, возглавляемый Эдвардом Фейгенбаумом, был одним из лидеров в определении и разработке первых экспертных систем.
На заре появления экспертных систем формальный процесс создания программного обеспечения был практически отсутствующим. Исследователи просто встретились с экспертами в предметной области и начали программировать, часто разрабатывая необходимые инструменты (например, механизмы вывода ) одновременно с самими приложениями. По мере того как экспертные системы перешли от академических прототипов к развернутым бизнес-системам, стало понятно, что необходима методология, обеспечивающая предсказуемость и контроль в процессе создания программного обеспечения. По сути, было опробовано два подхода:
Многие из первых экспертных систем были разработаны крупными консалтинговыми фирмами и фирмами по системной интеграции, такими как Andersen Consulting . Эти фирмы уже хорошо протестировали традиционные каскадные методологии (например, Method/1 для Andersen), которым они обучили весь свой персонал и которые практически всегда использовались при разработке программного обеспечения для своих клиентов. Одной из тенденций в разработке ранних экспертных систем было простое применение каскадных методов к разработке экспертных систем.
Другая проблема с использованием традиционных методов разработки экспертных систем заключалась в том, что из-за беспрецедентного характера экспертных систем они были одними из первых приложений, принявших методы быстрой разработки приложений , которые включают итерацию и прототипирование, а также или вместо детального анализа и проектирования. В 1980-х годах этот тип подхода поддерживали лишь немногие традиционные программные методы.
Последней проблемой использования традиционных методов разработки экспертных систем была необходимость приобретения знаний . Приобретение знаний относится к процессу сбора экспертных знаний и их фиксации в форме правил и онтологий. Приобретение знаний имеет особые требования, выходящие за рамки обычного процесса спецификации, используемого для учета большинства бизнес-требований.
Эти проблемы привели ко второму подходу к инженерии знаний: разработке специальных методологий, специально предназначенных для создания экспертных систем. [1] Одной из первых и наиболее популярных таких методологий, специально разработанных для экспертных систем, была методология сбора знаний и структурирования документации (KADS), разработанная в Европе. KADS имел большой успех в Европе, а также использовался в США. [2]