SLOVENSKÁ TECHNICKÁ UNIVERZITA V BRATISLAVE MATERIÁLOVOTECHNOLOGICKÁ FAKULTA V TRNAVE IŽEVSKÁ TECHNICKÁ UNIVERZITA M. T. KALAŠNIKOVA OPERAČNÁ ANALÝZA SEMESTRÁLNA PRÁCA Využitie lineárneho programovania v priemyselných podnikoch Študijný program: Priemyselné manažérstvo Názov študijného odboru: Priemyselné inžinierstvo Školiace pracovisko: Ústav priemyselného inžinierstva, manažmentu a kvality Vedúci semestrálnej práce/školiteľ: Prof. Ing. Peter Sakál, CSc. Konzultant: Prof. Ing. Peter Sakál, CSc. TRNAVA 2013 Ekaterina Kniazeva СЛОВАЦКИЙ ТЕХНИЧЕСКИЙ УНИВЕРСИТЕТ В БРАТИСЛАВЕ ФАКУЛЬТЕТ МАТЕРИАЛОВЕДЕНИЯ В ТРНАВЕ ИЖЕВСКИЙ ГОСУДАРСТВЕННЫЙ ТЕХНИЧЕСКИЙ УНИВЕРСИТЕТ ИМЕНИ М. Т. КАЛАШНИКОВА ИССЛЕДОВАНИЕ ОПЕРАЦИЙ СЕМЕСТРАЛЬНАЯ РАБОТА Использование линейного программирования на промышленных предприятиях Программа обучения: Производственный менеджмент Область исследования: Промышленное строительство Отдел обучения: Департамент промышленного производства, управления и качества Научный руководитель: проф. Peter Sakal, кандидат наук. Консультант: проф. Peter Sakal, кандидат наук. ТРНАВА 2013 Екатерина Князева • Práca je taktiež súčasťou schváleného projektu KEGA č. 037STU-4/2012 „Implementácia predmetu „Udržateľné spoločensky zodpovedné podnikanie“ v rámci študijného programu Priemyselné manažérstvo na druhom stupni štúdia na MTF STU Trnava.“ Введение 1. О линейном программировании 2. Симплекс – метод (СМ) 2.1 Теоретические основы 2.2 Алгоритм СМ 2.3 Табличный СМ 2.4 Двойственный СМ 3. Применение симплекс – метода Заключение Введение • Исследование операций – это комплексная математическая дисциплина, занимающаяся построением, анализом и применением математических моделей принятия оптимальных решений при проведении операций. • Данная область, связанна с оптимальными способами организации целенаправленных процессов и результатов человеческой деятельности. Все, что связано с организацией каких-либо действий, направленных к достижению определенной цели, относится к исследованию операций. В рамках исследования операций сформированы отдельные самостоятельные направления. Что такое линейное программирование? • Линейное программирование – это направление математического программирования, изучающее методы решения экстремальных задач, которые характеризуются линейной зависимостью между переменными и линейным критерием. • Основатели: Леонид Витальевич Канторович (1912 - 1986) Джордж Бернард Данциг (1914 - 2005) Основные элементы линейного программирования • Переменные х = (х1 , х2 , … хn ) • Система линейных ограничений n j aij x j bi i 1...m • Целевая функция, которая подлежит оптимизации F ( x) j ci x j n Переменные в общем случае являются вещественными числами. В системе ограничений может также присутствовать знак «=». Под оптимизацией понимается максимизация или минимизация целевой функции. Основные теоремы ЛП • Теорема 1 Конечное оптимальное решение задачи ЛП должно соответствовать экстремальной (крайней) точке пространства решений. • Теорема 2 Базисные решения системы полностью определяют все экстремальные точки. • Базис m независимых векторов из числа n. • Экстремальные точки могут быть найдены путем вычисления допустимых базисных решений системы: n! m!(m n)! Задачи линейного программирования решаются несколькими методами: 1 графический метод; 2 симплексный метод; 3 двойственность в ЛП; 4 двойственный симплексный метод. 2. Симплекс – метод 2.1 Теоретические основы • Симплексный метод решения задач линейного программирования (симплекс-метод) - вычислительная процедура, основанная на принципе последовательного улучшения решений — перехода от одной базисной точки к другой, для которой значение целевой функции больше (эти операции фиксируются в симплексной таблице). Графическая интерпретация симплекс - метода Выпуклая фигура, соответствующая области решений, называется симплексом. Поиск оптимального решения осуществляется с помощью переходов по её ребрам. Последовательность вычислений симплекс-методом можно разделить на две основные фазы: • нахождение исходной вершины множества допустимых решений (нахождение базисного решения); • последовательный переход от одной вершины к другой, ведущий к оптимизации значения целевой функции (последовательное улучшение найденного на первом этапе базисного решения). 2.2 Алгоритм симплексного метода решения задач линейного программирования • Используя линейную модель стандартной формы, определяют начальное допустимое базисное решение путем приравнивания к нулю n-m (небазисных) переменных. • Из числа текущих небазисных (неравных нулю) переменных выбирается включаемая в новый базис переменная, увеличение которой обеспечивает улучшение значения целевой функции. Если такой переменной нет, вычисления прекращаются, так как текущее базисное решение оптимально. В противном случае осуществляется переход к шагу 3. • Из числа переменных текущего базиса выбирается исключаемая переменная, которая должна принять нулевое значение (стать небазисной) при введении в состав базисных новой переменной. • Находится новое базисное решение, соответствующее новым составам небазисных и базисных переменных. Осуществляется переход к шагу 2. 2.3 Табличный симплекс-метод Эта задача в стандартной форме записывается так: максимизировать z = 5 + 4 при ограничениях: 6 + 4 + s1 = 24 (ограничение на сырье М1), + 2 + s2 = 6 (ограничение на сырье М2), - + + s3 = 1 (ограничение на спрос), + s4 = 2 (ограничение на спрос), , , s1, s2, s3, s4 > 0. Здесь s , s , s , s — дополнительные (остаточные) переменные, добавленные в неравенства для преобразования их в равенства. Далее целевую функцию будем представлять в виде уравнения z -5 - 4 = 0. Задачу ЛП в стандартной форме можно представить в виде следующей компактной таблицы 1. Таблица 1 Получаем: • Поскольку коэффициент при переменной x1 в формуле целевой функции больше, чем коэффициент при x2, переменную x1 следует ввести в число базисных (в этом случае она станет вводимой). • Определим по таблице 2 исключаемую переменную. Таблица 2 Минимальное неотрицательное отношение соответствует базисной переменной s1 тем самым определяя эту переменную как исключаемую (т.е. на следующей итерации ее значение будет равно нулю). • В следующей таблице 3, определим ведущий столбец, ассоциируемый с вводимой переменной, и ведущую строку, ассоциируемую с исключаемой переменной. Элемент, находящийся на пересечении ведущего столбца и ведущей строки, назовем ведущим. Таблица 3 • Процесс вычисления нового базисного решения состоит из двух этапов. 1. Вычисление элементов новой ведущей строки. Новая ведущая строка = текущая ведущая строка / ведущий элемент. 2. Вычисление элементов остальных строк, включая г-строку. Новая строка = текущая строка - ее коэффициент в ведущем столбце х новая ведущая строка. • Новая симплекс-таблица 4, соответствующая новому базисному решению , имеет следующий вид. Таблица 4 Получаем новое базисное решение Строку z можно интерпретировать как уравнение Перменная x2 становится вводимой в базис. • Далее определим исключаемую переменную. Таблица 5 • Далее вычисляем элементы новой симплекс-таблицы и получаем таблицу 6. Таблица 6 Поскольку z-строка не имеет отрицательных коэффициентов, соответствующих небазисным переменным s и s , полученное решение оптимально. 2.3 Двойственный симплекс-метод Двойственная задача – это вспомогательная задача ЛП, формулируемая с помощью определенных правил непосредственно из условий исходной, или прямой, задачи. Теорема двойственности • Если одна из пары двойственных задач имеет оптимальный план, то и другая имеет оптимальный план и значение целевой функции задачи при их оптимальных планах равны между собой. • Если же целевая функция одной из пары двойственных задач не ограничена (для исходной задачи не ограничена сверху, а для двойственной задачи не ограничена снизу), то другая задача вообще не имеет планов. Так же, как и в прямом симплекс-методе, основная проблема двойственного симплекс-метода состоит в том, чтобы на каждой итерации получить "правильное" базисное решение. Для реализации двойственного симплекс - метода разработаны следующие два условия, выполнение которых гарантирует оптимальность последовательных промежуточных решений и приближение их к области допустимых решений. • Двойственное условие допустимости. В качестве исключаемой переменной x выбирается базисная переменная, имеющая наибольшее по абсолютной величине отрицательное значение. Если таких переменных несколько, то выбор произволен. Если все базисные переменные неотрицательные, процесс вычислений заканчивается. • Двойственное условие оптимальности. Вводимая в базис переменная определяется как переменная, на которой достигается следующий минимум: где — коэффициент в z-строке симплекс-таблицы, соответствующий переменной — отрицательный коэффициент из симплекс-таблицы, расположенный на пересечении ведущей строки (соответствующей исключаемой переменной ) и столбца, соответствующего небазисной переменной . При наличии нескольких альтернативных переменных выбор делается произвольно. Отметим, что двойственное условие оптимальности гарантирует достижение оптимального решения. 3 Применение симплекс - метода Симплекс-метод универсален и с его помощью можно решить широкий спектр задач: • • • • Максимальное парасочетание Максимальный поток Транспортная задача Игра с нулевой суммой Методы линейного программирования дают возможность обосновать наиболее оптимальные экономические решения в условиях жестких ограничений, относящихся к используемым в производстве ресурсам (основные фонды, материалы, трудовые ресурсы). Применение этого метода в экономическом анализе позволяет решать задачи, связанные главным образом с планированием деятельности организации. Данный метод помогает определить оптимальные величины выпуска продукции, а также направления наиболее эффективного использования имеющихся в распоряжении организации производственных ресурсов. Corporate Social Responsibility • Существуют примеры и негативного применения симплекс – метода. Так, симплекс-метод упоминается в документе с оригинальным названием «Тихое оружие для спокойных войн» и рассматривается как одно из трех изобретений для создания системы полного контроля над обществом. • Возрастает актуальность темы корпоративной социальной ответственности (КСО, Corporate Social Responsibility, CSR). • Организации должны нести ответственность перед обществом, в котором функционируют, направляя часть своих ресурсов и усилий на социальные нужды, при этом уделяя внимание таким сферам, как защита окружающей среды, здравоохранение, защита интересов потребителя и т.п Заключение • Исследование операций используют в решении задач планирования производства (контроллинга, логистики, маркетинга) и прочих комплексных задач. Применение исследования операций в экономике позволяет понизить затраты или, повысить продуктивность предприятия (иногда в несколько раз!). • Решение задач линейного программирования – это достаточно трудоемкий процесс. Табличный симплекс-метод хорошо приспособлен для программирования и машинного счета. Существуют программные реализации симплекс-метода. В настоящее время появились интегрированные математические программные системы для научнотехнических расчетов: Eureka, PCMatLAB, MathCAD, Derive Maple V, Mathematica 2, Mathematica 3 , и др. Список использованной литературы 1. «Operačná analýza» skriptá pre všetky študijné programy Materiálovotechnologickej fakulty STU v Trnave, Ing. Henrieta HrablikChovanová, PhD., prof. Ing. Peter Sakál, CSc., 2010 год 2. Бразовская Н. В. «Методы оптимизации»: Учеб. пособие; Алтайский государственный технический университет им. И. И. Ползунова, [Центр дистанц. обучения]. — Барнаул: Изд-во АлтГТУ, 2000. — 120 с. 3. Вентцель, Е.С. «Исследование операций: Задачи, принципы, методология» / – М.: Высшая школа, 2001. – 208 с. 4. Попова Н.В. «Математические методы», 2005. 5. Перекрестов Д.Г., Поварич И.П., Шабашев В.А «Корпоративная социальная ответственность: вопросы теории и практики»,«Академия естествознания», 2011 год. 6. Силич, В.А. Системный анализ экономической деятельности: учебное пособие / В.А. Силич. – Томск: Изд. ТПУ, 2001. – 97 с. 7. А. Таха. «Введение в исследование операций: В 2-х книгах. Кн. 1.Пер. с англ.– М.: Мир, 1985. – 479 с. 8. Общий курс высшей математики для экономистов: Учебник / под ред. В.И. Ермакова.- М.: ИНФА - М. - 656 с. (серия «высшее образование»). http://www.rae.ru - Зарецкий А.Д. , Иванова Т.Е. статья «Корпоративная социальная ответственность: мировая и отечественная практика» научный журнал «Успехи научного естествознания», №12, 2011 год. 9. Спасибо за внимание! Ďakujem za pozornosť !