Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ммпур методичка.DOC
Скачиваний:
103
Добавлен:
16.12.2018
Размер:
5.47 Mб
Скачать

1.3. Разновидности задач исследования операций и подходов к их решению Прямые и обратные задачи исследования операций.

Задачи исследования операций делятся на две категории: а) прямые и б) обратные. Прямые задачи отвечают на вопрос: что будет, если в заданных условиях мы примем какое-то решение? Для решения такой задачи строится математическая модель, позволяющая выразить один или несколько показателей эффективности через заданные условия и элементы решения.

Обратные задачи отвечают на вопрос: как выбрать решение для того, чтобы показатель эффективности обратился в максимум или минимум (в зависимости от конкретной задачи).

Естественно, прямые задачи проще обратных. Очевидно также, что для решения обратной задачи прежде всего надо уметь решать прямую. Если число возможных вариантов решения обратной задачи невелико, то можно попросту вычислить показатель эффективности для каждого из них, сравнить между собой полученные значения и непосредственно указать один или несколько оптимальных вариантов, для которых показатель эффективности достигает максимума (минимума). Такой способ нахождения оптимального решения называется «простым перебором». Когда число возможных вариантов решения велико, применяются методы «направленного перебора».

Пусть имеется некоторая операция Q, на успех которой мы можем в какой-то мере влиять, выбирая тем или другим способом решение x. Пусть эффективность операции характеризуется одним показателем Wmax.

Возьмем самый простой, так называемый «детерминированный» случай, когда все условия операции известны заранее, т. е. не содержат неопределенности. Тогда все факторы, от которых зависит успех операции, делятся на две группы:

1) заданные, заранее известные факторы (условия выполнения операции);

2) зависящие от нас элементы решения, образующие в своей совокупности решение x.

Пример выбора решения при определенности: линейное программирование.

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

Примером выбора решений является линейное программирование (наиболее подробно оно будет рассматриваться в следующей главе).

В качестве примера задачи линейного программирования рассмотрим задачу о диете. Пусть имеется n продуктов F1, F2,..., Fn. «Диета» предписывает суточное потребление каждого продукта: x1 единиц продукта F1,, x2 единиц продукта F2 и т. д. С каждой диетой (x1, x2, ..., xn) мы можем связать (т. е. определить для нее) содержание какого-либо данного перечня питательных веществ и элементов, которые нас интересуют, скажем белков, жиров, углеводов, железа, кальция, витамина В, витамина С и т. д. Мы замечаем, что содержание в диете (x1, x2, ..., xn), скажем, белков представляется линейным выражением

а1x1+a2x2+...+anxn,

где а1 обозначает содержание белков в единице продукта F1, a2 — содержание белков в единице продукта F2 и т. д. Очевидно, некоторые ai могут быть равны нулю, но не могут быть отрицательны. То же самое относится к xi. Медицина установила, что человеку требуется некоторое минимальное количество каждого питательного вещества, скажем а единиц белков в день. Таким образом, нужно выбирать лишь между диетами, обеспечивающими эти минимальные количества. Поэтому мы требуем, чтобы диета (x1, x2, ..., xn) удовлетворяла линейным неравенствам следующего вида:

а1x1+a2x2+...+anxnа.

Это неравенство написано только для белков; для каждого из остальных питательных веществ пишется аналогичное условие. Очевидно, эти условия можно выполнить, взяв достаточно большие количества пищи без учета стоимости; однако мы часто хотим выбрать диету так, чтобы получить минимальную стоимость — например, в госпитале, — и это представляет довольно сложную задачу. Если p1, p2, ..., pn — соответственно цены единиц продуктов F1, F2, ..., Fn, то стоимость диеты (x1, x2, ..., xn) равна

p1x1+p2x2+...+pnxn.

Итак, окончательно задача сводится к такому выбору диеты, чтобы удовлетворить требованиям питательности (линейные неравенства) при минимальной стоимости (линейное выражение для стоимости).

Общая задача линейного программирования включает в основном следующие факторы:

1) операции, каждая из которых состоит в выборе n действительных чисел (например, диеты);

2) условия осуществимости (ограничения), представляющие собой линейные неравенства и равенства, которым должны подчиняться возможные выборы (например, минимальные содержания питательных веществ);

3) связанный с каждым выбором показатель, равный взвешенному среднему всех n чисел, составляющих выбор (например, функция стоимости).

Каждой задаче линейного программирования можно поставить в соответствие некоторую игру двух лиц с нулевой суммой и наоборот, поэтому, если задача линейного программирования разрешима, то решение одной задачи всегда можно истолковать так, что оно даст решение другой.

Следует упомянуть две другие известные задачи выбора решений при определенности, тесно связанные с задачей линейного программирования. В первой, называемой задачей о распределении персонала («проблемой выбора»), предполагается, что имеется n человек и n работ. «Ценность» или «производительность» человека i на работе j по предположению известна и может быть указана числом, которое мы обозначим aij. Задача состоит в том, чтобы найти распределение индивидуумов по работам, которое дает максимум общей производительности. В той задаче множество возможных действий F состоит из всех взаимно однозначных назначений людей на работе и, следовательно, всего имеется n != таких действий. Один из способов решить задачу распределения персонала — это включить ее в задачу линейного программирования.

Вторая задача — задача о коммивояжере — по идее вполне аналогична задаче о распределении персонала, но гораздо труднее ее. Коммивояжер выезжает из столицы штата и должен посетить каждую из столиц других штатов. Каким кратчайшим путем ему нужно ехать? В этой задаче имеется 47! возможных вариантов (не 48!, потому что начальная столица задана), где любой вариант есть направленный путь, проходящий через столицу каждого штата, а показателем, связанным с каждым вариантом, является длина всего маршрута.

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

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]