- •1. Экономико-математическая модель (эмм), основные понятия и определения.
- •2. Общая классификация экономико-математических методов и моделей.
- •3. Основные этапы решения экономических задач с применением математических методов.
- •4. Общая задача оптимального (математического) программирования, основные элементы и понятия.
- •5. Классическая задача оптимизации, метод реализации.
- •6. Общая классификация задач оптимального программирования и методов их решения.
- •7. Задача линейного программирования (злп), различные формы записи.
- •8. Основы симплекс-метода, исследование случаев неразрешимости.
- •11. Теоремы двойственности, двойственные оценки и их использование в анализе оптимального плана
- •10.Двойственность в линейном программировании, правило построения двойственных задач.
- •12. Экономическая интерпретация задачи, двойственной к исходной задаче об оптимальном использовании ограниченных ресурсов.
- •13. Постановка и экономико-математическая модель транспортной задачи, ее модификации.
- •14. Задачи нелинейной и дискретной оптимизации. Методы решения.
- •15. Постановка и экономико-математическая модель задачи о назначениях, особые случаи задачи о назначениях.
- •16. Балансовый метод планирования, матричные модели. Примеры использования матричных моделей, сведения о компьютерной реализации с применением электронных таблиц.
- •17. Матрица коэффициентов прямых материальных затрат, ее продуктивность
- •18. Экономико-математическая модель межотраслевого стоимостного баланса, определение объемов валовой и конечной продукции.
- •19. Матрица коэффициентов полных материальных затрат, способы ее определения.
- •20. Межпродуктовый баланс. Динамическая модель межотраслевого баланса.
14. Задачи нелинейной и дискретной оптимизации. Методы решения.
задача
целочисленного программирования – это
задача в которой все или некоторые
переменные должны принимать целые
значения. В этом случае, когда ограничения
и целевая функция задачи представляют
собой линейные зависимости, задачу
называют целочисленной задачей ЛП.
Особый интерес к задачам Цп вызван тем,
что во многих практических задачах
необходимо находить целочисленное
решение ввиду дискретности ряда искомых
переменных. К их числу относятся: задачи
оптимизации раскрое, оптимальное
проектирование машин и оборудования,
оптимизация системы сервиса. Для
нахождения оптимального решения целочис
задач применяют спец методы, в которых
учитывается, что число возможных решений
является конечным. Задачи оптимизации,
в результате решения которых искомые
значения переменных должны быть целыми
числами, называются задачами целочисленного
(дискретного)программирования:
,
где Xj-
целые j=1,2…p
(p<=n).
Если р=n
то задачу называют полностью целочисленной,
если p<n
- частично целочисленной.
Задача (модель) нелинейного программирования (НЛП) формулируется так же, как и общая задача оптимального программирования со следующими требованиями к целевой функции (ЦФ) и допустимой области: целевая функция f(x1, x2, …, xn) и (или) одна из функций gi(x1, x2, …, xn) являются нелинейными:
min (max)f(x1, x2, ..., хn),
gi(x1, x2, ..., xn){≤, =, ≥}bi, i = 1, 2, ..., m,
xj ≥ 0, j = 1, 2, ..., n.
У произвольной задачи НЛП некоторые или все свойства, характерные для задач ЛП, отсутствуют [1]. Вследствие этого задачи НЛП несравнимо сложнее задач ЛП и для них не существует общего универсального метода их решения (аналогично симплексному методу).
Есть целый ряд методов решения задач НЛП, некоторые из них рассмотрены в [1]. В пакете Excel реализован [8] метод множителей Лагранжа, идея которого заключается в преобразовании задачи условной оптимизации в задачу безусловной оптимизации, решение которой производится методами поиска — градиентными методами (метода первого порядка) или методами Ньютона (методы второго порядка). Наиболее распространенными являются градиентные методы. Существующие методы дают возможность находить только локальные оптимумы (помимо случаев, когда задачи обладают соответствующими свойствами выпуклости и вогнутости [1]). Если же есть подозрение, что в допустимой области ЦФ может иметь несколько оптимумов, то эту область следует разбить на ряд областей и в каждой из них определить свои локальные оптимумы, а затем из всех локальных оптимумов выбрать глобальный. В таком практическом подходе задача поиска глобального оптимума сводится к решению ряда задач, в которых ищется свой (локальный) оптимум.
Следует отметить, что в подавляющем большинстве практических задач оптимизации существует только один оптимум [8].
Решение задачи НЛП (реализация модели нелинейной оптимизации) средствами Excel отличается от решения ЗЛП следующим:
назначаются
начальные значения искомых переменных
так,
чтобы ЦФ в начальной точке не была равна
нулю,
в диалоговом окне Поиска решения в режиме Параметры не надо вводить «Линейная модель».
В
Excel признаком достижения оптимума
является величина относительного
приращения ЦФ на каждой итерации
.
Оптимум считается достигнутым, если
выполняется условие Δfk
≤ Δfзад,
где Δfзад
- точность, назначаемая при решении
задачи (Параметры).
Примером задачи НЛП является модель оптимального формирования портфеля ценных бумаг (модель Марковица минимального риска).
В этой модели приняты следующие обозначения:
xj,
-
доля капитала, потраченная на покупку
ценных бумагу j-го
вида (весь выделенный капитал принимается
за 1);
mj - средняя ожидаемая доходность j-й ценной бумаги, (mj называют эффективностью j-и ценной бумаги);
vj
- дисперсия случайной доходности j-й
ценной бумаги,
(
называют риском j-й
ценной бумаги).
В предположении о некоррелированности ценных бумаг (их независимости) модель Марковица имеет вид:
Найти xj, , минимизирующие риск портфеля ценных бумаг
(1)
при условии, что обеспечивается заданное значение эффективности портфеля mp, т.е.
(2)
и условии, что весь выделенный для инвестиций капитал в целях моделирования принимается за 1, т.е.
(3)
xj ≥ 0, . (4)
В модели (1)—(4) нелинейной является ЦФ.
Задачи оптимизации, в результате решения которых искомые значения переменных должны быть целыми числами, называются задачами (моделями) целочисленного (дискретного) программирования:
min(max) f (x1, x2,...,xn);
gi
(x1,
х2,...,
хn){≤,
=, ≥}bi,
;
xj - целые неотрицательные ∀j∈< n' >.
Если множество индексов <n'>=<n>= {1, 2, ..., n}, то задачу называют полностью целочисленной, если <n'>⊂<n> , то - частично целочисленной.
Существуют различные методы решения задач дискретного программирования (дискретной оптимизации). Наиболее часто используемым методом является метод ветвей и границ. Именно этот метод реализован в программе Поиск решения пакета Excel.
Дискретная оптимизация средствами Excel проводится аналогично решению соответствующих непрерывных задач. Основное отличие заключается во вводе при оформлении диалогового окна Поиск решения требования целочисленности соответствующих переменных (при этом в режиме Параметры устанавливается тип задачи - линейная или нелинейная).
Исходя из требования целочисленности в случае дискретной оптимизации возможен вызов только одного Отчета по результатам.
Достаточно часто при моделировании экономических процессов используется особый случай дискретности задачи - булевость переменных, т.е. переменные могут принимать значения 0 или 1 . Характерным примером этого случая является задача о назначениях.
Постановка задачи. Имеется n видов работ и m исполнителей этих работ. Известны экономические оценки эффекта Cij, i = 1, 2, …, n, j = 1, 2, …, m; от назначения i-го исполнителя j-й вид работ. Требуется так распределить исполнителей по видам работ, чтобы суммарный эффект от назначений был максимальным.
ЭММ. Введем необходимые обозначения, пусть
Тогда математически задачу о назначениях можно записать в виде:
(на
каждую работу должен быть назначен
исполнитель);
(все
исполнители должны получить назначение).
(*)
Для реализации этой ЭММ средствами Excel ограничение (*) в рабочей таблице Excel следует записать в виде:
(Этот прием используется во всех дискретных задачах с булевыми переменными.)
Отметим некоторые особые случаи приведенной задачи.
1. Если по той или иной причине некоторое назначение является недопустимым, то соответствующий элемент матрицы (Cij)m×n принимается равным (-М), т.е. его значение заведомо меньше любого другого значения. После этого в ходе решения мы сможем избежать данного назначения автоматически.
2.
Если матрица (Cij)m×n
не является квадратной, то по аналогии
с открытой транспортной задачей в модели
задачи о назначениях следует записать
либо ограничение
(число
исполнителей m
больше числа работ n)
или
(число
исполнителей m
меньше числа работ n).
Метод приближения непрерывными задачами. В соответствии с ним сначала решается задача линейного программирования без учета целочисленности, а затем в окрестности оптимального решения ищутся целочисленные точки. Методы направленного перебора. Из них наиболее известен метод ветвей и границ. Суть метода такова. Каждому подмножеству Х множества возможных решений Х0 ставится в соответствие число - "граница" А(Х). При решении задачи минимизации необходимо, чтобы А(Х1) ≥ А(Х2), если Х1 входит в Х2 или совпадает с Х2 . Каждый шаг метода ветвей и границ состоит в делении выбранного на предыдущем шаге множества ХС на два - Х1С и Х2С . При этом пересечение Х1С и Х2С пусто, а их объединение совпадает с ХС . Затем вычисляют границы А(Х1С ) и А(Х2С) и выделяют "ветвь" ХС +1 - то из множеств Х1С и Х2С , для которого граница меньше. Алгоритм прекращает работу, когда диаметр вновь выделенной ветви оказывается меньше заранее заданного малого числа. Для каждой конкретной задачи целочисленного программирования (другими словами, дискретной оптимизации) метод ветвей и границ реализуется по-своему. Есть много модификаций этого метода.
