Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
лабораторная работа 3.doc
Скачиваний:
0
Добавлен:
01.07.2025
Размер:
939.52 Кб
Скачать

Лабораторная работа №3. Решение геометрическим методом задачи линейного программирования

Цель работы:

Целью лабораторной работы является получение навыков самостоятельной алгоритмической и программной реализации на компьютерной технике геометрического метода решения задачи линейного программирования в MatLab, научиться строить область допустимых решений задачи линейного программирования, научиться строить линии уровня функции цели, научиться представлять результаты расчетов в виде html-страниц.

Требования к содержанию, оформлению и порядку выполнения

Номер варианта индивидуального задания определяется последней цифрой в зачетной книжке студента (цифра 0 соответствует варианту № 10) или порядковым номером компьютера в компьютерном классе, за которым работает студент.

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

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

Программирование методов, указанных в заданиях лабораторных работ, следует выполнять самостоятельно, используя команды языка программирования пакета Matlab.

После завершения создания m-файлов в пакете Matlab, реализующих указанные методы, следует выполнить вычисления на основании данных своего варианта. Обязательно следует выполнить проверку полученных на компьютере результатов вычислений.

Отчет оформляется в соответствии с приведенным образцом.

Отчет о выполнении задания лабораторной работы должен содержать следующие разделы:

1. Формулировка задания на программирование.

2. Краткое описание исследуемого метода - фрагмент лекционного материала.

3. Текст программы в виде m-файла - является основным результатом выполнения работы.

4. Исходные данные, номер варианта.

5. Результаты вычислений, включая промежуточные результаты - копии текстовых файлов или копии экранных форм, графики.

6. Результаты проверки полученных данных

Общая постановка задачи

В результате выполнения заданий лабораторной работы студенты должны уметь создавать программно-алгоритмическую поддержку для компьютерной реализации геометрического метода решения задачи линейного программирования в MatLab, научиться строить область допустимых решений задачи линейного программирования, научиться строить линии уровня функции цели, научиться представлять результаты расчетов в виде html-страниц.

Лабораторные занятия проводятся в компьютерных классах.

Теоретическая часть

Рассмотрим задачу линейного программирования с двумя переменными

.

Пусть геометрическим изображением системы ограничений является многоугольник (рисунок 3.1). Чтобы решить задачу необходимо среди вершин этого многоугольника найти вершину, в которой функция цели принимает минимальное значение.

Рисунок 3.1.

Рассмотрим линию уровня линейной функции Q(x), то есть линию вдоль которой эта функция принимает одно и то же фиксированное значение a. График этой линии задается уравнением

Для различных значений величины a линии уровня линейной функции параллельны. Одно из свойств линий уровня линейной функции состоит в том, что при параллельном смещении линии в одну сторону значение функции только возрастает, а при смещении в другую сторону – только убывает. Направление, в котором следует осуществлять сдвиг, чтобы достичь меньших значений целевой функции, можно найти построением другой линии уровня. Путем параллельного переноса прямой Q(x)=a в направлении меньших значений целевой функции достигают того, что эта прямая будет пересекать допустимую область решений (многоугольник) по части ее границы – множеству точек Р. (В общем случае параллельная прямая может пересекать допустимую область в одной точке, по отрезку, лучу или прямой.) Все другие допустимые точки лежат на линиях уровня, принадлежащих большим значениям целевой функции. Все точки, лежащие на линиях уровня с меньшими значениями, являются не допустимыми. Таким образом, множество точек Р является множеством оптимальных решений.