Математическая и программная реализация теории принятия решений

  • Вид работы:
    Курсовая работа (т)
  • Предмет:
    Информационное обеспечение, программирование
  • Язык:
    Русский
    ,
    Формат файла:
    MS Word
    262,39 Кб
  • Опубликовано:
    2012-10-07
Вы можете узнать стоимость помощи в написании студенческой работы.
Помощь в написании работы, которую точно примут!

Математическая и программная реализация теории принятия решений















Математическая и программная реализация теории принятия решений

СОДЕРЖАНИЕ

математическая программная решение реализация

ВВЕДЕНИЕ

.ОПИСАНИЕ ПОСТАНОВКИ ЗАДАЧИ

.1 Характеристика задачи

.2 Математическая постановка задачи

.ОПИСАНИЕ ИНФОРМАЦИИ

.1 Входная информация

.2 Выходная информации

. ИЕРАРХИЧЕСКАЯ СХЕМА

.1 Иерархическая схема

.2 Спецификация

.ОПИСАНИЕ АЛГОРИТМА ФУНЦИИ checkBox_Checked()

.1 Назначение и характеристика

.2 Используемая информация

.3 Результаты решения

.4 Алгоритм решения

.ОПИСАНИЕ АЛГОРИТМА ФУНЦИИ обработка()

.1 Назначение и характеристика

.2 Используемая информация

.3 Результаты решения

.4 Алгоритм решения

ЗАКЛЮЧЕНИЕ

ПРИЛОЖЕНИЯ

ВВЕДЕНИЕ

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

За такую структуру можно принять Базу знаний, представляющую из себя набор фактов и действий, возникающий при утверждении того или иного условия.

1.ОПИСАНИЕ ПОСТАНОВКИ ЗАДАЧИ

.1 Характеристика задачи

 

Цель:

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

)        Сопоставление фактов и условий.

)        Построение логического вывода, исходя из полученных данных в ходе выполнения алгоритма программы.

.2 Математическая постановка задачи

Приведем таблицу фактов и действий (образцов и консиквентов) (см.Таблица 1.2.1.).

Таблица 1.2.1.Таблица фактов и действий


Условие,образец

Действие, консиквент


Условие 1

Условие 2

Условие 3


1

Поставщик проверенный(1.1)

Товар качественный (1.2)

Цена приемлемая (1.3)

Поставщик подходит (Д1)

2

Поставщик давно на рынке (2.1)

Жалоб на поставщика не было (2.2)


Поставщик проверенный (Д2)

3

Есть рекомендации от других заказчиков (3.1)

Поставка производится в срок (3.2)

Товар не имеет дефектов (3.3)

Жалоб на поставщика не было (Д3)

4

Товар сертифицирован (4.1)

Товар прошел государственные экспертизы (4.2)


Товар качественный (Д4)

5

Цена чуть ниже чем у других поставщиков (5.1)



Цена приемлемая (Д5)


Исходя из данных приведенных в таблице (см.таблица 1.2.1.) математическую модель алгоритма построения логического вывода опишем следующим образом:

)        У1.1 and У1.2 and У1.3=>Д1

)        У2.1 or У2.2=>Д2

)        Д2=>У1.1

)        У3.1 or (У3.2 and У3.3)=>Д3

)        Д3=>У2.2.=>Д2=>У1.1

)        Д4=>У1.2.

)        У5.1=>Д5

)        Д5=>У1.3.

)        Д2 and Д4 and Д5 =>Д1

11)     Д5 and (У4.1. or У4.2.)and(У2.1 or У2.2) =>Д1

)        У5.1 and (У4.1. or У4.2) and ((У3.1 or (У3.2 and У3.3)) or У2.1) =Д1

Где:

У1,У2,У3 - условия (факты) необходимые для выполнения некоторого действия

Д - действие которое возникает при выполнении необходимых условий.

2.ОПИСАНИЕ ИНФОРМАЦИИ

.1 Входная информация

Входной информацией для программы в целом, является модуль data_base.cs ( который хранит в себе описание структуры базы знаний, непосредственно саму базу данных и функции инициализации и констатации фактов), а так же отмеченные утверждения (см. Рис.2.1.1.).

Рис.2.1.1.Панель выбора фактов

.2 Выходная информации

В качестве выходной информации (для программы в целом) выступает логический вывод (см.Рис.2.2.1), и панель отображения текущего состояния фактов (вывод данных об активности условий см.Рис.2.2.2.).

Рис.2.2.1.Построение вывода

Рис.2.2.2Активность условий

3. ИЕРАРХИЧЕСКАЯ СХЕМА

.1 Иерархическая схема представлена в виде граф - схемы (см.Рис.3.1.1)

Рис.3.1.1.Граф-схема Иерархия функций

.2 Спецификация

 

Кurs_TPR - основная программа

checkbox_checked() - функция отвечающая за передачу образцов, выбранных пользователем, функции data.Констотация_факта().

exit() - функция реализует выход из программы.

data.Констотация_факта() - занесение изменений состояния образца в базу знаний.

обновить() - обновление панели отображения состояний фактов (образцов) базы знаний.

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

4.ОПИСАНИЕ АЛГОРИТМА ФУНЦИИ checkBox_Checked()

.1 Назначение и характеристика

Алгоритм предназначен для обработки выбранных пользователем фактов и передачи их модулю data_base.cs (передачи данных базе знаний);

.2 Используемая информация

В алгоритме используются «форма»(form1) с прикрепленными к ней элементами (checkBox1-11), позволяющими пользователю выбрать необходимый «факт»;

.3 Результаты решения

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

.4 Алгоритм решения

Представим алгоритм решения в виде граф-схемы (Рис.4.4.1.).

Граф-схема checkBox_Checked()

Функция обработки выбора образцов

Рис.4.4.1.

5.ОПИСАНИЕ АЛГОРИТМА ФУНЦИИ обработка()

.1 Назначение и характеристика

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

.2 Используемая информация

В алгоритме используется база знаний описанная в модуле data_base.cs, данные которой можно представить в виде таблицы (см.Таблица 5.2.1.)

Таблица 5.2.1.Структура базы знаний

Имя объекта/элемента

тип

Допустимые значения/элементы в составе

BD[]

struct DATA

yslovie1, yslovie1, yslovie1,deistvie

yslovie1, yslovie2, yslovie3

struct Yslovie

yslovie,ActivE

yslovie

string

А-я,A-z и символы разделители

ActivE

bool

true/false

deistvie

string

А-я,A-z и символы разделители


Где:

yslovie1, yslovie2, yslovie3 - составные части образца

yslovie -поле части образца

ActivE - состояние (активность) части образца

Deistvie - консиквент (действие при выполнении условия)

5.3 Результаты решения

Результатом решения выступает построение логического вывода (получение консиквента).

.4 Алгоритм решения

Представим алгоритм решения в виде граф-схемы (Рис.5.4.1.).

Граф-схема обработка()

Функция обработки базы знаний

Рис.5.4.1.

ЗАКЛЮЧЕНИЕ

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

ПРИЛОЖЕНИЕ

Приложение 1

ТЕКСТ ПРОГРАММЫ

using System;System.Collections.Generic;System.ComponentModel;System.Data;System.Drawing;System.Text;System.Windows.Forms;data_base;

Kurs_TPR

{partial class Form1 : Form

{DatA Data = new DatA();Form1()

{();.инициализация_БД();

}void label3_Click(object sender, EventArgs e)

{this.Close();}

void move_exit(object sender, MouseEventArgs e)

{label3.ForeColor = Color.BlueViolet;}void move_form(object sender, MouseEventArgs e)

{label3.ForeColor = Color.Maroon;}

void move_title(object sender, MouseEventArgs e)

{panel4.Visible = true;}

void move_title_end(object sender, MouseEventArgs e)

{panel4.Visible = false;}

void обработка()

{listBox1.Items.Clear();listBox1.Refresh();изменение=true;(изменение == true)

{ изменение = false;((Data.BD[0].yslovie1.ActivE == true) && (Data.BD[0].yslovie2.ActivE == true) && (Data.BD[0].yslovie3.ActivE == true))

{ listBox1.Items.Add(Data.BD[0].yslovie1.yslovie);.Items.Add(Data.BD[0].yslovie2.yslovie);.Items.Add(Data.BD[0].yslovie3.yslovie);.Items.Add("ВЫВОД: " + Data.BD[0].deistvie);.Items.Add("<---X--->");

}else

{if (Data.BD[0].yslovie1.ActivE == false)

{((Data.BD[1].yslovie1.ActivE == true) || (Data.BD[1].yslovie2.ActivE == true))

{ if (Data.BD[1].yslovie1.ActivE == true) listBox1.Items.Add(Data.BD[1].yslovie1.yslovie);listBox1.Items.Add(Data.BD[1].yslovie2.yslovie);.Items.Add("ВЫВОД: " + Data.BD[1].deistvie);.Items.Add("<---X--->");.BD[0].yslovie1.ActivE = true;.Checked = true;

изменение = true;

}if (((Data.BD[2].yslovie2.ActivE == true) && (Data.BD[2].yslovie3.ActivE == true)) || (Data.BD[2].yslovie1.ActivE == true))

{ if ((Data.BD[2].yslovie1.ActivE == true) && (Data.BD[2].yslovie2.ActivE == false)).Items.Add(Data.BD[2].yslovie1.yslovie);

{ listBox1.Items.Add(Data.BD[2].yslovie2.yslovie);.Items.Add(Data.BD[2].yslovie3.yslovie);

};.Items.Add("ВЫВОД: " + Data.BD[2].deistvie);.Items.Add("<---X--->");.BD[1].yslovie2.ActivE = true;.Checked = true;

изменение = true;

}

}(Data.BD[0].yslovie2.ActivE == false)

{if ((Data.BD[3].yslovie1.ActivE == true) || (Data.BD[3].yslovie2.ActivE == true))

{if (Data.BD[3].yslovie1.ActivE == true) listBox1.Items.Add(Data.BD[3].yslovie1.yslovie);listBox1.Items.Add(Data.BD[3].yslovie2.yslovie);.Items.Add("ВЫВОД: "+Data.BD[3].deistvie);.Items.Add("<---X--->");.BD[0].yslovie2.ActivE = true;.Checked = true;

изменение = true;

}

}(Data.BD[0].yslovie3.ActivE == false)

{if (Data.BD[4].yslovie1.ActivE == true)

{ listBox1.Items.Add(Data.BD[4].yslovie1.yslovie);.Items.Add("ВЫВОД: "+Data.BD[4].deistvie);.BD[0].yslovie3.ActivE = true;.Checked = true;

изменение = true;

}

}

}

}

}

void Обновить()

{ listBox2.Items.Clear();(int i = 0; i < 5; i++)

{listBox2.Items.Add(Data.BD[i].yslovie1.ActivE.ToString() +" "+ Data.BD[i].yslovie2.ActivE.ToString() +" "+ Data.BD[i].yslovie3.ActivE.ToString());

}.Refresh();

}

void checkBox1_CheckedChanged(object sender, EventArgs e)

{ if (sender == checkBox1)

{ Data.Констотация_факта(1);(Data.BD[0].yslovie1.ActivE == true)

{checkBox2.Enabled=checkBox3.Enabled=checkBox4.Enabled=checkBox5.Enabled=checkBox6.Enabled=false;

}else checkBox2.Enabled = checkBox3.Enabled = checkBox4.Enabled = checkBox5.Enabled = checkBox6.Enabled = true;

{ Data.Констотация_факта(5);(Data.BD[1].yslovie2.ActivE==true)

{checkBox4.Enabled = checkBox5.Enabled = checkBox6.Enabled = false;

}else checkBox4.Enabled = checkBox5.Enabled = checkBox6.Enabled = true;

};(sender == checkBox4) {Data.Констотация_факта(7); };(sender == checkBox5) {Data.Констотация_факта(8); };(sender == checkBox6) {Data.Констотация_факта(9); };(sender == checkBox7)

{ Data.Констотация_факта(2); (Data.BD[0].yslovie2.ActivE==true)

{checkBox8.Enabled = checkBox9.Enabled = false;

}else checkBox8.Enabled = checkBox9.Enabled = true;

};(sender == checkBox8) {Data.Констотация_факта(10); };(sender == checkBox9) {Data.Констотация_факта(11); };(sender == checkBox10)

{ Data.Констотация_факта(3);(Data.BD[0].yslovie3.ActivE==true)

{checkBox11.Enabled=false;

}else checkBox11.Enabled=true;

};(sender == checkBox11) {Data.Констотация_факта(13); };

Обновить();

обработка();

}

}

}

Приложение 2

ТЕКСТ МОДУЛЯ data_base.cs

using System;System.Collections.Generic;System.ComponentModel;System.Data;System.Drawing;System.Text;data_base

{ public class DatA

{ public struct DATA

{ public struct Yslovie { public string yslovie; public bool ActivE;}Yslovie yslovie1;Yslovie yslovie2;Yslovie yslovie3;string deistvie;};DATA.Yslovie yslovie1 = new DATA.Yslovie();DATA.Yslovie yslovie2 = new DATA.Yslovie();DATA.Yslovie yslovie3 = new DATA.Yslovie();DATA[] BD = new DATA[5];void инициализация_БД()

{ BD[0].yslovie1.yslovie = "поставщик проверенный"; BD[0].yslovie1.ActivE = false;[0].yslovie2.yslovie = "товар качественный"; BD[0].yslovie2.ActivE = false;[0].yslovie3.yslovie = "цена приемлемая"; BD[0].yslovie3.ActivE = false;[0].deistvie = "Поставщик подходит";[1].yslovie1.yslovie = "поставщик давно на рынке"; BD[1].yslovie1.ActivE = false;[1].yslovie2.yslovie = "жалоб на поставщика не было"; BD[1].yslovie2.ActivE = false;[1].yslovie3.yslovie = null; BD[1].yslovie3.ActivE = false;[1].deistvie = "поставщик проверенный";[2].yslovie1.yslovie = "есть рекомендации от других заказчиков"; BD[2].yslovie1.ActivE = false;[2].yslovie2.yslovie = "поставка производится в срок"; BD[2].yslovie2.ActivE = false;[2].yslovie3.yslovie = "товар не получает дефектов в ходе транспатрировки"; BD[2].yslovie3.ActivE = false;[2].deistvie = "жалоб на поставщика не было";[3].yslovie1.yslovie = "товар сертифицирован"; BD[3].yslovie1.ActivE = false;[3].yslovie2.yslovie = "товар прощел государственные экспертизы"; BD[3].yslovie2.ActivE = false;[3].yslovie3.yslovie = null; BD[3].yslovie3.ActivE = false;[3].deistvie = "товар качественный";[4].yslovie1.yslovie = "цена чуть ниже чем у других поставщиков"; BD[4].yslovie1.ActivE = false;[4].yslovie2.yslovie = null; BD[4].yslovie2.ActivE = false;[4].yslovie3.yslovie = null; BD[4].yslovie3.ActivE = false;[4].deistvie = "цена приемлемая";

}void Констотация_факта(int i)

{ switch (i)

{ case 1: if (BD[0].yslovie1.ActivE == true) BD[0].yslovie1.ActivE = false;BD[0].yslovie1.ActivE = true; break;2: if (BD[0].yslovie2.ActivE == true) BD[0].yslovie2.ActivE = false;BD[0].yslovie2.ActivE = true; break;3: if (BD[0].yslovie3.ActivE == true) BD[0].yslovie3.ActivE = false;BD[0].yslovie3.ActivE = true; break;4: if (BD[1].yslovie1.ActivE == true) BD[1].yslovie1.ActivE = false;BD[1].yslovie1.ActivE = true; break;5: if (BD[1].yslovie2.ActivE == true) BD[1].yslovie2.ActivE = false;BD[1].yslovie2.ActivE = true; break;6: if (BD[1].yslovie3.ActivE == true) BD[1].yslovie3.ActivE = false;BD[1].yslovie3.ActivE = true; break;7: if (BD[2].yslovie1.ActivE == true) BD[2].yslovie1.ActivE = false;BD[2].yslovie1.ActivE = true; break;8: if (BD[2].yslovie2.ActivE == true) BD[2].yslovie2.ActivE = false;BD[2].yslovie2.ActivE = true; break;9: if (BD[2].yslovie3.ActivE == true) BD[2].yslovie3.ActivE = false;BD[2].yslovie3.ActivE = true; break;10: if (BD[3].yslovie1.ActivE == true) BD[3].yslovie1.ActivE = false;BD[3].yslovie1.ActivE = true; break;11: if (BD[3].yslovie2.ActivE == true) BD[3].yslovie2.ActivE = false;BD[3].yslovie2.ActivE = true; break;12: if (BD[3].yslovie3.ActivE == true) BD[3].yslovie3.ActivE = false;BD[3].yslovie3.ActivE = true; break;13: if (BD[4].yslovie1.ActivE == true) BD[4].yslovie1.ActivE = false;BD[4].yslovie1.ActivE = true; break;14: if (BD[4].yslovie2.ActivE == true) BD[4].yslovie2.ActivE = false;BD[4].yslovie2.ActivE = true; break;15: if (BD[4].yslovie3.ActivE == true) BD[4].yslovie3.ActivE = false;BD[4].yslovie3.ActivE = true; break;}

}}}

Приложение 3

КОНТРОЛЬНЫЕ ПРИМЕРЫ

Интерфейс программы состоит из трех основных частей: панель утверждения фактов(образцов), панель построения логического вывода, панель отображения активности образцов. Интерфейс представлен на рисунке Контрольный пример 1 (интерфейс)(см.Рис.П.3.1.).

Контрольный пример 1 (интерфейс)

Рис.П.3.1.

Установим два факта (образца): товар прошел государственные экспертизы; цена приемлемая. Исходя из данных фактов программа должна, в поле построения вывода, выдать запись, о том, что товар качественный (т.к. товар прошел государственные экспертизы => товар качественный).Окно программы представлено на рисунке Контрольный пример 2(см..Рис.П.3.2).

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

Рис.П.3.2.

Установим следующие факты (образцы): поставка происходит в срок; товар не получает дефектов в ходе транспортировки; товар прошел государственные экспертизы; цена приемлемая. Исходя из данных фактов программа должна, в поле построения вывода, выдать запись, о том, что товар качественный (т.к. товар прошел государственные экспертизы => товар качественный), после чего обрабатывая образцы «поставка происходит в срок», «товар не получает дефектов», программа должна сделать вывод о том что жалоб на поставщика не было, а исходя из этого факта(из того что жалоб не было), программа должна сделать вывод о том что поставщик проверенный, в следствии чего следует вывод о том что поставщик подходит(т.к. Поставщик проверенный и товар качественный и цена приемлемая => поставщик подходит).Окно программы представлено на рисунке Контрольный пример 3(см..Рис.П.3.3.).

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

Рис.П.3.3.

Установим следующие факты (образцы): есть рекомендации от других заказчиков; товар прошел государственные экспертизы; цена приемлемая. Исходя из данных фактов программа должна, в поле построения вывода, выдать запись, о том, что товар качественный (т.к. товар прошел государственные экспертизы => товар качественный), после чего обрабатывая образец «есть рекомендации от других заказчиков», программа должна сделать вывод о том что жалоб на поставщика не было, а исходя из этого факта(из того что жалоб не было), программа должна сделать вывод о том что поставщик проверенный, в следствии чего следует вывод о том что поставщик подходит(т.к. Поставщик проверенный и товар качественный и цена приемлемая => поставщик подходит).Окно программы представлено на рисунке Контрольный пример 4(см..Рис.П.3.4.).

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

Рис.П.3.4.

Установим следующие факты (образцы): поставщик давно на рынке; товар сертифицирован; цена приемлемая. Исходя из данных фактов программа должна, в поле построения вывода, выдать запись, о том, поставщик проверенный (т.к. поставщик давно на рынке => поставщик проверенный), после чего обрабатывая образец «товар сертифицирован», программа должна сделать вывод о том что товар качественный, а исходя из этого факта(из того что тавр качественный) в следствии чего следует вывод о том что поставщик подходит(т.к. Поставщик проверенный и товар качественный и цена приемлемая => поставщик подходит).Окно программы представлено на рисунке Контрольный пример 5(см..Рис.П.3.5.).

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

Рис.П.3.5.

Приложение 4

РУКОВОДСТВО ПРОГРАММИСТА

П.4.1.Назначение программы

Программа предназначена для построения вывода, исходя из данных введенных пользователем.

П.4.2.Описание информации

П.4..2.1.Входная информация

Входной информацией для программы в целом, является модуль data_base.cs ( который хранит в себе описание структуры базы знаний, непосредственно саму базу данных и функции инициализации и констатации фактов), а так же отмеченные утверждения (см. Рис.2.1.1.).

Панель выбора фактов

Рис.2.1.1.

П.4.2.2. Выходная информации

В качестве выходной информации (для программы в целом) выступает логический вывод (см.Рис.2.2.1), и панель отображения текущего состояния фактов (вывод данных об активности условий см.Рис.2.2.2.).

Построение вывода

Рис.2.2.1.

Активность условий

Рис.2.2.2

П.4.3Требования необходимые для работы программы

Для работы программы необходимым и достаточным является установленная операционная система windows xp,seven,vista.

П.4.4 Известные ошибки

В процессе тестирования программы ошибок обнаружено не было.

П.4.5 Общее представление модуля data_base.cs

Модуль содержит определение структуры базы знаний, функции её инициализации и констатации фактов (утверждения образцов).

П.4.5.1.Разработанная структураstruct DATA

{ public struct Yslovie { public string yslovie; public bool ActivE;}Yslovie yslovie1;Yslovie yslovie2;Yslovie yslovie3;string deistvie;

};

П.4.5.2.Описание структуры

Структура DATA содержит в своем составе четыре элемента (yslovie1, yslovie2, yslovie3, deistvie), а элементы yslovie1, yslovie2 и yslovie3 являются объектами структуры Yslovie, и содержат поля yslovie и ActivE. Поле yslovie содержит факт, поле ActivE содержит состояние факта.

База знаний представляет собой последовательность записей структурой DATA, для создания базы необходимо добавить определение объектов yslovie1, yslovie2 и yslovie3, и создать объект записей структуры DATA. Для этого необходимо добавить следующие строки:

public DATA.Yslovie yslovie1 = new DATA.Yslovie();DATA.Yslovie yslovie2 = new DATA.Yslovie();DATA.Yslovie yslovie3 = new DATA.Yslovie();DATA[] BD = new DATA[5];

Итоговое представление базы знаний на языке программирования C# будет выглядеть следующим образом:

public struct DATA

{ public struct Yslovie { public string yslovie; public bool ActivE;}Yslovie yslovie1;Yslovie yslovie2;Yslovie yslovie3;string deistvie;

};DATA.Yslovie yslovie1 = new DATA.Yslovie();DATA.Yslovie yslovie2 = new DATA.Yslovie();DATA.Yslovie yslovie3 = new DATA.Yslovie();DATA[] BD = new DATA[5];

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

Приложение 5

РУКОВОДСТВО ПОЛЬЗОВАТЕЛЯ

П.5.1.Назначение программы

Программа предназначена для построения вывода, исходя из данных введенных пользователем.

П.5.2.Описание информации

П.5.2.1.Входная информация

Входной информацией для программы в целом, является модуль data_base.cs (который хранит в себе описание структуры базы знаний, непосредственно саму базу данных и функции инициализации и констатации фактов), а так же отмеченные утверждения (см. Рис.5.2.1.1.).

Панель выбора фактов

Рис.5.2.1.1.

П.5.2.2. Выходная информации

В качестве выходной информации (для программы в целом) выступает логический вывод (см.Рис.5.2.2.1), и панель отображения текущего состояния фактов (вывод данных об активности условий см.Рис.5.2.2.2.).

Построение вывода

Рис.5.2.2.1.

Активность условий

Рис.5.2.2.2

П.4.3.Требования необходимые для работы программы

Для работы программы необходимым и достаточным является установленная операционная система windows xp,seven,vista.

Похожие работы на - Математическая и программная реализация теории принятия решений

 

Не нашли материал для своей работы?
Поможем написать уникальную работу
Без плагиата!