Решение задачи линейного программирования

Рассмотрим информационную технологию задачи линейного программирования на примере следующей задачи.

Требуется определить, в каком количестве надо выпускать продукцию четырех типов Прод1, Прод2, Прод3, Прод4, для изготовления которой требуются ресурсы трех видов: трудовые, сырье, финансы, чтобы получить максимум прибыли. Количество ресурса каждого вида, необходимое для выпуска единицы продукции данного типа, называется нормой расхода. Нормы расхода, а также прибыль, получаемая от реализации единицы каждого типа продукции, приведены ниже в таблице.

Таблица № 3.5

Исходные данные задачи линейного программирования

Ресурс Прод1 Прод2 Прод3 Прод4 Знак Наличие
Прибыль max -
Трудовые <=
Сырье <=
Финансы <=

 

Составим математическую модель, для чего введем следующие обозначения:

хj – количество выпускаемой продукции j-го типа;

bi – количество располагаемого ресурса i-го вида;

aij – норма расхода i-го ресурса для выпуска единицы продукции j-го типа;

cj – прибыль, получаемая от реализации единицы продукции j-го типа;

n – количество типов выпускаемой продукции;

m – количество ограничений на ресурсы.

Тогда задача линейного программирования в общем виде может быть записана.

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

Для приведенных выше конкретных данных задача линейного программирования записывается в виде:

В ячейках A8:G12 листа 2 MS (см. рис. 3.5) Exсel разместим таблицу исходных данных задачи (см. табл. 3.5). Ячейки I22:I25 выделим для формирования вектора решения задачи . В ячейке F22 запишем выражение для вычисления правой части целевой функции. В ячейках F24:F26 сформируем формулы для вычисления левых частей ограничений (в виде нестрогих неравенств). Формулы, записанные в ячейки F22, F24:F26 приведены в табл. 3.6.

Таблица 3.6

Формулы целевой функции и ограничений

№ п/п Ячейка Формула
1. F22 =I22*B9+I23*C9+I24*D9+I25*E9
2. F24 =I22*B10+I23*C10+I24*D10+I25*E10
3. F25 =I22*B11+I23*C11+I24*D11+I25*E11
4. F26 =I22*B12+I23*C12+I24*D12+I25*E12

 

Для решения задачи линейного программирования необходимо в пункте главного меню MS Excel “Сервис” выбрать подпункт “Поиск решения…”. Если в пункте главного меню MS Excel “Сервис” отсутствует подпункт “Поиск решения…”, то необходимо в пункте главного меню “Сервис” выбрать подпункт “Надстройки” и в окне “Надстройки” поставить галочку в строке “Поиск решения…”. Если же в окне “Надстройки” отсутствует строка “Поиск решения…”, то следует переустановить MS Excel.

Рис. 3.5 Задача линейного программирования

Вид окна “Надстройки” представлен на рис. 3.6.

Рис. 3.6. Окно “Надстройки”

На рис. 3.7 представлено окно “Поиск решения”

Рис. 3.7. Окно “Поиск решения”

В окне “Поиск решения” необходимо установить целевую ячейку $F$22 (F22) равной максимальному значению (по условию задачи). В поле ниже метки с заголовком “Изменяя ячейки:” необходимо отметить ячейки вектора решения задачи линейного программирования. Ниже метки с заголовком “Ограничения:” с помощью кнопки “Добавить” следует сформировать ограничения задачи линейного программирования. Выделение ячеек и формирование ограничений реализуется в режиме конструктора (адреса ячеек в выражения вставляются на основе технологии визуального программирования).

При нажатии кнопки “Выполнить” в ячейках I22:I25 формируется вектор решения задачи линейного программирования (см. рис. 3.8). Кроме этого в ячейке F22 формируется значение целевой функции при найденном векторе решения. А в ячейках F24:F26 вычисляются значения левых частей ограничений при найденном векторе решения задачи линейного программирования.

Рис. 3.8. Решение задачи линейного программирования

 

ВОПРОСЫ ДЛЯ САМОКОНТРОЛЯ

 

1. Какие функции в MS Excel предназначены для реализации операций линейной алгебры?

2. Что произойдет, если попытаться вычислить обратную матрицу для неквадратной исходной матрицы?

3. С помощью какой функции в MS Excel можно получить обратную матрицу?

4. С помощью какой функции в MS Excel можно умножить матрицы?

5. С помощью какой функции в MS Excel можно умножить матрицу на вектор?

6. С помощью какой функции в MS Excel можно вычислить определитель матрицы?

7. Дайте определение задачи оптимизации.

8. Что представляет собой целевая функция в задачах линейного программирования?

9. Что представляет собой целевая функция в задачах математического программирования?

10. Обоснуйте правомерность использования метода “Поиск решения…” MS Excel для решения систем линейных алгебраических уравнений.

11. Для чего необходимо окно “Поиск решения” в задачах оптимизации?

12. Изложите суть метода Крамера решения систем линейных алгебраических уравнений.

13. Поясните математическую модель задачи линейного программирования.

14. Для чего необходимо окно “Надстройки” в MS Excel?

15. На основе рассмотренных информационных технологий решить СЛАУ из четырех уравнений.

16. Решить задачу математического программирования с нелинейной целевой функцией.

 








Дата добавления: 2015-03-07; просмотров: 1947;


Поиск по сайту:

При помощи поиска вы сможете найти нужную вам информацию.

Поделитесь с друзьями:

Если вам перенёс пользу информационный материал, или помог в учебе – поделитесь этим сайтом с друзьями и знакомыми.
helpiks.org - Хелпикс.Орг - 2014-2024 год. Материал сайта представляется для ознакомительного и учебного использования. | Поддержка
Генерация страницы за: 0.013 сек.