Справочник от Автор24
Найди эксперта для помощи в учебе
Найти эксперта
+2

Программирование дискретных структур

Замечание 1

Программирование дискретных структур — это раздел математического программирования, переменные в задачах которого могут принимать лишь дискретные значения, к примеру, целочисленные.

Введение

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

Дискретное программирование считается разделом оптимального программирования, изучающего экстремальные задачи, с накладываемым на искомую переменную, условием целочисленности, а также условием конечности области допустимых решений. То есть, тут применяется модель общей задачи математического программирования с добавочным ограничением, а именно, $x_1, x_2, ..., x_n$ должны быть целочисленными. Задачей дискретного программирования является задача математического программирования:

$ F(x°) = min F(x)$.

Где: $x \ Є \ G$ является множеством допустимых решений, и оно конечно.

То есть:

$0≤│G│= N ∠ ∞$.

Где $│G│$ является числом элементов множества G.

Программирование дискретных структур

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

  1. Для любой точки x Є G может быть определено необходимым образом понятие наполненной окрестности Gx с G, которая состоит из точек, принадлежащих G.
  2. Можно представить сравнительно просто необходимые и достаточные условия локальной оптимальности. На базе таких условий локальный оптимум целевой функции F(x) на множестве G можно найти с помощью конечных процессов.
  3. Локальный оптимум целевой функции должен совпадать с глобальным. К числу задач, которые не являются регулярными, могут быть отнесены, в том числе, так называемые многоэкстремальные задачи, то есть, задачи, где глобальный экстремум не совпадает с локальным экстремумом. К классу нерегулярных задач могут быть отнесены дискретные задачи, в которых множество G не выступает как связное и выпуклое (к примеру, множество G может являться конечным или счетным, или декартовым произведением конечных или счетных множеств).
«Программирование дискретных структур» 👇
Помощь эксперта по теме работы
Найти эксперта
Решение задач от ИИ за 2 минуты
Решить задачу
Найди решение своей задачи среди 1 000 000 ответов
Найти

В задачах регулярного математического программирования большая часть методик базируется на следующем исходном положении, а именно, если точки х1 Є G и х2 Є G являются близкими, то значения f(x1) и f(x2) также являются близки. В задачах дискретной оптимизации данное положение может не выполняться. Если в данном классе задач удастся ввести естественным образом понятие окрестности, то близкие точки из данной окрестности могут сколь угодно сильно иметь отличия по значениям функции.

В определенных задачах дискретной оптимизации не всегда удается естественным образом задать понятие окрестности, тогда оно может вводиться при помощи искусственных построений. По этой причине в задачах дискретной оптимизации близость двух точек х1 Є G и х2 Є G можно оценить только по значениям f{x1) и f(x2).

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

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

  1. Задачи, обладающие неделимостями.
  2. Задачи, выступающие в качестве экстремальных комбинаторных.
  3. Задачи, имеющие разрывные целевые функции.
  4. Задачи, базирующиеся на невыпуклых и несвязных областях.

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

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

Задача о назначениях является распределительной задачей, в которой для исполнения любой работы необходим один и только один ресурс (это может быть один специалист, один автомобиль и так далее), а любой из ресурсов можно использовать на одной и только одной работе. То есть ресурсы являются неделимыми между работами, а работы являются неделимыми между ресурсами. Это означает, что задача о назначениях представляет собой частный случай транспортной задачи.

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

Методики, позволяющие решить задачи дискретного программирования, подразделяются на следующие классы:

  1. Отсечения.
  2. Набор комбинаторных методов.
  3. Набор приближенных методов.
Воспользуйся нейросетью от Автор24
Не понимаешь, как писать работу?
Попробовать ИИ
Дата написания статьи: 07.06.2022
Найди решение своей задачи среди 1 000 000 ответов
Крупнейшая русскоязычная библиотека студенческих решенных задач
Все самое важное и интересное в Telegram

Все сервисы Справочника в твоем телефоне! Просто напиши Боту, что ты ищешь и он быстро найдет нужную статью, лекцию или пособие для тебя!

Перейти в Telegram Bot