Экспертная система. Анализ передачи телеметрических данных со спутника

Курсовой проект - Компьютеры, программирование

Другие курсовые по предмету Компьютеры, программирование

Введение

экспертный эвристический телеметрический спутник

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

К числу областей, в которых применяются экспертные системы, относятся следующие:

  • Идентификация и ликвидация неполадок в локомотивах;
  • Анализ передачи телеметрических данных со спутника

Экспертная система. Анализ передачи телеметрических данных со спутника

 

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

  1. Ветер
  2. Воздушные массы

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

База знаний представлена в виде записей двух типов это 1) записи, хранящие типы сигналов и 2) записи, характеризующие расшифровку База симптомов представлена в виде полей, имеющих свой номер и название симптома:

 

signalip(Номер_сигнала, Номер_описания, Название)

 

Номер является уникальным идентификатором сигнала и база знаний не может иметь двух сигналов с одинаковыми номерами.

Номер_описания хранит ссылку на номер сигнала, которая могла вызвать данный эффект.

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

База типов сигнала представляет собой предикат типа:

 

decodip(Номер_типа сигнала, Название, Метод_расшифровки)

Поля Номер и Название имеют тот же смысл, что и для симптома, а Метод_расшифровки это указание пользователю, как можно выявить нужную информацию.

Фрагмент базы данных, используемой данной экспертной системой, представлен ниже:

 

 

Разработка процедур

Главная процедура Main

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

Процедура вывода информации о программе Zastavka

Очищая первое окно, эта процедура выводит на экран заставку программы в виде титульного листа данного курсового проекта.

 

Процедура главного меню Start

Эта процедура выводит на экран список следующих режимов, каждый из которых реализован с помощью отдельной процедуры. Меню представляет собой окно, в котором обозначены пункты. Чтобы зайти в нужный пункт, нужно поставить курсор на надпись и нажать Enter. После этого происходит выполнение вспомогательной процедуры Select(Ch), где Ch целочисленная переменная, которая определяется положением курсора в окне меню. Выбирая один из пунктов меню, пользователь вызывает соответствующую ему процедуру:

 

 

Процедуры загрузки и сохранения БД LoadBDFile и SaveBD

Загрузка и сохранение БД осуществляются через стандартные процедуры для работы с БД: consult и save. Доступ к файлам на диске производится через предикат dir, возвращающий в качестве параметра имя файла и путь к нему.

Процедура анализа Diagnostic

 

Производит проверку наличия признаков и описаний в базе данных. Затем с помощью вспомогательной процедуры ResearchNode открывается диалог между пользователем и экспертной системой. Параллельно с помощью процедуры KeySelect на основе ответов пользователя формируется специальный код неисправности с помощью которого производится поиск описания в БД. С помощью предиката FaultFound выводится сообщение о нахождении неисправностей и рекомендации по ее устранению.

Процедура меню правки EditBD

Выводит на экран подменю правки БД. Выбирая один из пунктов меню, пользователь вызывает соответствующую ему процедуру:

 

 

Здесь также используются процедуры добавления признаков и описаний AddFault и AddRepair, процедуры просмотра признаков и описаний ShowFault и ShowRepair, процедуры удаления признаков и описаний DeleteFault и DeleteRepair и процедура выхода из программы ExitProg.