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

бесплатно 0
4.5 120
Реализация программы, позволяющей принять решение о выборе поставщика товаров, по аналогии с продукционной моделью представления знаний (сопоставления образцов и консиквентов). Математическая постановка задачи, программный алгоритм и этапы его разработки.


Аннотация к работе
Вследствии чего становится затруднительным сделать логический вывод на основании тех или иных фактов(условий), для облегчения процесса установления вывода необходимо формализовать знания, упорядочить и представить в виде некой структуры, удобной для хранения и отображения информации.Цель: Необходимо разработать и реализовать программу, позволяющую выбрать поставщика товаров.Приведем таблицу фактов и действий (образцов и консиквентов) (см.Таблица 1.2.1.). 1 Поставщик проверенный(1.1) Товар качественный (1.2) Цена приемлемая (1.3) Поставщик подходит (Д1) 2 Поставщик давно на рынке (2.1) Жалоб на поставщика не было (2.2) Поставщик проверенный (Д2) 3 Есть рекомендации от других заказчиков (3.1) Поставка производится в срок (3.2) Товар не имеет дефектов (3.3) Жалоб на поставщика не было (Д3)Входной информацией для программы в целом, является модуль data_base.cs (который хранит в себе описание структуры базы знаний, непосредственно саму базу данных и функции инициализации и констатации фактов), а так же отмеченные утверждения (см.В качестве выходной информации (для программы в целом) выступает логический вывод (см.Рис.2.2.1), и панель отображения текущего состояния фактов (вывод данных об активности условий см.Рис.2.2.2.).3.1 Иерархическая схема представлена в виде граф - схемы (см.Рис.3.1.1)Kurs_TPR - основная программа checkbox_checked() - функция отвечающая за передачу образцов, выбранных пользователем, функции data.Констотация_факта(). exit() - функция реализует выход из программы. data.Констотация_факта() - занесение изменений состояния образца в базу знаний. обновить() - обновление панели отображения состояний фактов (образцов) базы знаний. обработка() - функция реализует обработку базы знаний вызванную внесенными изменениями в базу знаний, а так же функция отвечает за построение и отображение логического вывода, полученного в ходе обработки образцов и консиквентов.Алгоритм предназначен для обработки выбранных пользователем фактов и передачи их модулю data_base.cs (передачи данных базе знаний);В алгоритме используются «форма»(form1) с прикрепленными к ней элементами (CHECKBOX1-11), позволяющими пользователю выбрать необходимый «факт»;Результатом является передача необходимых параметров модулю data_base и вызов функций обработка() и обновить().Представим алгоритм решения в виде граф-схемы (Рис.4.4.1.).Функция реализует обработку базы знаний вызванную внесенными изменениями в базу знаний, а так же функция отвечает за построение и отображение логического вывода, полученного в ходе обработки образцов и консиквентов.В алгоритме используется база знаний описанная в модуле data_base.cs, данные которой можно представить в виде таблицы (см.Таблица 5.2.1.) BD[] struct DATA yslovie1, yslovie1, yslovie1,deistvie yslovie1, yslovie2, yslovie3 struct Yslovie yslovie,ACTIVE yslovie string А-я,А-z и символы разделителиРезультатом решения выступает построение логического вывода (получение консиквента).Представим алгоритм решения в виде граф-схемы (Рис.5.4.1.).В ходе выполнения курсовой работы была разработана и реализована программа, позволяющая выбрать поставщика товаров.if ((Data.BD[0].yslovie1.ACTIVE == true) && (Data.BD[0].yslovie2.ACTIVE == true) && (Data.BD[0].yslovie3.ACTIVE == true)) {if (Data.BD[1].yslovie1.ACTIVE == true) LISTBOX1.Items.Add(Data.BD[1].yslovie1.yslovie); {if ((Data.BD[2].yslovie1.ACTIVE == true) && (Data.BD[2].yslovie2.ACTIVE == false)) LISTBOX1.Items.Add(Data.BD[2].yslovie1.yslovie); {if (Data.BD[3].yslovie1.ACTIVE == true) LISTBOX1.Items.Add(Data.BD[3].yslovie1.yslovie); {LISTBOX2.Items.Add(Data.BD[i].yslovie1.ACTIVE.TOSTRING() " " Data.BD[i].yslovie2.ACTIVE.TOSTRING() " " Data.BD[i].yslovie3.ACTIVE.TOSTRING());{public struct Yslovie {public string yslovie; public bool ACTIVE;} public Yslovie yslovie1; {BD[0].yslovie1.yslovie = "поставщик проверенный"; BD[0].yslovie1.ACTIVE = false; BD[2].yslovie2.yslovie = "поставка производится в срок"; BD[2].yslovie2.ACTIVE = false; BD[2].yslovie3.yslovie = "товар не получает дефектов в ходе транспатрировки"; BD[2].yslovie3.ACTIVE = false; BD[3].yslovie1.yslovie = "товар сертифицирован"; BD[3].yslovie1.ACTIVE = false;Исходя из данных фактов программа должна, в поле построения вывода, выдать запись, о том, что товар качественный (т.к. товар прошел государственные экспертизы => товар качественный).Окно программы представлено на рисунке Контрольный пример 2(см..Рис.П.3.2). Установим следующие факты (образцы): поставка происходит в срок; товар не получает дефектов в ходе транспортировки; товар прошел государственные экспертизы; цена приемлемая. Исходя из данных фактов программа должна, в поле построения вывода, выдать запись, о том, что товар качественный (т.к. товар прошел государственные экспертизы => товар качественный), после чего обрабатывая образцы «поставка происходит в срок», «товар не получает дефектов», программа должна сделать вывод о том что жалоб на поставщика

План
СОДЕРЖАНИЕ математическая программная решение реализация

ВВЕДЕНИЕ

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

1.1 Характеристика задачи

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

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

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

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

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

3.1 Иерархическая схема

3.2 Спецификация

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

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

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

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

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

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

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

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

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

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

ЗАКЛЮЧЕНИЕ

ПРИЛОЖЕНИЯ

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



Дисциплины научных работ



Хотите, перезвоним вам?