Главная » Просмотр файлов » Т. Кормен, Ч. Лейсерзон, Р. Риверст, К. Штайн - Алгоритмы. Построение и анализ (2013)

Т. Кормен, Ч. Лейсерзон, Р. Риверст, К. Штайн - Алгоритмы. Построение и анализ (2013) (1162189), страница 196

Файл №1162189 Т. Кормен, Ч. Лейсерзон, Р. Риверст, К. Штайн - Алгоритмы. Построение и анализ (2013) (Т. Кормен, Ч. Лейсерзон, Р. Риверст, К. Штайн - Алгоритмы. Построение и анализ (2013)) 196 страницаТ. Кормен, Ч. Лейсерзон, Р. Риверст, К. Штайн - Алгоритмы. Построение и анализ (2013) (1162189) страница 1962019-09-19СтудИзба
Просмтор этого файла доступен только зарегистрированным пользователям. Но у нас супер быстрая регистрация: достаточно только электронной почты!

Текст из файла (страница 196)

Средства, выделяемые на бурение новых скважин, ограничены, и компания хочет максимизировать ожидаемое количество добываемой нефти исходя из заданного бюджета. 890 Часть гтэ'. Иэбранные тены Задачи линейного программирования полезны также при моделировании и решении задач теории графов и комбинаторных задач, таких как задачи„приведенные в данной книге. Мы уже встречались с частным случаем линейного программирования, который использовался для решения систем разностных ограничений в разделе 24.4.

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

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

Промежуточные решения являются допустимыми, но не обязательно находятся в вершинах симплекса„ однако конечное решение является вершиной. Для задач большой размерности производительность алгоритмов внутренней точки может быть сравнима с производительностью симплекс-алгоритма, а иногда может и превышать ее.

О том, где найти дополнительную информацию по указанным алгоритмам, говорится в заключительных замечаниях к данной главе. Если ввести в задачу линейного программирования дополнительное требование, чтобы все переменные принимали целые значения, получится задача цело. численного линейного программирования. В упр. 34.5.3 предлагается показать, что в этом случае даже задача поиска допустимого решения является ХР-полной; поскольку ни для одной ИР-полной задачи полиномиальные алгоритмы решения неизвестны, для задач целочисленного линейного программирования полиномиальные по времени алгоритмы также неизвестны.

В отличие от них, задача линейного программирования общего вида может быть решена за полиномиальное время. В данной главе для указания конкретного набора значений переменных в задаче линейного программирования с переменными х = (хм хз,..., х„) мы будем использовать обозначение х = (хы хз,..., х„).

Глава г9. линейное нраграммиравание а91 29.1. Стандартная и каноническая формы задачи линейного программирования В данном разделе описываются стандартная и каноническая формы задач линейного программирования, которые будут полезны при формулировании задач и работе с ними. В стандартной форме все ограничения являются неравенствами, а в канонической форме все ограничения являются равенствами (за исключением ограничений, требующих, чтобы все переменные были неотрицательными). с,ху 1=1 и сн х, < Ь, при(=1,2,...,т (29.16) максимизируют при условиях (29.17) х.

>0 при7'=1,2,...,п. (29.18) Обобщая введенную для двумерной задачи линейного программирования терминологию, будем называть выражение (29.16) целевой функцией, а и + т неравенств (29.17) и (29.18) — ограничениями; и ограничений (29.18) называются ограничениями неолнрицанеельнослни. Произвольная задача линейного программирования не обязательно содержит ограничения неотрицательности, но в стандартной форме они необходимы. Иногда удобно записывать задачу линейного программирования в более компактной форме.

Определим т х и-матрицу А,= (а,,), т-мерный вектор 6 = (6,), и-мерный вектор с = (с,) и и-мерный вектор х = (х.). Тогда задачу линейного программирования (29.16)-(29.18) можно записать в следующем виде: максимизировать с х при условиях Ах < Ь (29.19) (29.20) (29.21) х>0 В строке (29.19) сгх представляет собой скалярное произведение двух векторов. В неравенстве (29.20) Ах является произведением матрицы и вектора, а х > 0 в (29.21) означает, что все компоненты вектора х должны быть неотрицательными. Таким образом, задачу линейного программирования в стандартной форме можно описать с помощью тройки (А, Ь, с), и мы примем соглашение, что А, Ь, и с всегда имеют указанную выше размерность.

Стандартная форма В стандартной форне задаются и действительных чисел ем сз,...,с„; т действительных чисел 6з, Ьз,..., Ь; и тп действительных чисел а,, где 1 = 1, 2,..., т и 1 = 1, 2,..., и. Требуется найти п действительных чисел хы хз,..., х„, которые б92 Часть Иб Избранные нти Теперь введем терминологию для описания различных ситуаций, возникающих в линейном программировании. Некоторые термины уже использовались в двумерной задаче. Набор значений переменных х, которые удовлетворяют всем ограничениям, называется допустимым решением, в то время как набор значений переменных х, не удовлетворяющий хотя бы одному ограничению, называется недопустимым решением.

Решению х соответствует целевое значение сгх. Допустимое решение х, целевое значение которого является максимальным среди всех допустимых решений, является онтимаяьньии решением, а его целевое значение стх называется онтимальньии целевым значением. Если задача линейного программирования не имеет допустимых решений, она называется неразрешимой (шгеаз(Ые), в противном случае она является разрешимой (Геаз)Ые).

Если задача линейного программирования имеет допустимые решения, но не имеет конечного оптимального целевого значения, она называется неограниченной (цпЬошЫео). В упр. 29.1,9 предлагается показать, что задача линейного программирования может иметь конечное оптимальное целевое значение даже в том случае, когда ее допустимая область неограничена. Преобразование задач линейного программирования в стандартную форму Любую задачу линейного программирования, в которой требуется минимизировать илн максимизировать некую линейную функцию при наличии линейных ограничений, всегда можно преобразовать в стандартную форму.

Исходная задача может находиться ие в стандартной форме по четырем причинам. !. Целевая функция минимизируется, а ие максимизируется. 2. На некоторые переменные не наложены условия неотрицательности. 3. Некоторые ограничения имеют форму равенств, т.е. имеют знак равенства вместо знака "меньше или равно". 4. Некоторые ограничения-неравенства вместо знака "меньше или равно" имеют знак "больше или равно". Преобразовывая задачу линейного программирования Т, в другую задачу линейного программирования К мы бы хотели, чтобы оптимальное решение задачи Б' позволяло найти оптимальное решение задачи Т.

Будем говорить, что две задачи максимизации, Т, и К эквивалентам, если для каждого допустимого решения х задачи Т, с целевым значением г существует соответствующее допустимое решение х' задачи г.' с целевым значением г, а для каждого допустимого решения х' задачи г.' с целевым значением г существует соответствующее допустимое решение х задачи Т с целевым значением г. (Из этого определения не следует взаимно однозначное соответствие между допустимыми решениями.) Задача минимизации Б и задача максимизации Ь' эквивалентны, если для каждого допустимого решения х задачи Т, с целевым значением г существует соответствующее допустимое решение х' задачи г.' с целевым значением — г, а для каждого допустимого решения х' задачи г,' с целевым значением г существует соответствующее допустимое решение х задачи Т с целевым значением — г. 893 Глава 29.

Линейное нрограммирование Теперь покажем, как поочередно избавиться от перечисленных выше возможнык проблем. После устранения каждого несоответствия стандартной форме докажем, что новая задача линейного программирования эквивалентна старой. Чтобы превратить задачу минимизации Ь в эквивалентную ей задачу максимизации К достаточно просто изменить знаки коэффициентов целевой функции на противоположные. Поскольку Ь и Ь' имеют одинаковые множества допустимых решений и для любого допустимого решения целевое значение 7 противоположно целевому значению К эти две задачи линейного программирования эквивалентны. Например, пусть исходная задача имеет вид минимизировать — 2х1 + Зхз при условиях х1 + хз = 7 х1 — 2хз < 4 х) > О. Если мы поменяем знаки коэффициентов целевой функции, то получим следую- щую задачу: максимизировать 2х1 — Зхз при условиях х1 + хз = 7 х1 — 2хз < 4 х1 >О.

Характеристики

Список файлов книги

Свежие статьи
Популярно сейчас
А знаете ли Вы, что из года в год задания практически не меняются? Математика, преподаваемая в учебных заведениях, никак не менялась минимум 30 лет. Найдите нужный учебный материал на СтудИзбе!
Ответы на популярные вопросы
Да! Наши авторы собирают и выкладывают те работы, которые сдаются в Вашем учебном заведении ежегодно и уже проверены преподавателями.
Да! У нас любой человек может выложить любую учебную работу и зарабатывать на её продажах! Но каждый учебный материал публикуется только после тщательной проверки администрацией.
Вернём деньги! А если быть более точными, то автору даётся немного времени на исправление, а если не исправит или выйдет время, то вернём деньги в полном объёме!
Да! На равне с готовыми студенческими работами у нас продаются услуги. Цены на услуги видны сразу, то есть Вам нужно только указать параметры и сразу можно оплачивать.
Отзывы студентов
Ставлю 10/10
Все нравится, очень удобный сайт, помогает в учебе. Кроме этого, можно заработать самому, выставляя готовые учебные материалы на продажу здесь. Рейтинги и отзывы на преподавателей очень помогают сориентироваться в начале нового семестра. Спасибо за такую функцию. Ставлю максимальную оценку.
Лучшая платформа для успешной сдачи сессии
Познакомился со СтудИзбой благодаря своему другу, очень нравится интерфейс, количество доступных файлов, цена, в общем, все прекрасно. Даже сам продаю какие-то свои работы.
Студизба ван лав ❤
Очень офигенный сайт для студентов. Много полезных учебных материалов. Пользуюсь студизбой с октября 2021 года. Серьёзных нареканий нет. Хотелось бы, что бы ввели подписочную модель и сделали материалы дешевле 300 рублей в рамках подписки бесплатными.
Отличный сайт
Лично меня всё устраивает - и покупка, и продажа; и цены, и возможность предпросмотра куска файла, и обилие бесплатных файлов (в подборках по авторам, читай, ВУЗам и факультетам). Есть определённые баги, но всё решаемо, да и администраторы реагируют в течение суток.
Маленький отзыв о большом помощнике!
Студизба спасает в те моменты, когда сроки горят, а работ накопилось достаточно. Довольно удобный сайт с простой навигацией и огромным количеством материалов.
Студ. Изба как крупнейший сборник работ для студентов
Тут дофига бывает всего полезного. Печально, что бывают предметы по которым даже одного бесплатного решения нет, но это скорее вопрос к студентам. В остальном всё здорово.
Спасательный островок
Если уже не успеваешь разобраться или застрял на каком-то задание поможет тебе быстро и недорого решить твою проблему.
Всё и так отлично
Всё очень удобно. Особенно круто, что есть система бонусов и можно выводить остатки денег. Очень много качественных бесплатных файлов.
Отзыв о системе "Студизба"
Отличная платформа для распространения работ, востребованных студентами. Хорошо налаженная и качественная работа сайта, огромная база заданий и аудитория.
Отличный помощник
Отличный сайт с кучей полезных файлов, позволяющий найти много методичек / учебников / отзывов о вузах и преподователях.
Отлично помогает студентам в любой момент для решения трудных и незамедлительных задач
Хотелось бы больше конкретной информации о преподавателях. А так в принципе хороший сайт, всегда им пользуюсь и ни разу не было желания прекратить. Хороший сайт для помощи студентам, удобный и приятный интерфейс. Из недостатков можно выделить только отсутствия небольшого количества файлов.
Спасибо за шикарный сайт
Великолепный сайт на котором студент за не большие деньги может найти помощь с дз, проектами курсовыми, лабораторными, а также узнать отзывы на преподавателей и бесплатно скачать пособия.
Популярные преподаватели
Добавляйте материалы
и зарабатывайте!
Продажи идут автоматически
6531
Авторов
на СтудИзбе
301
Средний доход
с одного платного файла
Обучение Подробнее