Смекни!
smekni.com

Разработка алгоритмического и программного обеспечения ситуационного управления безопасностью магистральных газопроводов (стр. 8 из 11)


3) поиск узла - осуществляется последовательным перебором всех узлов дерева;

4) просмотр узлов дерева - позволяет вывести на экран список всех объектов и их значений, содержащихся в базе данных.

Модуль обработки степени доверия позволяет:

1) добавлять коэффициент доверия для каждого значения объекта;

2) изменять существующий коэффициент доверия;

3) извлекать коэффициент доверия из пары "объект-значение".

Модуль вопросов об объектах выполняет следующие функции:

1) добавляет вопрос об объекте;

2) выводит существующий вопрос для заданного объекта;

3) позволяет пользователю ответить на вопрос об объекте.

Модуль использования правил базы знаний позволяет:

1) добавлять к текущему правилу предпосылку;

2) добавлять к текущему правилу заключение;

3) считывать правила из текстового файла и заносить его в список правил базы знаний.

Модуль поиска пути движения по дереву выполняет следующие функции:

1) выводит наиболее или наименее вероятный сценарий развития ситуации;

2) подсчитывает вероятности реализации событий;

3) подсчитывает возможный ущерб при реализации каждого сценария.

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

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

Основной модуль программы - MAG. dpr. Модуль MainUnit описывает процедуру формирования "дерева" и поиска возможных путей движения по нему. В текстовом файле rules. txt хранятся все факты базы знаний и правила движения по "дереву".

Текст программы приведен в приложении Б.

4.2 Руководство по эксплуатации

Для запуска программы необходимо выбрать файл MAG. exe. На экране появится главная рабочая форма программы (рис.4.3).

Рисунок 4.3 - Главная форма ПО "МАГ".


Для того, чтобы наполнить базу знаний фактами, необходимо ввести имена объектов, их возможные значения коэффициенты доверия и коэффициенты ущерба. После чего нажать кнопку "1. Добавление факта в базу знаний" (рис.4.4).

Рисунок 4.4 - Область добавления фактов в базу знаний

Для проверки наличия в базе объекта с определенным значением необходимо ввести в соответствующее поле имя объекта и значение, а затем нажать кнопку "2. Проверить факт из базы" (рис.4.5).

Рисунок 4.5 - Область проверки наличия фактов в базе

Просмотреть все имеющиеся в базе факты можно, нажав кнопку "3. Просмотр фактов базы знаний". При этом результаты отобразятся в окне "Ход выполнения" (рис.4.3).

Запись всех фактов в текстовый файл осуществляется при нажатии кнопки "Сохранить базу в файл".

Для каждого объекта возможно добавление вопроса. Для этого необходимо ввести имя объекта и вопрос, после чего нажать кнопку "4. Добавить вопрос объекта" (рис.4.6).

Рисунок 4.6 - Область добавления вопроса объекта.


Кнопка "5.1. Получить вопрос об объекте" позволяет определить заданный по конкретному объекту вопрос.

Для того, чтобы выбрать определенное значение ответа на вопрос, необходимо выбрать его порядковый номер и затем нажать кнопку "5.2. Ответить на вопрос об объекте" (рис.4.7).

Рисунок 4.7 - Область получения ответа на вопрос

Для определения наименее вероятного сценария развития событий необходимо ввести описание ситуации и нажать кнопку "6. Поиск наименее вероятного сценария развития событий". Результаты поиска отобразятся в окне "Ход выполнения".

Для определения наиболее вероятного сценария развития событий необходимо ввести описание ситуации и нажать кнопку "7. Поиск наиболее вероятного сценария развития событий". Результаты поиска отобразятся в окне "Ход выполнения".

Для поиска сценария с наименьшим возможным ущербом необходимо ввести описание ситуации и нажать кнопку "8. Поиск сценария с наименьшим ущербом". Результаты поиска отобразятся в окне "Ход выполнения".

Для поиска сценария с наибольшим возможным ущербом необходимо ввести описание ситуации и нажать кнопку "9. Поиск сценария с наибольшим ущербом". Результаты поиска отобразятся в окне "Ход выполнения".

Завершение работы программы осуществляется при нажатии кнопки "Выход".

4.3 Контрольный пример

Для начала работы с программой необходимо запустить файл MAG. exe. После запуска файла на экране появится главная форма (рис.4.3).

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

Например, объект "ветер на здание", значение "концентрация <1%", коэффициент доверия 35, коэффициент ущерба 79.

Далее нажать кнопку "1. Добавление факта в базу знаний". Факт будет добавлен в базу знаний (рис.4.8).

Рисунок 4.8 - Добавление факта в базу знаний


Проверить факт на наличие в базе можно следующим образом. Ввести имя объекта ("ветер на здание") и его значение ("концентрация <1%"), затем нажать кнопку "2. Проверить факт из базы". В окне "Ход выполнения" появится информация "Факт верен" (рис.4.9).

Рисунок 4.9 - Проверка наличия факта в базе (факт имеется)

Если факт отсутствует в базе знаний (например, объект "ветер на здание" со значением "концентрация <10%"), то после нажатия кнопки "2. Проверить факт из базы" в окне "Ход выполнения" появится информация "Факт неверен" (рис.4.10).


Рисунок 4.10 - Проверка наличия факта в базе (факт отсутствует)

Чтобы просмотреть все имеющиеся в базе факты необходимо нажать кнопку "3. Просмотр фактов базы знаний". В окне "Ход выполнения" отобразятся все имеющиеся в базе факты (рис.4.11).


Рисунок 4.11 - Просмотр всех имеющихся в базе фактов

Для того, чтобы добавить вопрос объекта, необходимо ввести имя объекта, например "ветер на здание", и вопрос - "какова концентрация". После этого нажать кнопку "4. Добавить вопрос объекта" (рис.4.12).

Рисунок 4.12 - Добавление вопроса об объекте


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

Файл rules. txt будет иметь следующее содержание - рис.4.13.

Рисунок 4.13 - Содержание файла rules. txt

Для того, чтобы получить вопрос об объекте, необходимо ввести имя объекта ("ветер на здание") и нажать кнопку "5.1. Получить вопрос об объекте". В поле "Вопрос" выведется имеющийся в базе вопрос о данном объекте ("какова концентрация").

Для установления конкретного (одного) значения объекта из нескольких имеющихся (например, значения "концентрация <1%" для объекта "ветер на здание") необходимо выбрать номер значения 2 и нажать кнопку "5.2. Ответить на вопрос об объекте" (рис.4.14).


Рисунок 4.14 - Установка ответа на вопрос

Для ситуации "выброс газа" определим наименее вероятный сценарий развития событий, наиболее вероятный сценарий развития событий, сценарий с наименьшим ущербом, сценарий с наибольшим ущербом.

При нажатии кнопки "6. Поиск наименее вероятного сценария развития событий" в окне "Ход выполнения" отобразятся все возможные варианты развития событий, наименее вероятный сценарий развития событий, его вероятность и коэффициент ущерба (рис.4.15).


Рисунок 4.15 - Поиск наименее вероятного сценария развития событий

При нажатии кнопки "7. Поиск наиболее вероятного сценария развития событий" в окне "Ход выполнения" отобразятся все возможные варианты развития событий (рис.4.15), наиболее вероятный сценарий развития событий, его вероятность и коэффициент ущерба (рис.4.16).

Рисунок 4.16 - Поиск наиболее вероятного сценария развития событий


Для того, чтобы определить сценарий с наименьшим ущербом, необходимо нажать кнопку "8. Поиск сценария с наименьшим ущербом". Результаты поиска отобразятся в окне "Ход выполнения" (рис.4.17).

Рисунок 4.17 - Поиск сценария с наименьшим ущербом