- •09.03.01 Информатика и вычислительная техника
- •Глава 1 Общие сведения о теории принятия решений
- •1.1 Понятия, связанные с принятием решений
- •1.2 Определенность результатов принимаемых решений
- •1.3 Критерии оценки решения
- •5 Реальные процедуры принятия управленческих решений.
- •1.4 Системы поддержки принятия решения
- •1.5 Математическое моделирование при принятии решений
- •1.6 Классификация математических моделей структурированных систем
- •1.7 Задачи моделирования на различных уровнях принятия решений
- •Глава 2 Системы поддержки принятия решений, основанные на знаниях
- •2.1 Способы описания знаний
- •2.2 Когнитивные модели
- •2.3 Онтологические модели процесса принятия решений
- •Ниже приведены краткие сведения об онтологиях и пример их использования для моделирования процессов принятия решений в системах обучения. Слово «онтология» имеет два значения:
- •Методология создания онтологий. Практическая разработка онтологии включает:
- •2.4 Экспертный подход к принятию решений
- •2.4.1 Методы экспертных оценок
- •2.4.2 Методы средних баллов при оценке альтернатив
- •2.5 Продукционные модели знаний
- •2.5.1 Основные определения
- •2.5.2 Байесовский подход к построению продукционных моделей знаний
- •2.5.3 Структура базы знаний и алгоритм логического вывода
- •Глава 3 Методы оптимизации в задачах принятия решений
- •3.1 Принятие решений на основе методов линейного программирования
- •3.2 Математическая модель планирования производства
- •3.3 Задачи оптимального планирования производства
- •3.4 Транспортная задача
- •3.5 Задачи об упаковке
- •3.5.1 Задача о рюкзаке
- •3.5.2 Задачи упаковки в контейнеры
- •3.6 Задачи о замене оборудования
- •3.6.1 Простейшая задача о замене оборудования
- •3.6.2 Задача об оптимальных сроках замены дискового оборудования
- •3.7 Многокритериальные задачи принятия решений
- •Глава 4 Вероятностные модели формирования и выбора альтернатив решений
- •4.1 Моделирование систем на основе формализма цепей Маркова
- •4.1.1 Определение и динамика цепи Маркова
- •4.1.2 Оценка длительности пребывания процесса во множестве невозвратных состояний
- •4.1.3 Оценка поведения цепей Маркова при большом числе шагов
- •4.2 Модель процесса обучения как цепь Маркова
- •4.3 Система обслуживания заявок с очередью и отказами
- •4.4 Модель динамики информационных ресурсов
- •4.5 Принятие решений об оптимизации инвестиционного портфеля
- •4.6 Имитационное моделирование при принятии решений
- •4.6.1 Система AnyLogic: активные объекты, классы и экземпляры активных объектов
- •4.6.2 Объектно-ориентированный подход
- •4.6.3 Средства описания поведения объектов
- •4.6.4 Анимация поведения и интерактивный анализ модели
- •4.6.5 Примеры имитационного моделирования
- •Глава 5 Сетевые модели поддержки принятия решений
- •5.1 Обыкновенные сети Петри
- •5.1.1 Формальное определение
- •5.1.2 Графы сетей Петри
- •5.1.3 Пространство состояний сети Петри
- •5.1.4 Основные свойства сетей Петри
- •5.1.5 Некоторые обобщения сетей Петри
- •5.1.6 Инварианты сетей Петри
- •5.2 Раскрашенные (цветные) сети Петри (cpn)
- •5.2.1 Мультимножества
- •5.2.2 Формальное определение cpn
- •5.2.3 Функционирование cpn
- •5.2.4 Расширения cpn
- •5.2.5 Сравнение формализмов обыкновенных и раскрашенных сетей Петри
- •5.2.6 О моделирующих возможностях сетей Петри
- •5.3 Моделирование дискретных систем
- •5.3.1 Моделирование вычислительных систем
- •4.3.2 Моделирование программ
- •5.3.3 Моделирование протоколов передачи данных
- •5.3.4. Об исследовании сетей Петри с помощью эвм
- •5.4 Герт-сети
- •5.4.1 Описание герт-сети
- •5.4.2 Производящие функции герт-сетей
- •5.4.3 Вычисление w-функций для типовых соединений дуг
- •5.4.4 Модель процесса обучения как герт-сеть
- •Глава 6 Примеры систем поддержки принятия решений
- •6.1 Система эспла
- •6.1.1 Режимы функционирования системы
- •6.1.2 Принятие решений при техногенных авариях
- •6.1.3 Использование информационных ресурсов
- •6.2 Информационная система дистанционного мониторинга лесных пожаров Федерального агентства лесного хозяйства рф
- •6.2.1 Общая характеристика системы
- •6.2.2 Использование спутниковых данных
- •6.2.3 Центры приема и обработки спутниковых данных
- •6.2.4 Информационные продукты, формируемые системой
- •6.2.5 Прогнозирование параметров лесных пожаров по данным исдм-Рослесхоз
- •Г.А. Доррер методы и системы принятия решений
- •Красноярск 2016
3.5 Задачи об упаковке
В данном параграфе мы кратко рассмотрим еще один класс задач, связанных с анализом альтернатив и принятием решений. Эти задачи также относятся к задачам оптимизации, однако их особенность состоит в том, что переменные, по которым производится оптимизация, могут принимать только два значения – 0 или 1. Фактически это означает, что некоторая переменная может быть либо выбрана при решении задачи, либо нет.
3.5.1 Задача о рюкзаке
Имеется
предметов, которые нужно упаковать в
рюкзак, суммарный вес которого не может
превышать
.
Каждый
-й
предмет имеет стоимость
и вес
.
Необходимо загрузить рюкзак таким
образом, чтобы стоимость загруженных
предметов была наибольшей, а суммарный
вес рюкзака не превышал
.
При этом предполагается, что
,
т.е. не все имеющиеся предметы поместятся
в рюкзак.
К подобной постановке сводятся многие задачи: управление информационными ресурсами, загрузка корабля или самолета, размещение капитала, раскрой листов на прямоугольные заготовки и другие.
Введем
-векторы
и
.
Обозначим
переменную, определяющую выбор
-го
предмета:
,
если
-й
предмет упаковывается в рюкзак, и
в противном случае. Эти переменные
образуют вектор
.
Простейшая задача о рюкзаке формулируется следующим образом.
Найти
(3.48)
при условиях
,
. (3.49)
Задача (3.48), (3.49) похожа на задачу линейного программирования, но особенность ограничений не позволяет непосредственно применять, например, симплекс-метод, который может привести к нецелочисленным решениям. Однако существует большое количество методов решения этой задачи, не связанных с линейным программированием. В качестве примера приведем так называемый «жадный» алгоритм [34].
Предположим, что все предметы упорядочены по относительной стоимости:
. (3.50)
Тогда алгоритм может быть записан в виде следующего фрагмента программы на языке Паскаль.
begin
U:=0; Z:=0;
for j:=1 to n do
if U+wj <= C then
begin xj:=1; U:=U+wj; Z:=Z+pJ end
else xj:=0;
end.
Этот алгоритм определяет суммарный вес рюкзака U, суммарную стоимость упакованных предметов Z, а также оптимальный вектор .
Пример.
К упаковке представлено 10 предметов,
параметры которых приведены в таблице
3.5. Суммарный вес предметов, как видно
из таблицы, равен
кг. Общий
вес рюкзака не должен превышать
кг.
Таблица 3.5
Решение задачи о рюкзаке
|
|
|
|
Упорядоченные
|
Упорядоченные номера |
1 |
100 |
5 |
20 |
1.14 |
9 |
2 |
250 |
15 |
16.7 |
1,85 |
4 |
3 |
120 |
43 |
2,8 |
2,2 |
10 |
4 |
370 |
200 |
1,85 |
2.8 |
3 |
5 |
50 |
10 |
5,0 |
5,0 |
5 |
6 |
70 |
12 |
5,83 |
5,45 |
8 |
7 |
100 |
10 |
10,0 |
5,83 |
6 |
8 |
300 |
55 |
5,45 |
10,0 |
7 |
9 |
400 |
350 |
1,14 |
16,7 |
2 |
10 |
220 |
100 |
2,2 |
20 |
1 |
В соответствии с
рассмотренным алгоритмом упорядочиваем
предметы по величине отношения
,
а затем начинаем наполнять рюкзак.
Нетрудно видеть, что будут выбраны
предметы 9, 4, 10, 3, 5, 6, 7, 2, 1,
а предмет 8 в рюкзак не войдет.
Таким образом, вектор оптимальной загрузки имеет вид
.
Суммарный вес
рюкзака получился
745
кг.
Общая стоимость загруженных предметов
1680
руб.
