Теория принятия решений
ФЕДЕРАЛЬНОЕ
АГЕНТСТВО ПО ОБРАЗОВАНИЮ РОССИЙСКОЙ ФЕДЕРАЦИИ
ВОЛГОГРАДСКИЙ
ГОСУДАРСТВЕННЫЙ ТЕХНИЧЕСКИЙ УНИВЕРСИТЕТ
Факультет
подготовки инженерных кадров
Кафедра
САПРиПК
КОНТРОЛЬНАЯ
РАБОТА
по курсу
"Теория принятия решений"
Выполнил:
студент гр. АУЗ - 261с
Тюляева И.А.
Проверила:
Доцент каф.САПРиПК
Г.Л.Шкурина
Волгоград
2011
Содержание
Описание
задачи по варианту 4.12
Теоретическая
часть
Минимаксный
критерий
Критерий
Гермейера
Описание
решения задачи
Блок-схема
программы
Листинг
программы
Список
использованной литературы
Описание
задачи по варианту 4.12
Акционеры на собрании закрытого акционерного общества
"Энергосвязь" обсуждают три проекта вложения инвестиций. Варианты
решений таковы: E1 - проект, требующий больших вложений; E1
- проект, требующий средних финансовых вложений; E3 - проект,
требующий небольших вложений. Условия, вызываемые необходимость рассмотрения и
утверждения проектов следующие: F1 - большие доходы, но в течение
нескольких лет, F2 - средние доходы в ближайшее время, F3 -
больших доходов не предвидится, но обеспечится престижность, высокое
общественное звучание проекта. Результаты решений оцениваются величиной прибыли в американских долларах.
программа решение гермейер полиоптимизация
|
F1
|
F2
|
F3
|
E1
|
94,0
|
50,0
|
18,0
|
E2
|
51,0
|
27,0
|
11,0
|
E3
|
19,0
|
12,0
|
7,0
|
Подходящее решение следует выбрать, используя заданные критерии:
· Критерий Гермейера ();
· Минимаксный критерий.
Разработать автоматизированную программу выбора оптимального решения с
использованием заданных критериев.
Теоретическая
часть
Критерий принятия решений - это функция, выражающая предпочтения лица,
принимающего решения (ЛПР), и определяющая правило, по которому выбирается
приемлемый или оптимальный вариант решения.
Всякое решений в условиях неполной информации принимается в с учетом
количественных характеристик ситуаций, в которой принимаются решения. Наиболее
часто принимаются следующие критерии принятия решений: критерий Севиджа,
критерий Гурвица, критерий Ходжа-Лимона, критерий Гермейера, минимаксный
критерий, критерий Байеса-Лапласа, критерий какой-либо оценочной информацией,
выбор которой должен осуществляться критерий произведений, составной критерий
Байеса-Лапласа минимаксный.
Эти критерии можно использовать поочередно, причем после вычисления их
значений среди нескольких вариантов приходится произвольным образом выделять
некоторое окончательное решение. Что позволяет, во-первых, лучше проникнуть во
все внутренние связи проблемы принятия решений и, во-вторых, ослабить влияние
субъективного фактора.
Классические критерии принятия решений.
Минимаксный
критерий
Минимаксный критерий (ММ) использует оценочную функцию , соответствующую позицию крайней
осторожности.
и ,
где - оценочная функция ММ-критерия.
Поскольку в области технических задач построение множества вариантов уже само по себе требует
весьма значительных усилий, причем иногда возникает необходимость в их
рассмотрении с различных точек зрения. Оно должно напоминать о том, что
совокупность вариантов необходимо исследовать возможно более полным образом,
чтобы была обеспечена оптимальность выбираемого варианта.
Правило выбора решения в соответствии с этим критерием можно
интерпретировать следующим образом:
Матрица решений дополняется еще одним столбцом из наименьших результатов каждой строки. Выбрать надлежит те
варианты , в строках которых стоят наибольшие
значения этого столбца.
Выбранные таким образом варианты полностью исключают риск. Это означает,
что принимающий решение не может столкнуться с худшим результатом, чем тот, на
который он ориентируется. Какие бы условия ни встретились, соответствующий
результат не может оказаться ниже . Это свойство заставляет считать
минимаксный критерий одним из фундаментальных. Поэтому в технических задачах он
применяется чаще всего, как сознательно, так и неосознанно. Однако положение об
отсутствии риска стоит различных потерь.
Критерий
Гермейера
Отправляясь от подхода Гермейера к отысканию эффективных и пригодных к
компромиссу решений в области полиоптимизации - т.е. всех решений, которые не
считаются заведомо худшими, чем другие, - можно предположить еще один критерий,
обладающий в некотором отношении определенной эластичностью. Он с самого начала
ориентирован на величины потерь, т.е. на отрицательные значения .
В качестве оценочной функции выступает
Поскольку в хозяйственных задачах преимущественно имеют дело с ценами и
затратами, условие <0 обычно выполняется. В случае же, когда среди величин встречаются и положительные
значения, можно перейти к строго отрицательным значениям с помощью
преобразования - а при подходящим образом подобранном >0.
Правило выбора согласно критерию Гермейера формулируется следующим
образом:
Матрица решений дополняется еще одним столбцом, содержащим в каждой
строке наименьшее произведение имеющегося в ней результата на вероятность
соответствующего состояния . Выбираются те решения , в строках которых находится
наибольшее значение этого столбца.
Описание
решения задачи
Определить оптимальные варианты из множества решений, заданных матрицей
решений с использованием минимаксного критерия.
Из каждой строки матрицы выбираем минимальный (min) элемент и заносим его в дополнительный столбец,
дальше из этого столбца выбираем максимальный элемент (max) - это и есть ответ.
Ответ: .
Рис. 1 Минимаксный критерий.
При использовании критерия Гермейера для расчёта должна получиться
матрица, в которой все элементы имеют отрицательное значение.
В исходной матрице максимум это 94, поэтому из каждого элемента
вычитается любое большее число, например, 95.
Получается матрица остатков:
Уже заданную вероятность умножаем элементы матрицы.
Вычисление:
Полученные ответы сравниваются, из них выбираются минимальные значения,
которые записываются в дополнительный столбец матрицы остатков.
Из дополнительного столбца выбирается максимальное (max) значение - это и есть ответ.
Ответ: .
Рис. 2 Критерий Гермейера.
Блок-схема
программы
Листинг программы
//---------------------------------------------------------------------------
#include <vcl.h>
#pragma hdrstop
#include "Unit1.h"
//---------------------------------------------------------------------------
#pragma package(smart_init)
#pragma resource "*.dfm"*Form1;S (double R[3]);S1
(double R1[3][3]);S2 (double R2[3]);
//---------------------------------------------------------------------------
__fastcall TForm1::TForm1(TComponent* Owner)
: TForm(Owner)
{
}
//---------------------------------------------------------------------------__fastcall
TForm1::FormActivate(TObject *Sender)
{->Cells[0][0]="Реш./Усл.";->Cells[0][0]="Реш./Усл.";->Cells[0][1]="E1";->Cells[0][2]="E2";->Cells[0][3]="E3";->Cells[1][0]="F1";->Cells[2][0]="F2";->Cells[3][0]="F3";->Cells[0][1]="E1";->Cells[0][2]="E2";->Cells[0][3]="E3";->Cells[1][0]="F1";->Cells[2][0]="F2";->Cells[3][0]="F3";->Cells[4][0]="MiN";
}
//---------------------------------------------------------------------------S1
(double R1[3][3])
{max;=R1[0][0];( int i = 0; i<3; i++)( int j = 0; j<3;
j++)(R1[i][j]>max) max=R1[i][j];max;
}S2 (double R2[3])
{max;=R2[0];( int i = 0; i<3; i++)(R2[i]>max)
max=R2[i];max;
}S (double R[3])
{min;=R[0];( int i = 0; i<4; i++)(R[i]<min)
min=R[i];min;
}__fastcall TForm1::ComboBox1Select(TObject *Sender)
{m1,m2,m3;A[3],B[3],C[3];q=StrToFloat(Edit1->Text);M[3][3],
D[3], E[3], F[3];z1,z2,z3;(ComboBox1->ItemIndex)
{0:
{(int i=1;i<4;i++)
{(int j=1;j<4;j++)
{->Cells[i][j]=StringGrid1->Cells[i][j];
}
}(int i=1;i<4;i++)
{[i-1]=StrToFloat(StringGrid2->Cells[i][1]);
}(int i=1;i<4;i++)
{[i-1]=StrToFloat(StringGrid2->Cells[i][2]);
}(int i=1;i<4;i++)
{[i-1]=StrToFloat(StringGrid2->Cells[i][3]);
}=S(A);->Cells[4][1]=FloatToStr(z1);=S(B);->Cells[4][2]=FloatToStr(z2);=S(C);->Cells[4][3]=FloatToStr(z3);;
}
case
1:
{(int i=1;i<4;i++)
{(int j=1;j<4;j++)
{[i-1][j-1]=StrToFloat(StringGrid1->Cells[i][j]);
}
{(int j=0;j<3;j++)
{->Cells[i+1][j+1]=FloatToStr(M[i][j]);
}
}(int i=1;i<4;i++)
{[i-1]=StrToFloat(StringGrid2->Cells[i][1]);[i-1]=D[i-1]*q;
}(int i=1;i<4;i++)
{[i-1]=StrToFloat(StringGrid2->Cells[i][2]);[i-1]=E[i-1]*q;
}(int i=1;i<4;i++)
{[i-1]=StrToFloat(StringGrid2->Cells[i][3]);[i-1]=F[i-1]*q;
}=S(D);->Cells[4][1]=FloatToStr(z1);=S(E);->Cells[4][2]=FloatToStr(z2);=S(F);->Cells[4][3]=FloatToStr(z3);;
}
}(z1>z2 && z1>z3)
{->Caption="Ответ: Оптимальное решение - проект E0={Е1}= "+FloatToStr(z1);
}(z2>z1 && z2>z3)
{->Caption="Ответ: Оптимальное решение - проект E0={Е2}= "+FloatToStr(z2);
}(z3>z1 && z3>z2)
{->Caption="Ответ: Оптимальное решение - проект E0={Е3}= "+FloatToStr(z3);
}
}
//---------------------------------------------------------------------------__fastcall
TForm1::BitBtn1Click(TObject *Sender)
{str;*sl = new TStringList;(int i = 0 ; i<4;++i)
{(int j = 0; j<4;++j)+= StringGrid1->Cells[j][i]+
"\t";>Add(Trim(str));= "\n\r" ;
}+="q[j]="+Edit1->Text+
"\t";>Add(Trim(str));= "\n\r"
;>SaveToFile("Soh_usl.xls");sl;
}
//---------------------------------------------------------------------------__fastcall
TForm1::BitBtn2Click(TObject *Sender)
{str1;*s2 = new TStringList;(int i = 0 ; i<5;++i)
{(int j = 0; j<5;++j)+= StringGrid2->Cells[j][i]+
"\t";->Add(Trim(str1));= "\n\r" ;
}+= Label1->Caption+ "\t";->Add(Trim(str1));=
"\n\r" ;->SaveToFile("Soh_resh.xls");
delete s2;
}
//---------------------------------------------------------------------------
Список
использованной литературы
1. В.А.
Острейковский. Теория систем.- М.: Высш. шк., 1997.
. А.Я.
Архангельский. Приемы программирования в C++Builder. - Бином,2007.
. Н.С.
Вентцель. Исследование операций: задачи, принципы, методология. - М.: Наука.
Гл. ред. физ.-мат. лит., 1988.
. Ю.Б.
Гермейер. Введение в теорию исследования операций. - М: Наука, 1997.
. В.
Ермолаев, Т. Сорока. C++Builder: книга рецептов. - КУДИЦ-Образ, 2006.
. Н.И.
Костюкова, Н.А. Калинина. Язык Си и особенности работы с ним. - Бином,2006.
. М.
Кузнецов, И. Симдянов. C++. Мастер-класс в задачах и примерах. -БХВ-Петербург,
2007.
. Н.
Культин . C++ Builder в задачах и примерах. - БХВ-Петербург, 2005.
. Э.
Мушик, П. Мюллер. Методы принятия технических решений. - М.: Мир, 1990.