Научная статья на тему 'Оптимізація розміщення об’єктів, які можна розкласти на прямокутники'

Оптимізація розміщення об’єктів, які можна розкласти на прямокутники Текст научной статьи по специальности «Математика»

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

Аннотация научной статьи по математике, автор научной работы — Яремчук Світлана Іванівна, Шаповалов Юрій Олександрович

Розглядається задача оптимізації розміщення об’єктів, які можна розкласти на прямокутники. На розміщення накладено умови взаємного неперетину об’єктів та невиходу їх за межі заданої опуклої області. Розробляється та програмно реалізується алгоритм розв’язання зазначеної задачі з використанням модифікованого методу можливих напрямків.

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

Placement optimization of objects that can be decomposed on rectangles

The problem of optimal placing of special-shaped objects was considered. The mathematical model was built. The modified method of feasible directions was developed for considered problem.

Текст научной работы на тему «Оптимізація розміщення об’єктів, які можна розкласти на прямокутники»

УДК519.67

ОПТИМІЗАЦІЯ РОЗМІЩЕННЯ ОБ’ЄКТІВ, ЯКІ МОЖНА РОЗКЛАСТИ НА ПРЯМОКУТНИКИ

ЯРЕМЧУК С.І., ШАПОВАЛОВ Ю.О._______________

Розглядається задача оптимізації розміщення об’єктів, які можна розкласти на прямокутники. На розміщення накладено умови взаємного неперетину об’єктів та невиходу їх за межі заданої опуклої області. Розробляється та програмно реалізується алгоритм розв’ язання зазначеної задачі з використанням модифікованого методу можливих напрямків.

Вступ

Проблеми оптимального розміщення виникають при проектуванні різноманітних пристроїв, при розміщенні обладнання, вантажу та ін. Кожна практична задача має свій критерій якості. Наприклад, при розміщенні компонентів пристрою це може бути значення температури в заданих точках, відстань між окремими елементами конструкції та ін.

В даному дослідженні розглядається задача оптимізації розміщення об’єктів, кожен з яких може бути розкладений на взаємо-орієнтовані прямокутники. Сторони усіх об’єктів паралельні координатним осям. На розміщення накладено о бмеження взаємного неперетину об єктів та невиходу їх за межі заданої опуклої області.

Серед усіх припустимих розміщень необхідно знайти таке, при якому функція цілі досягає свого мінімуму.

Для задач розміщення розроблено багато методів, але через особливості таких задач ця проблема є досі актуальною. В роботі [1] множину припустимих розв’язків подано у вигляді структур лінійних нерівностей та запропоновано підхід до точного розв’язання задачі розміщення прямокутників, що базується на застосуванні методу гілок та меж. В роботі [2] розв’язок вихідної задачі шукається шляхом розв’язання послідовності підзадач методом умовного градієнта. В [3] розглянуто задачу оптимізації розміщення об’єктів прямокутної форми в опуклій області, що може бути задана системою нелінійних обмежень. Для розв’язання задачі побудовано модифікацію методу можливих напрямків.

Метою даного дослідження є розробка алгоритму розв’язання задачі розміщення об’єктів, кожен з яких може бути розкладений на взаємо-орієнтовані прямокутники. Кр итерій якості заданий дифер енційов аною функцією.

Побудова математичної моделі та алгоритму розв’язання задачі

Введемо такі позначення. Нехай F;, і = 1, m, - об’єкти, що необхідно розмістити, де m - кількість об’єктів. Для визначення кожного об’єкта Fi, і = 1, m розкла-РИ, 2006, № 1

демо його на mi прямокутників (Di1,Di2,....Dim). Кожен прямокутник Dij, і = 1, m, j = 1,mi має геометричні розміри Lij (lJ1, lij). Положення прямокутника визначається координатами його полюса Zij(§jj, §ij) [4]. Полюсом прямокутника будемо вважати його геометричний центр. В свою чергу, положення об’єкта Fi, і = 1, m визначається координатами свого полюса. Полюсом об’єкта Fi, будемо вважати полюс прямокутника D^, Zi1(^11, ^jj), який назвемо «базовим». Для кожного прямокутника Dij, i = 1, m, j = 1,mi , введемо параметр C^Cpcj), що визначає координати полюса прямокутника в рухомій системі координат, початок якої знаходиться в полюсі Zi1(^i1,£, j1) об’єкта Fi, i = 1,m, а осі - паралельні сторонам прямокутників. Тоді положення кожного

прямокутника Dy, і _ 1, m, j = 1, mi на області розміщення визначається координатами полюсів об’єктів Fi, і = 1, m, в основній системі координат таким чином:

= §£ + cij, і = 1,m, j = 1,mi , k = 1,2, (1)

де ^k1’k = 1,2 - координати полюса об’єкта Fi; k = 1,2 - координати полюса прямокутника Dij.

Очевидно, що для «базових» прямокутників

Ci1(cj1,ci21) = (0,0), і = 1m.

Отже, набір параметрів

(^1 ,і2), zij (^1, §2), cij (c ,c'2)}, і=1m, j=

повністю визначає розміри та положення усіх об’єктів Fi, і = 1,m. Параметри L^,^) та С^^), і = 1, m, j = 1,mi є константами, які задаються в умові задачі. їх значення впливає на форму та розміри об’єктів Fi .

Визначимо множину припустимих розв’язків G задачі оптимізації розміщення, що описується умовами взаємного неперетину об’єктів Fi, і = 1, m та невиходу їх за межі заданої опуклої області розміщення Q . Приклад припустимого розміщення об ’ єктів наведено на рис.1.

87

Для того щоб об’єкти F,Fk ,i ^ k не перетиналися, потрібно забезпечити неперетин прямокутників об’єкта Fi з прямокутниками об’єкта Fk . Умови неперетину прямокутників мають вигляд

5?-5k1

> l?+1?

> —----V

52-5k1

> , (k)

i = 1,m -1, k = i + 1,m, j = 1,mi , 1 = 1,mk .

Обмеження невиходу об’єктів за межі області Q побудовано так. Область Q - опукла. За означенням опуклої множини, якщо кінці відрізка належать їй, то й весь відрізок належить цій множині. Отже, прямокутник належить до опуклої області, якщо усі його вершини належать цій області. Для невиходу об’єкта F;, i є 1, m за межі області Q достатньо накласти обмеження на координати тільки тих вершин об’єкта, які є кутовими точками опуклої оболонки вершин прямокутників Djj, j = 1, m; . Вигляд та кількість обмежень належності об ’ єктів до о бласті розміщення залежать від форми області Q, від кількості та форми об’єктів F;, i = 1,m . В загальному випадку ці обмеження записуються так:

9k(Z11,Z1k,...,Z1m‘,....,Zmmm) < 0, k = 1, v , (3)

де 9k(Z11,Z12,...,Z1m‘,....,Zmm“) - неперервно-дифе-ренційовані та опуклі функції на опуклій множині X , що включає в себе множину G .

Умови (1 )-(3) визначають множину припустимих роз-в ’язків задачі. Кількість змінних в обмеженнях дорів-m

нює n = k£ ш;.

i=1

Вимірність побудованої системи обмежень можна зменшити.

Враховуючи (1), з системи обмежень задачі виключимо змінні, що відповідають координатам « небазових» прямокутників. В результаті отримаємо:

- умови неперетину об’ єктів:

i = 1, m -1, j = 1, mi , k = i + 1,m, 1 = 1,mk ;

- умови невиходу об’єктів Fi за межі області Q :

9k(Zu,Zk1,...,Zm1)<0, k = й, (5)

де 9k (Z11, Zk1,...,Zm1) - неперервно-диференційовані та опуклі на опуклій множині X, яка включає в себе множину припустимих розв’язків G.

Обмеження (4), (5) визначають множину припустимих розв’язків задачі з кількістю змінних, що дорівнює N = km.

88

З (4) випливає, що G - неопукла та може бути многозв’язною, незв’язною, з великою кількістю компонент зв ’язності.

Таким чином, маємо задачу умовної оптимізації

X(Z) ^ min, Z є G, (6)

де Z(Z11,Zk1,...,Zm1) - параметр розміщення; G-множина припустимих розв’язків, що визначається обмеженнями неперетину об’єктів (4) та невиходу їх за межі заданої опуклої області Q (5); %(Z) - неперер-вно-диференційована функція на опуклій множині X з G .

Для застосування методів умовної оптимізації необхідно, щоб множина припустимих розв’язків задачі була опуклою. Подамо множину припустимих розв’язків G задачі (6) у вигляді об’єднання опуклих підмножин

G = ^Gs, (7)

s=1

Ck

де r = 4“ [5], Gs - опуклі тдмножини.

Для цього розкриємо модулі в нерівностях (4). В результаті отримаємо сукупність лінійних нерівностей. Для визначення опуклих підмножин Gs використаємо підхід, що запропоновано у роботі [5].

Обмеження, що визначають опуклі підмножини Gs , запишемо у вигляді системи нерівностей

Фі (Z) < 0, i = 1^, (8)

де q - загальна кількість обмежень, що залежить від форми та кількості об’єктів F;, вигляду області Q .

Розв’язок вихідної задачі можна знайти так:

- розв’язати r підзадач оптимізації вихідної функції цілі, що мають вигляд

X(Z) ^ min, Z є Gs, s = 1,r; (9)

- з отриманих розв’язків підзадач (9) обрати розміщення з найменшим значенням функції цілі.

Підзадачі (9) є задачами умовної оптимізації диференційованої функції цілі на опуклій множині. Для їх розв’язання можна застосувати метод можливих напрямків [6]. Особливістю цього методу є те, що

k

напрямок спуску в точці Z визначається шляхом розв’язання допоміжної задачі лінійного програмування. В систему обмежень допоміжної задачі включаються градієнти лише « є -активних» обмежень, тобто обмежень, для яких виконується умова

-Єk ^i(Zk) < 0, (10)

де k = 0,1.... - номер ітерації; 8k > 0 - параметр методу; Zk - поточне наближення до розв’язку задачі.

В класичному методі для усіх можливих напрямків в точці Zk повинна виконуватися умова

^;(Zk),h) < y, y >-8k, І Є I(Zk, 8k), (11)

РИ, k006, № 1

де Фі(г) < 0 — обмеження задачі; I(Zk, є^) — множина номерів « є -активних» обмежень; h - можливий напрямок.

Вимога (11) зобов’язує пересуватися у напрямку віддалення від « є -активних» обмежень. В результаті обчислювальних експериментів встановлено, що накладання цієї умови приводить до «тремтіння» об ’ єктів, які знаходяться близько до межі множини припустимих розв’язків, тобто до великих часових витрат.

Для зменшення витрат часу на розв’язання підзадач розроблено модифікацію методу можливих напрямків, що побудована з врахуванням таких міркувань. Обмеження неперетину об’єктів підзадачі (9) задаються лінійними функціями. Якщо в « є -активному» обмеженні функція фі (Z) - лінійна, то для нього вимогу (11) можна послабити. Це пов’язано з тим, що вздовж межі, яка відповідає цьому обмеженню у напрямку h, що задовольняє умові

^(Zk),h) < 0, (12)

можна зробити як завгодно великий крок без порушення обмеження. Таким чином, при побудові системи обмежень допоміжної задачі лінійного програмування пропонується для усіх « є -активних» лінійних обмежень замінити умову (11) на (12). Така модифікація виключає «тремтіння» об’єктів, які знаходяться на малій відстані один біля одного. В результаті час розв’язання підзадач значно зменшується.

Кількість підмножин (7) і відповідно підзадач (9) з ростом кількості об’єктів збільшується дуже швидко, і для задачі розміщення шести та більше об’єктів розв’язати всі підзадачі за прийнятий час неможливо.

Серед підмножин (7) існують такі, що

Gs n Gp ^0 , Gs с G , Gp c G , s Ф p .

Тому пропонується застосувати спрямований перехід між підмножинами. Ідея модифікації методу можливих напрямків для використання спрямованого переходу між підмножинами полягає ось у чому. Множину можливих напрямків спуску в точці Zk звужують градієнти « є -активних» обмежень (10). Пропонується на кожній ітерації методу при виявленні « є -активного» обмеження фі (Zk) < 0 неперетину пари об’єктів заміняти його на обмеження ф* (Zk) < 0 неперетину цієї ж пари об’єктів, але по іншій координаті, якщо воно виконується та не є « є -активним». Така заміна приводить до переходу в іншу опуклу підмножину множини припустимих розв’язків, дозволяє розширити множину можливих напрямків спуску в точці Zk та зменшити кількість обмежень допоміжної задачі лінійного програмування.

Зазначені ідеї використано при побудові алгоритму розв’язання вихідної задачі (6).

Алгоритм модифікованого методу можливих напрямків для задачі оптимізації розміщення об ’єктів, що можна розкласти на прямокутники

1. k = 0. Обирається початкове розміщення

Z0 = йі1,Si21,S21-,Sf1,If1) є Gt С G, t є^г , параметри методу Є> 0, Є0 >є, 0 <у< 1.

2. Маємо k-те наближення: Zk, Sk >0, k = 0,1,...

2.1. Перевіряються обмеження, що задають умови взаємного неперетину об’єктів. Якщо для розміщення Zk обмеження фі (Zk) < 0 , що забезпечує неперетин прямокутників Dji,Dks, j ф k, задовільняє умові —sk < фі (Zk) < 0 , тобто обмеження фі (Zk) < 0 є « є -активним», то робиться перевірка: якщо для цієї пари

об’єктів Dji,Dks має місце умова ф*^) < 0 (обмеження їх неперетину по іншій координаті), причому ф* (Zk) < -Sk (тобто обмеження ф*(Zk) < 0 в точці Zk не є « є -активним»), то в системі обмежень підзадачі робиться заміна нерівності фі (Zk) < 0 на ф* (Zk) < 0 . Таким чином, відбувається перехід до іншої підмно-жини припустимих розв’язків.

2.2. Будується множина номерів « є -активних» обмежень задачі I(Zk,є^, для яких виконується умова -єk < фі (Zk) < 0 , і = 1,q .

2.3. Знаходиться вектор спуску. Для цього, розв’язується допоміжна задача лінійного програмування

X(h1,h2,- -,h2f,y) = У ^ тіп (Vx(Zk),h) < У

(Уфі^^К) < у, Уі є I(Zk, є k), якщо фі (Z) - нелінійна (Уфі^^К) < 0, Уі є I(Zk, єk), якщо фі (Z) - лінійна Ih^ < 1,і = 1,2f

(hk(hk,hk,...,h||f ),yk) - розв’язок допоміжної задачі. Якщо yk > —Sk, то: при єk < є обчислення припиняються, Zk приймається за розв’язок задачі, інакше, (Sk >є) Zk+1 = Zk, Sk+1 =ysk, k = k +1, здійснюється перехід до п. 2.

Якщо ж yk < -Sk, то hk - вектор спуску.

2.4. Пошук k + 1-го наближення. Zk+1 = Zk + Pkhk, Pk

знаходиться з умови Pk = argfin %(Zk +phk), де Bk-

0<P<Bk

максимально припустиме, при якому виконуються усі нерівності фі (Zk + Bkhk) < 0, і = 1,q системи обмежень підзадачі k = k +1, перехід до п.2.

Наведений алгоритм програмно реалізовано. Початкове наближення Z0 знаходиться методом штрафних функцій [7]. Крок Pk обчислюється методом найпростішого перебору одновимірної оптимізації [7].

РИ, 2006, № 1

89

На рис.2 наведено приклад розв’язання тестової задачі максимізації суми квадратів відстаней від полюсів прямокутників Dy, і = 1, m, j = , до фіксо-

ваної точки області x(xi,Х2) є Q, тобто

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

m mi .. .. .. ..

х(Z = Е£((Х1 “(^ + c1j))2 + (Х2 -(^2 + c1j))2) ^ max i=lj=l

Z є G .

Рис. 2. Початкове наближення (а), отримане розміщення (б)

Область Q має форму еліпса. Прямокутники, що належать одному об’єкту, позначено однаковою штриховкою. Загальна кількість прямокутників, з яких складаються об’єкти, - 32. Розв’язок задачі розміщення 10 об’єктів на машині з процесором AMD Athlon XP 2400+отримано за 11с. Зроблено ітерацій -440. Кількість переходів між підмножинами - 50.

Висновки

В результаті даного дослідження розроблено модифікацію методу можливих напрямків для задачі опти-

мізації розміщення об’єктів, які можна розкласти на прямокутники.

Запропонований алгоритм програмно реалізовано. Час, що витрачається на розв’язання задачі, залежить від кількості підзадач та від часу їх розв’язування. Кількість підзадач визначається кількістю та формою об’єктів. Найбільша швидкість розв ’язання підзадач досягається у випадку відсутності « є -активних» нелінійних обмежень.

Наукова новизна:

1. Побудовано нову модель задачі оптимізації розміщення об’єктів, кожен з яких може бути розкладений на взаємо-орієнтовані прямокутники.

2. Розроблено алгоритм розв’язання задачі з використанням запропонованої моделі.

Практичне значення: наведений алгоритм може бути використаний для розв’язання практичних задач опти-мізації розміщення об’єктів на опуклій області, в яких:

- критерій якості задано неперервно-диференційова-ною функцією;

- система обмежень, що визначає умови належності об’єктів до області розміщення, задана нерівностями, до складу яких входять опуклі, неперервно-диферен-ційовані функції.

Література: 1. Стоян Ю.Г., Новожилова М.В. Поиск локального экстремума функции цели на структуре линейных неравенств специального вида // Докл. АН Украины. Сер.А. 1988. №9. С. 82-84. 2. Яремчук С.І., Жовновсь-кий Д.О., Співак А.В. Модифікація методу умовного градієнту для розв’язання задач оптимального розміщення джерел фізичних полів // Вісник ЖІТІ, 1999. №9 / Технічні науки. С.248-253. 3. ЯремчукС.І., ШаповаловЮ.О. Модифікація методу можливих напрямків для задачі оптимі-зації розміщення // Вісник Хмельницького національного університету. 2005. №5. Ч.1, Т.2. С.146-151.4. Стоян Ю.Г., Гиль Н.И. Методы и алгоритмы размещения плоских геометрических объектов. Киев: Наук. думка, 1976. 248с. 5. Власенко О.В., Співак А.В., Яремчук С.І. Метод умовного градієнта для оптимального розташування джерел фізичних полів // Вісник ЖІТІ, 1998. №7 / Технічні науки. С.248-253 . 6. Васильев Ф.П. Численные методы решения экстремальных задач. М.: Наука, 1980. 518с. 7. Яремчук С.І. Введення в математичні методи дослідження операції. ЖІТІ, 2002. 300 с.

Надійшла до редколегії 14.03.2006

Рецензент: д-р техн. наук, проф. Панішев А.В.

Яремчук Світлана Іванівна, канд. фіз.-мат. наук, доцент кафедри ПЗОТ Житомирського державного технологічного університету. Наукові інтереси: екстремальні задачі, математичне моделювання. Адреса: Україна, Житомир, вул.Черняховського, 103, тел. (0412) 418-542.

Шаповалов Юрій Олександрович, доцент кафедри ПЗОТ Житомирського державного технологічного університету. Наукові інтереси: методи оптимізації, комп’ютерне моделювання. Адреса: Україна, Житомир, вул. Черня-ховського, 103, тел. (0412) 418-542.

90

РИ, 2006, № 1

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