Научная статья на тему 'Комбинаторные оптимизационные модели и методы в экономике и управлении'

Комбинаторные оптимизационные модели и методы в экономике и управлении Текст научной статьи по специальности «Математика»

CC BY
2131
186
i Надоели баннеры? Вы всегда можете отключить рекламу.
Ключевые слова
КОМБИНАТОРНЫЕ ЗАДАЧИ / МОДЕЛИ / МЕТОДЫ / КОМБИНАТОРНЫЙ АНАЛИЗ / КОМБИНАТОРНЫЕ ВЫЧИСЛЕНИЯ / ЭКОНОМИКО-МАТЕМАТИЧЕСКИЕ МОДЕЛИ / КЛАССЫ АЛГОРИТМОВ / ЭВРИСТИЧЕСКИЕ АЛГОРИТМЫ / ЦЕЛОЧИСЛЕННАЯ ОПТИМИЗАЦИЯ / ДИСКРЕТНАЯ ОПТИМИЗАЦИЯ / БИВАЛЕНТНОЕ ПРОГРАММИРОВАНИЕ / ГРАФЫ / ДЕКОМПОЗИЦИЯ ГРАФА / АГРЕГИРОВАНИЕ МАТРИЦЫ / ДИАГОНАЛИЗАЦИЯ МАТРИЦЫ / ОПТИМАЛЬНОЕ РАЗМЕЩЕНИЕ ВЕРШИН / ОПТИМАЛЬНАЯ УПАКОВКА

Аннотация научной статьи по математике, автор научной работы — Карелин Владимир Петрович

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

i Надоели баннеры? Вы всегда можете отключить рекламу.
iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.
i Надоели баннеры? Вы всегда можете отключить рекламу.

Текст научной работы на тему «Комбинаторные оптимизационные модели и методы в экономике и управлении»

Социально-экономические явления и процессы в современном обществе и методология их исследования

В.П. КАРЕЛИН

Доктор техн. наук, профессор Заведующий кафедрой прикладной математики и информационных технологий, ЧОУ ВО ТИУиЭ, г. Таганрог

КОМБИНАТОРНЫЕ ОПТИМИЗАЦИОННЫЕ МОДЕЛИ И МЕТОДЫ В ЭКОНОМИКЕ И УПРАВЛЕНИИ

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

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

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

Тематический рубрикатор e-Library: 27.45.00

V.P. KARELIN

COMBINATORIAL OPTIMIZATION MODELS AND METHODS IN ECONOMICS AND MANAGEMENT

The stages of the development of those areas of classical mathematics that have served as the foundation for the creation of many areas of modern mathematics, in particular: number theory and combinatorics, set theory and graph theory, discrete and integer programming, optimization methods and mathematical modeling, decision theory, etc. are briefly presented. Peculiarities of combinatorial optimization models, singularrities of integer and discrete optimization problems are

considered, the search for exact solutions of which is connected with the necessity widely regarded as one viewing of a large number of options. Models of integer, discrete, and bivalent programming are presented, and some approaches to the solution of important problems for practice, such as decomposition of a graph into subgraphs, aggregation of a graph adjacency matrix, the problem of optimal placement of graph vertices, and the optimal packing problem for one or more backpacks.

Combinatorial problems, models, methods, combinatorial analysis, combinatorial calculations, economic-mathematical models, classes of algorithms, heuristic algorithms, integer optimization, discrete optimization, bivalent programming, graphs, graph decomposition, matrix aggregation, diagonalization of the matrix, optimal arrangement of vertices, optimum packing.

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

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

По мнению известного российского исследователя профессора В.И. Малыхина, применение мате-

матических методов в экономике и управлении идёт по трём направлениям: математическая экономика, математическое моделирование экономики и экономико-математические методы [1]. При этом математическая экономика понимается как чисто математическая теория экономики: аксиомы от экономики, а остальное от математики.

Математическое моделирование экономики - это описание математических моделей экономики, их создание, анализ. Сюда относятся моделирование производственных процессов, модели рынков, глобальные модели межотраслевого баланса и т.д. Важно отметить, что математик-экономист при составлении своей модели должен отчётливо себе представлять и строго ориентироваться на структуру и содержание доступной ему исходной информации. Иначе можно создать изящное в математическом смысле творение, которое никогда не найдёт практического применения. Для математической модели информация является «пищей», «переваривание» которой приводит к ожидаемому результату в виде количественной интерпретации достигнутого состояния, оптимального управленческого решения, прогноза экономического развития или других полезных сведений, уменьшающих неопределённость исследуемой экономической системы [1].

Экономико-математические методы - это совокупность математических методов, используемых для создания математических моделей экономики. Сюда относятся линейное программирование, нелинейное и динамическое программирование, целочисленное и дискретное программирование (целочисленная, дискретная или комбинаторная оптимизация), методы исследования операций, включая теорию игр, теорию графов, теорию принятия решений, сетевое планирование и т.п. [1] .

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

«Дискретный математический анализ является одним из древнейших и в то же время одним из современнейших направлений математики. С одной стороны, сюда относятся и одна из самых интригующих проблем математики - решение диофантовых уравнений, названных так по имени древнегреческого математика Диофанта, жившего в третьем веке нашей эры, и задачи, связанные с числами Фибоначчи, которые также имеют многовековую историю. (Заметим, что знаменитая теорема Ферма также имеет непосредственное отношение к диофан-товым уравнениям.) С другой стороны, с этим

направлением математики неразрывно связаны получившие большое развитие алгоритмические методы, важной ветвью которых является дискретное и целочисленное математическое программирование. ... Можно сказать, что дискретная математика и в первую очередь методы дискретной оптимизации переживают в наше время поистине второе рождение. . Дискретная математика в отличие от непрерывной не имеет единой теории, и поэтому здесь исследования, естественно, сводятся к изучению частных случаев. Такой подход развивает широкий взгляд на проблему в целом и способствует возникновению идей, оказывающихся полезными при исследовании различных проблем дискретной, целочисленной или комбинаторной оптимизации [2]».

Интерес к дискретному и целочисленному программированию со стороны экономистов, управленцев, специалистов, занимающихся проблемами обработки информации, в последнее время особенно возрос. Задачи с целочисленными решениями встречаются во всех областях человеческой деятельности. Однако поиск оптимального решения задач дискретной и целочисленной оптимизации - проблема существенно более сложная, чем задачи непрерывной оптимизации. Это объясняется тем, что диофантову исчислению присущи те комбинаторные трудности, которые отсутствуют в задачах с непрерывными переменными. Комбинаторика содержится в самой природе исследуемых явлений; однако в последние десятилетия многие из трудностей комбинаторного происхождения удалось преодолеть, и в настоящее время мы располагаем рядом методов, обеспечивающих конструктивный подход к решению целочисленных задач [3].

Особенностью задач целочисленной оптимизации является то, что все фигурирующие в них переменные могут быть лишь целыми числами. Примерами служат задачи, где дробное значение переменных лишено смысла. Например, когда нужно распределять рабочих, машины, оборудование, а также когда решение сводится к выбору одного из возможных вариантов действий. Естественно, может возникнуть вопрос: почему же, несмотря на практическую важность и большие прикладные возможности дискретного и целочисленного программирования, интерес к этим направлениям исследований стал проявляться относительно недавно? Парадокс заключается в том, что дискретная математика (арифметика), с которой начинали в далёком прошлом греки и арабы, в течение целого ряда последних столетий находилась у науки на положении «бедной родственницы» [3].

Начиная с XV - XVI вв. математика развивалась в связи с практическими запросами техники и мореплавания. Интенсивно развивались алгебра и тригонометрия, составлялись тригонометрические таблицы. Мореплаватели и астрономы, строители и конструкторы всех стран остро нуждались в этих таблицах, и они появлялись в разных странах и в разных вариантах. Логарифмы были изобретены в конце XVI - начале XVII в., и уже в 1614 г. в Англии вышла книга Дж. Непера (1550-1617) «Описание удивительных таблиц логарифмов». В 1620 г. лондонский профессор Эдмонд Гюнтер разработал

логарифмическую шкалу, явившуюся первым вариантом логарифмической линейки [4].

Поворотным пунктом в математике XVII в. была декартова переменная величина. Именно французы Р.Декарт (1596-1650), а затем П. Ферма (1601-1665) создали аналитическую геометрию, а облик, близкий к современному, ей придал выдающийся математик Леонард Эйлер (1707-1783), проработавший 28 лет в Петербургской и 25 лет в Берлинской академии. Аналитическая геометрия облегчила формирование анализа бесконечно малых и стала необходимым средством построения механики у И. Ньютона (16421727), Ж.-Л. Лагранжа (1736-1813) и Л. Эйлера, эффективным при решении многих задач математического естествознания [4].

В тесном взаимодействии математики и смежных наук (механики, астрономии, физики) вырабатывались основы математики переменных величин. В создание анализа бесконечно малых и затем элементов математического анализа вложен огромный многосторонний творческий труд десятков выдающихся математиков Европы. Это привело к формированию дифференциального и интегрального исчисления (И. Ньютон, Г.В. Лейбниц (1646-1716)).

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

Одновременно с рассмотренными выше направлениями стараниями выдающихся математиков продолжают развиваться и алгебра (общая теория уравнений, теория определителей), и геометрия (аналитическая, дифференциальная), и теория чисел (великая теорема Ферма, принцип математической индукции Б. Паскаля (1665)). В середине XVII в. начала формироваться как наука теория вероятностей, в связи с задачами которой проводились комбинаторные исследования (Б. Паскаль, П. Ферма, Г.В. Лейбниц) [4]. Кстати, именно эти трое учёных-математиков в ряде научных статей разработали основные понятия комбинаторики.

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

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

производство и повседневную деятельность человека, где решения принимаются на основе комбинаторного оценивания, прогнозирования, анализа и перебора вариантов [5; 6].

Средством анализа оптимизационных задач с дискретной структурой являются комбинаторные алгоритмы или комбинаторные вычисления. Примерами комбинаторных задач являются задачи на размещения и упаковку, задачи о маршрутах, перечислительные задачи, экстремальные задачи теории графов. Ряд комбинаторных задач сводится к известным моделям упорядочения, распределения или перераспределения. Примерами таких задач и соответствующих экономико-математических моделей являются следующие: задачи календарного и сетевого планирования и управления, задачи теории расписаний, выбор оптимальных маршрутов и потоков в сетях, логистические задачи, связанные с оптимизацией перевозок, с отысканием оптимальной упаковки транспортных средств, контейнеров, задача оптимального раскроя, задачи распределения заданий для исполнителей или различного рода машин (задача о назначениях), задача оптимального перераспределения изделий для обеспечения плана выпуска, задача агрегирования и классификации объектов, задача выбора структуры социальных групп и многие другие. Все эти задачи относятся к классу задач целочисленного или дискретного программирования. Как правило, поиск точного решения подобных задач связан с необходимостью просмотра большого числа вариантов, что становится затруднительным с ростом размерности задач. Поэтому целесообразной является разработка эвристических (приближенных) алгоритмов, позволяющих решать задачи большой размерности за приемлемое время и с удовлетворительной точностью. Использование эвристик при построении алгоритмов приводит к тому, что комбинаторные задачи в организационно-технологических системах решаются на основе большого разнообразия методов и алгоритмов, не связанных между собой общностью математических процедур и операций. Возможные подходы и методы решения некоторых из перечисленных задач предложены автором в [5-10; 12; 13].

Следует отметить, что дискретная оптимизация и комбинаторный анализ не имеют единой теории, т.е. некоторого набора основных положений, теорем, правил, позволяющих получать общие результаты и рекомендации. Однако многочисленные исследования и опыт разработки комбинаторных алгоритмов показали, что в ряде случаев все же существуют единые принципы организации вычислений, отражающие особенности того или иного класса моделей. Примерами являются метод ветвей и границ, разновидности динамического программирования, поиск с возвратом, методы теории расписаний и др. Общая идея этих методов состоит в замене полного перебора всех вариантов частичными переборами меньших объемов. Это достигается в результате исключения из рассмотрения ряда подмножеств, заведомо не содержащих искомого экстремума и сужения области перспективных вариантов [2; 3; 5-13].

Широко распространённым средством представления и исследования многих комбинаторных задач,

возникающих при анализе сложных производственных систем или процессов и при управлении ими, являются графы [5; 6; 9; 14]. Язык теории графов оказался очень удобным для изложения различных разделов математики и других наук. Это математическая логика и теория алгоритмов, математическая лингвистика и биология, теория игр и применение различных математических методов в экономике, теория сетей и кибернетика, основы построения интеллектуальных информационных систем и модели представления знаний и ряд других. Именно в связи с интенсивным развитием экономико-математических исследований появилось много новых задач, связанных с графами.

Можно выделить ряд базовых (типовых) задач на графах, к которым сводятся задачи анализа систем, планирования, проектирования, управления в социо-технических системах (производственных, социально-экономических, транспортных), задачи представления и обработки знаний, автоматизации процедур выработки и принятия решений и т.п. К базовым относятся задачи: декомпозиция графа, агрегирование или обобщение, размещение вершин графа (линейное, плоскостное), задачи упаковки (задача о ранце), экстремальные задачи на графах, раскраска графов, решение задачи коммивояжёра, транспортные и сетевые задачи, задачи определения изоморфизма, изоморфного вложения или пересечения графов и др. [3; 5-7; 9-11; 13-15].

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

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

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

Поскольку точно выполнить отыскание соответствующей матрицы для заданного графа затруднительно ввиду сложности выполнения полного перебора всех матриц, изоморфных данной, на практике применяют приближенные эвристические алгоритмы. Подробно алгоритмы разбиения неориентированного графа G на две части и более рассмотрены в работах [9-11].

В отличие от операции декомпозиции графа на подграфы операция агрегирования (кластеризация, классификация) применяется для объектов, информационно не связанных, и чаще выполняется при геометрическом представлении объекта в многомерном фазовом пространстве (пространстве признаков). Эта операция используется при построении классификационных моделей (при структурном синтезе) путем выделения (формирования) классов толерантности или эквивалентности, при группировке сильно связанных (сильно коррелирующих) параметров при обработке эмпирических данных любой природы, при агрегировании экономических объектов и т.п. [10; 11].

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

Поскольку эта матрица содержит данные по многим отраслям (до 100), она трудно обозрима. Например, ежегодно публикуемая матрица межотраслевого баланса, содержащая около 90 отраслей, занимает приблизительно 50 страниц книжного текста [11].

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

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

ния графа в решетку. При этом множество вершин X заданного графа G=(X,U), где и - множество ребер, отображается в множество вершин графа Н, представляющего собой прямоугольную координатную решётку, узлы которой являются вершинами графа Н [5; 14; 15].

В практических задачах (при отображении в решётку) отображаемый граф G представляет собой либо граф связей между операциями технологического процесса, либо информационный граф выполнения задач (граф коммутации), либо граф связей между данными и т.п.

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

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

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

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

Задача оптимального размещения вершин графа на плоскости является примером сложной комбинаторно-логической задачи, для решения которой различными авторами разработано большое число алгоритмов. Всю совокупность алгоритмов размещения можно разделить на следующие основные группы [5]:

- алгоритмы решения математических задач,

являющихся моделями задачи размещения;

- конструктивные алгоритмы начального размещения;

- итерационные алгоритмы улучшения начального

варианта размещения;

- непрерывно-дискретные методы размещения.

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

Метод сведения решения сложной комбинаторной задачи к совокупности более простых позволяет использовать для их решения различные комбинаторные модели и алгоритмы.

При решении задач проектирования на практике в большинстве случаев используются эвристические

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

В работах [5; 15] показаны способы и примеры приведения задач оптимального размещения к модели бивалентного программирования. Идея оптимизации начального размещения элементов схемы (вершин графа соединений) на плоскости состоит в следующем.

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

Пусть п вершин (элементов) размещены в р горизонтальных рядов по q элементов в каждом, т.е. n=pxq. Оптимизировать размещение предлагается путем последовательного выполнения двух процедур: поворота вначале некоторых горизонтальных, а затем некоторых вертикальных рядов элементов на 180о и отыскания оптимального линейного размещения вначале вертикальных, а затем и горизонтальных рядов. Эти процедуры позволяют минимизировать суммарную длину соединений между элементами вначале в проекции на ось х, а затем в проекции на ось у. Каждое последующее действие будет лишь улучшать, но не ухудшать результаты предыдущих действий.

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

максимум функции

р р

В(х)= X ХЬкг (хк+хг -2хкхг), (1)

к=1 г=к+1

где bkr=const, хк,хг еX, Хце {0,1}, s, к, г е 1= {1,2,...,р}, В(х)=В (Ъ).

Следовательно, мы можем одной из переменных х е X задать любое значение 0 или 1.

Для отыскания наилучшего расположения вертикальных рядов элементов (линеек) необходимо также решать задачу (1), но вместо числа р нужно ставить число q и индекс s, к, г е {1=1,2,

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

В работах [5; 12] рассмотрена задача оптимальной упаковки, которая сводится к классической задаче упаковки нескольких рюкзаков (ранцев) по критерию минимизации веса самого загруженного рюкзака. Для точного решения этой задачи можно воспользоваться одним из существующих методов математического

программирования. Наиболее тривиальным является метод полного перебора. При этом рассматриваются всевозможные размещения каждого из п предметов в т рюкзаков. Очевидно, что перебор всех возможных размещений составит тп. Применение известных точных методов решения задач целочисленного и, в частности, бивалентного программирования при больших п и т также дает экспоненциальную оценку сложности вычислений. Следовательно, получение точного решения при больших значениях п и т (т>10, п>>10) становится практически невозможным. Поэтому было целесообразным разрабатывать приближенные методы для решения рассматриваемой задачи. В работе [5] также предложено несколько алгоритмов упаковки, использующих эвристический подход. Эти алгоритмы позволяют эффективно решать не только задачи размещения плоских геометрических фигур или раскроя материалов, но также и задачу распределения загрузки оборудования. Такие алгоритмы были разработаны как для случая загрузки однотипных машин, так и для машин разной производительности. Требовалось минимизировать время работы максимально загруженной машины. На основании доказанной теоремы в [5] были получены оценки нижней границы области существования наилучшего решения, которые позволяют сужать область поиска наилучшего решения задачи распределения, вести его целенаправленно и оценивать точность решения любым из эвристических алгоритмов.

В заключение следует отметить, что для отыскания оптимального решения задач целочисленного и дискретного программирования наряду с рассмотренными выше детерминистскими методами существуют и развиваются методы, сочетающие элементы вероятностных и детерминистских подходов. Это методы эволюционных вычислений (ЭВ), основанные на применении эволюционно-генетических процедур, методы генетического поиска, методы случайного поиска [6]. Методы ЭВ - это методы поиска, оптимизации или обучения, основанные на некоторых формализованных принципах естественного эволюционного процесса. Эволюционно-генетические методы используют генетические алгоритмы (ГА) - поисковые алгоритмы, основанные на механизмах натуральной селекции и натуральной генетики. ГА - это мощная стратегия выхода из локальных оптимумов. Основной проблемой ГА является сложность нахождения оптимального размера популяции, т.е. достаточного числа генераций. Затруднения вызывают также и вопросы управления процессом генетического поиска. ГА строятся уникально для каждой оптимизационной задачи [6].

БИБЛИОГРАФИЧЕСКИЙ СПИСОК

1. Экономико-математическое моделирование: учебник/ под общ. ред. И.Н. Дрогобыцкого. - М.: Изд-во «Экзамен», 2004. - 800 с.

2. Саати Т. Целочисленные методы оптимизации и связанные с ними экстремальные проблемы/ Т. Саати. - М.: Мир, 1973. - 304 с.

3. Кофман А., Анри-Лабордер А. Методы и модели исследования операций. Целочисленное программирование/ А. Кофман, А. Анри-Лабордер. - М.: Мир, 1977.-433 с.

4. Рыбников К.А. История математики: учебное пособие/ К.А. Рыбников. - М.: Изд-во Московского университета, 1974. - 456 с.

5. Карелин В.П. Теория и средства поддержки комбинаторных моделей принятия решений в организационно-технологических системах/ В.П. Карелин: дис. ... д-ра техн. наук. - Таганрог: ТРТУ, 1995.

6. Карелин В.П., Лозовский А.В. Методы понижения сложности и сокращения перебора при решении комбинаторных задач в распределенных информационных системах поддержки организационного управления/ В.П. Карелин, А.В. Лозовский //Вестник ТИУиЭ. - 2005. - № 1.

7. Карелин В.П. Экономико-математические и комбинаторные модели планирования, проектирования и управления процессами производства и распределения: сб. докладов международной конференции «Теория и практика промышленного развития экономических систем и процессов» / В.П. Карелин. - Астрахань, 2011.

8. Карелин В.П. Модели и методы теории графов в системах поддержки принятия решений/ В.П. Карелин //Вестник ТИУиЭ. - 2014. - № 2(20).

9. О разрезании графов на подграфы// Математическое моделирование и теория электрических цепей/ А.Н. Мелихов, В.П. Карелин, В.М. Курей-чик. - Киев: Наукова думка, 1973.

10. Карелин В.П., Целых А.Н. Методы и модели принятия решений в социотехнических системах: препринт/ В.П. Карелин, А.Н. Целых. - Ростов н/Д.: Изд-во Северо-Кавказского научного центра высшей школы, 1999. - 60 с.

11.Браверман Э.М., Мучник И.Б. Структурные методы обработки эмпирических данных/ Э.М. Бра-верман, И.Б. Мучник. - М.: Наука. 1983. - 464с.

12. Карелин В.П., Ковалёв С.М. Об одной задаче упаковки нескольких рюкзаков/ В.П. Карелин, С.М. Ковалёв // Изв. СКНЦВШ. Технич. науки. - 1980. - №2.

13. Карелин В.П. Применение метода ветвей и границ для отыскания гамильтонова цикла и решения задачи коммивояжера на плоском геометрическом графе: сб. докладов IV Международной науч.-практ. конф. «Проблемы регионального управления, экономики, права и инновационных процессов в образовании». - Таганрог: Изд-во ТИУиЭ, 2005. - Т. 2.

14. Применение графов для проектирования дискретных устройств/ А.Н. Мелихов, Л.С. Берштейн, В.М. Курейчик. - М.: Наука, 1974. - 304 с.

15. Карелин В.П., Калашников В.А. Применение метода бивалентного программирования для решения некоторых задач проектирования/ В.П. Карелин, В.А. Калашников // Микроэлектроника. -1979.-Т. 3. - Вып. 5.

© Карелин Владимир Петрович, 2018 © Частное образовательное учреждение высшего образования «Таганрогский институт управления

и экономики», 2018

i Надоели баннеры? Вы всегда можете отключить рекламу.