Курсовая работа

Оптимизационные модели. Игровая и сетевая модель (2, 7)

Категория:

Курсовая работа

Дисциплина:

Методы и алгоритмы принятия решений

Город:

Беларусь, Минск

Учебное заведение:

БНТУ, ФИТР

Стоимость работы:

50 руб.

Оценка: 10
Объем страниц: 23
Год сдачи: 2022
Дата публикации: 30.06.2022

Фрагменты для ознакомления

КУРСОВАЯ РАБОТА

по дисциплине: «Методы и алгоритмы принятия решений»

Оптимизационные модели. Игровая и сетевая модель (2, 7)

 

СОДЕРЖАНИЕ

ВВЕДЕНИЕ. 3

Глава 1. Теоретический раздел. 4

1.1. Оптимизационная модель. 4

1.2. Игровая модель. 5

1.3. Сетевая модель. 7

Глава 2. Практический раздел. 10

2.1. Постановка задачи. 10

2.3. Выбор метода принятия решений. 11

Сетевая модель (графический метод) 11

2.5. Результаты. 13

Список использованной литературы.. 20

Приложение. 21

Листинг исходного кода. 21

ВВЕДЕНИЕ

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

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

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

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

 

Глава 1. Теоретический раздел

1.1 Оптимизационная модель

Оптимизационные модели предназначены для определения оптимальных (наилучших) с точки зрения некоторого критерия параметров моделируемого объекта или же для поиска оптимального (наилучшего) режима управления некоторым процессом. Часть параметров модели относят к параметрам управления, изменяя которые можно получать различные варианты наборов значений выходных параметров. Как правило, данные модели строятся с использованием одной или нескольких дескриптивных моделей и включают некоторый критерий, позволяющий сравнивать различные варианты наборов значений выходных параметров между собой с целью выбора наилучшего. На область значений входных параметров могут быть наложены ограничения в виде равенств и неравенств, связанные с особенностями рассматриваемого объекта или процесса. Целью оптимизационных моделей является поиск таких допустимых параметров управления, при которых критерий выбора достигает своего «наилучшего значения».

Задачи построения оптимизационных моделей 

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

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

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

В оптимизационных моделях объектом моделирования может выступать: 

  • склад предприятия
  • выпуск новой продукции
  • транспортировка готовой продукции и т.п. 

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

….
 

1.2 Игровая модель

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

……

1.3 Сетевая модель

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

….

 

Глава 2. Практический раздел

2.1. Постановка задачи

Игровая модель

Небольшая фирма производит гигиенические средства для младенцев. В течение месяца реализуется 13, 14, 15 или 16 упаковок товара. От продажи каждой упаковки фирма получает 75 ден. ед. прибыли. Продукция имеет малый срок годности, поэтому, если упаковка не продана в месячный срок, она должна быть уничтожена. Поскольку производство одной упаковки обходится в 115 ден. ед., потери фирмы составляют 115 ден. ед., если упаковка не продана к концу месяца. Вероятности продать 13, 14, 15 или 16 упаковок за месяц составляют соответственно 0,20; 0,35; 0,1 и 0,35.

Дать рекомендации по количеству производимой продукции.

Сетевая модель

Университет рассматривает предложение о строительстве новой турбазы. Работы, которые следует выполнить перед началом строительства, представлены в таблице.

Работы по строительству новой турбазы

Требуется:

1) построить сетевой график проекта;

2) найти критический путь;

3) определить, реально ли начать работу по строительству здания турбазы через год после принятия решения о начале проекта; 

4) определить сроки свершения событий, пользуясь четырехсекторной схемой;

5) определить сроки выполнения работ и их резервы времени.

 

2.3. Выбор метода принятия решений.

Игровая модель

  1. Построение платежной матрицы:

2. Выбор критерия:

Сетевая модель (графический метод)

  1. Построение сетевой модели:

….

2. Расчёт сетевого графика:

  1. Определяются ранние сроки наступления событий. Рассчитываются слева направо от исходного до завершающего события. При этом заполняются только левые секторы событий. Ранний срок исходного события принимается равным нулю – в левый сектор первого события ставится ноль, затем к нему прибавляют продолжительность рассматриваемой работы и результат ставят в левый сектор последующего события.
  2. Определяются поздние сроки наступления событий. Рассчитываются справа налево, т.е. от завершающего события к исходному. Заполняются правые сектора событий сетевого графика. Критический путь проходит через события, у которых значения левого и правого сектора равны, а общий и частный резервы времени равны нулю на работах, соединяющих данные события.
  3. Резерв времени события Ri определяется как разность между наиболее поздним и наиболее ранним сроками свершения этого события
  4. Полный резерв времени операции Rпij определяется как разность между поздним сроком наступления события j и ранним сроком окончания операции
  5. Свободный резерв времени операции Rсij определяется как разность между ранним сроком наступления события j и ранним сроком окончания операции

Резерв времени события - это промежуток времени, на который может быть отсрочено свершение этого события, без нарушения критического пути:

Резерв времени события

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

Полный резерв времени работы

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

Свободный резерв времени работы


 

2.5. Результаты.

Игровая модель

Затраты на производство: …

Доход: …
Реализация только произведённой продукции по формуле:

Прибыль = Цена * Объем продаж – Себестоимость * Объем производства
….

Расчёт выручки и затрат

Рисунок 1 – расчёт выручки и затрат

Математическая модель:

Критерий Байеса относительно выигрышей позволяет выбрать максимальный из ожидаемых элементов в матрице при известных вероятностях возможных состояний природы.

Критерий Байеса

В качестве оптимальной стратегии по критерию Байеса принимают чистую стратегию Аi , для которой выполняется одно из условий: максимизируется средний выигрыш ai статистика; минимизируется средний риск rij . Причем, стратегия, максимизирующая средний выигрыш, совпадает со стратегией, минимизирующей средний риск. Считаем значения ∑(aijpj).

Расчёт прибыли с учётом вероятности:

Расчёт средней прибыли с учётом вероятностей

Рисунок 2 – средней прибыли с учётом вероятностей

Формульный вид

Рисунок 3 – формульный вид

 

Max(975; 1012; 982.5; 934) = …

Сколько упаковок средств следует производить фирме ежемесячно?
….

Какова ожидаемая стоимостная ценность этого решения?
….

Сколько упаковок можно было бы производить при значительном продлении срока хранения косметической продукции?
….

Реализация задания в графическом приложении:

Окно приложения «Решение матричной игры»

Рисунок 4 – окно приложения «Решение матричной игры»

Реализация задания в графическом приложении

Рисунок 5 – результат работы программы

 

Сетевая модель

Сетевая модель

Рисунок 6 – четырёхсекторная сетевая модель

Критический путь: (1,2)(2,4)(4,6)(6,7)(7,8)(8,9) 
Продолжительность критического пути: 6+12+12+15+0+8 = 53 (нед.) 

В году 52,14 недель, окончание всех работ прозойдет через 53 недели, следовательно начать работу по строительству здания турбазы через год после принятия решения нереально.

Расчёт сроков свершения событий.

При определении ранних сроков свершения событий tp(i) двигаемся по сетевому графику слева направо. 
Для i=1 (начального события), очевидно tp(1)=0.
i=2: tp(2) = tp(1) + t(1,2) = 0 + 6 = 6.
i=3: tp(3) = tp(2) + t(2,3) = 6 + 8 = 14.
….
При определении поздних сроков свершения событий tп(i) двигаемся по сети в обратном направлении, то есть справа налево.
Для i=9 (завершающего события) поздний срок свершения события должен равняться его раннему сроку (иначе изменится длина критического пути): tп(9)= tр(9)=53
i=8: tп(8) = tп(9) - t(8,9) = 53 - 8 = 45.
i=7: tп(7) = tп(8) - t(7,8) = 45 - 0 = 45.
i=6: min(tп(7) - t(6,7);tп(8) - t(6,8)) = min(45 - 15;45 - 12) = 30.
….

Резерв времени R(i) i-ого события определяется как разность между поздним и ранним сроками его свершения: R(i) = tп(i) - tp(i)

Таблица 1. ​​Временные параметры свершения событий

Номер

события

Сроки свершения события: ранний tр(i)

Сроки свершения события: поздний tп(i)

Резерв 

времени,

R(i)

1

0

0

0

2

6

6

0

3

14

30

16

4

18

18

0

    
    
    
    
    


Графу 2 получаем из таблицы 1 (tp(i)). Графу 5 получаем из таблицы 1 (tп(i)).
Значения в графе 3 получаются в результате суммирования продолжительности и графы 2.
Полный резерв пути показывает, на сколько в сумме может быть увеличена продолжительность всех работ, принадлежащих данному пути, при условии, что срок выполнения всего комплекса работ не изменится. Образовывается, когда предшествующие работы закончатся в свой наиболее ранний срок.

Находим полный резерв RПi-j = Tпj-ti-j-Tрi
RП(1,2) = 6-6-0 = 0
RП(2,3) = 30-8-6 = 16
RП(2,4) = 18-12-6 = 0
RП(3,6) = 30-0-14 = 16
….
 

Независимый резерв времени также можно найти и по формуле RНi-j = Tрj-ti-j-Tпi
RН(1,2) = 6-6-0 = 0
RН(2,3) = 14-8-6 = 0
RН(2,4) = 18-12-6 = 0
RН(3,6) = 30-0-30 = 0
….

Свободный резерв времени также можно найти и по формуле RCi-j = Tпi-ti-j-Tрi
RC(1,2) = 6-6-0 = 0
RC(2,3) = 14-8-6 = 0
RC(2,4) = 18-12-6 = 0
RC(3,6) = 30-0-14 = 16
….

Таблица 2. ​​Временные параметры работ

Работа (i,j)

Ранние сроки: начало tРН

Ранние сроки: окончание tРО

Поздние сроки: начало tПН

Поздние сроки: окончание tПО

Резервы времени: полный RП

Независимый резерв времени RН

Свободный резерв, RС

(1,2)

0

6

0

6

0

0

0

(2,3)

6

14

22

30

16

0

0

(2,4)

6

18

6

18

0

0

0

(3,6)

14

14

30

30

16

0

16

        
        
        
        
        
        
        

 

Заключениe

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

……

 

Список использованной литературы

  1. Орлов А.И. Оптимальные методы в экономике и управлении. – М.: Изд-во МГТУ им. Н.Э. Баумана, 2007.
  2. Ширяев В.И. Исследование операций и численные методы оптимизации. – М.: КомКнига, 2007.
  3. Борисова, И.М. учебно-методический комплекс по дисциплине методы и алгоритмы принятия решений. - М.: БНТУ. 2019.
  4. Сайт (Системный анализ):
    http://systems-analysis.ru/
  5. Москвин Б.В. Теория принятия решений  / Б.В.Москвин.- СПб.: ВКА имени А.Ф.Можайского,2005.-383с.
  6. PDF - Сетевые модели планирования и управления проектами
    https://csc.sibsutis.ru/sites/default/files/courses/isop/net_lection7.pdf

Приложение

 

Листинг исходного кода 

Program.cs

using System;
using System.Windows.Forms;
namespace CourseProject
{
    static class Program
    {
        [STAThread]
        static void Main()
        {
            Application.EnableVisualStyles();
           Application.SetCompatibleTextRenderingDefault(false);
            Application.Run(new Form1());
        }
    }

    class MatrixGamesModule
    {
        public static int BayesMethod(double[][] matrix,
        double[] chances)
        {
            if (chances.Length != matrix.Length) { return -1; }

            double[][] bayesMatrix = new double[matrix.Length][];

            for (int i = 0; i < bayesMatrix.Length; i++)
            {
                bayesMatrix[i] = Mult(matrix[i], chances[i]);
            }

            double[] rowSums = new double[bayesMatrix.Length];

            for (int i = 0; i < bayesMatrix.Length; i++)
            {
                rowSums[i] = GetSum(bayesMatrix[i]);
            }
            return GetMaxIndex(rowSums);
        }

       ……

47