Лінійний розкрій. Програма оптимізації розкрою. Управління діловими відходами

Програми для оптимізації розкрою матеріалів

Даний каталог містить посилання на кілька вітчизяних комп'ютерних програм для оптимізації розкрою матеріалів і на кілька публікацій на цю тему.

Метод оптимізації розкрою матеріалів грунтується на роботі "Розрахунок раціонального розкрою промислових матеріалів", 1951 рік, написаної радянськими вченими Л. В. Канторовичем і В. А. Залгаллером, в якій систематично викладені алгоритми лінійного програмування, а також, описано динамічне програмування для задачі про розкрої і комбінування його з алгоритмами лінійного програмування.

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

розкрій
програма призначена для автоматичного складання оптимальних карт розкрою листових і рулонних матеріалів,

наприклад, ДСП, МЛФ (при виготовленні меблів), скла або будь-яких інших листових або рулонних матеріалів. Дозволяє ефективно і швидко отримувати карти розкрою, що мають великий відсоток виходу. Платна, є демоверсія
сайт розробника
http://picaro.ru
Aстра Розкрий
програма призначена для оптимізації розкрою листових матеріалів (
деревостружкових плит, металу, скла і пластиків ). Астра Розкрій забезпечує швидке введення інформації про замовлення і матеріалах; автоматичне і ручне формування карт розкрою; повний облік мірних залишків і їх розкрій в наступних замовленнях; друк карт розкрою і специфікацій. платна
сайт розробника http://www.astrapro.ru Базис-Розкрій
програма автоматизованого створення карт розкрою листового матеріалу, що поєднує в собі оптимальність розташування контурів деталей прямокутної форми в заданих габаритах вихідного матеріалу з високою швидкістю розрахунку. Вона є складовою частиною комплексу Базис - Конструктор - Мобильщики.
Платна, є демоверсія
сайт розробника http://www.bazissoft.ru Cutting
програми сімейства CUTTING призначені для оптимального розкрою матеріалу на прямокутні або лінійні деталі. Програми можуть бути використані в деревообробному виробництві, виробництві меблів, рубки металу, різання скла і т.д. В основу програм покладено унікальний, високошвидкісний алгоритм, що дозволяє швидко провести розкрій з мінімальними відходами. Платна, є демоверсія
сайт розробника http://www.cuttinghome.com
Cutting Line
програма призначена для оптимального розкрою лінійних заготовок на лінійні відрізки різної довжини і може бути використана в деревообробній і целюлозно-паперовій промисловості, металообробці, швейному виробництві і т.д.
Платна, є демоверсія
сайт розробника http://www.cuttinghome.com

PaneCut - програма оптимізації розкрою листових і лінійних матеріалів, що дозволяє значно зменшити відсоток відходу використовуваних матеріалів.Платна, є демоверсія
сайт розробника http://www.vsgroup.ua
NCL - программа автоматичного розкрою листового матеріалу для деталей будь-якої конфігурації. Разоаботчік польових А. В. Безкоштовна
сайт програми http://freesoft.ru/ncl_v13
Optimum
програма оптимального розкрою матеріалів на прямокутні деталі.
Умовно-безкоштовна
сайт розробника http://wincad.ru

Базис-Мебельщик
комплекс взаємопов'язаних програм, що дозволяють ефективно організувати індивідуальне або серійне виробництво корпусних меблів на будь-яких підприємствах: від меблевих гігантів до індивідуальних підприємців. Склад системи: Базис-Мебельщик (базовий), Базис-Розкрій, Базис-Кошторис, Базис-Інтер'єр.

Платна, є демоверсія
сайт розробника http://www.bazissoft.ru
bCAD-Мобильщики
спеціалізований програмний комплект, призначений для проектування і підготовки виробництва корпусних меблів. Пакет включає в себе базовий модуль bCAD, доповнений специфічними інструментами. Додаток Розкрий, дозволяє автоматично створювати карту розкрою деталей отриманих моделей. При виборі матеріалу додаток автоматично пропонує список деталей з обраного матеріалу, присутніх в проекті. Задаються параметри використовуваних листів, направлення першої пила, кількість комплектів. Додаток дозволяє враховувати залишки розкрою, зберігати їх параметри і використовувати в подальшому.
сайт розробника http://bcad-ug.ru

У мережі неважко знайти і ін. Аналогічні програми в т.ч. безкоштовні

Теорія і практика автоматизованого розкрою матеріалів у виробництві корпусних меблів. Бунаков П.Ю., Каскевич Н.В, Коломна: ГОСГІ, 2010. 170 с.

Оптимізація розкрою матеріалів в машинобудуванні: навчальний посібник / С.І. Вдовін, О.Е. Джур. - Орел: ОДУ імені І. С. Тургенєва, 2016. - 45 с.

В.А. Скатерна "Оптимізація розкрою матеріалів у легкій промисловості" вид. Швейна промисловість. Легпромбитіздат, 1989,
- 144 с

Склав Абушенко Олександр Вікторович, окт. 2005, посилання звірені січ. 2017 р

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

Програма «bCUT» є продовженням розвитку модуля «Розкрий», що входить до складу САПР «bCAD Меблі». Вона не тільки увібрала в себе всі найкращі досягнення попередника, але і отримала ряд нових можливостей.

Якщо вас зацікавили можливості пакета «bCUT», ви можете завантажити. З цінами на «bCUT» ви можете ознайомитись в розділі ціни нашого сайту.

Швидке створення замовлення

«BCUT» дозволяє швидко. Функції клавіш оптимізовані для швидкого введення. Наприклад, розміри деталей, і кромленіе можна ввести однією рукою, використовуючи тільки додаткову цифрову клавіатуру. Тут же можна використовувати вбудований калькулятор для перерахунку числових величин.

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

імпорт заготовок

Є імпорт (читання даних) заготовок деталей разом з описом матеріалів і. Підтримується Excel 2003 і Excel 2007. Таким чином можна швидко приймати замовлення, набрані замовником вручну або зроблені в інших програмах.

Простота роботи з програмою

За зовнішнім виглядом і способам управління «bCUT» нічим не відрізняється від будь-якої сучасної програми. побудований на роботі з звичайними для Windows візуальними елементами, за якими клацають мишею або пером, а також вводять текст або числа з клавіатури. Піктограми чіткі і ясні. Кнопки забезпечені зрозумілими написами і спливаючі підказки. Тому ви легко зможете освоїти «bCUT».

На екрані одночасно видно все, що відноситься до завдання на розкрій. Особливо це зручно на сучасних дисплеях. Досить комфортна робота можлива навіть на моніторі ноутбука, з роздільною здатністю 1024 × 600. Є колірна підсвічування стану деталей в таблиці.

облік кромленія

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

Врахування особливостей обладнання

Всі особливості розкрійних або кромок заносять в банк даних. «BCUT» враховує максимальні довжини різів, товщини пив і звіси кромки. Можна врахувати і відмінності в пилі вздовж і впоперек. Заздалегідь задати значення для різної товщини пилки, які будуть враховані при автоматичному розрахунку припусків. Товщину пили і припуски задають з точністю до 0.1 мм.

Кількість верстатів в банку даних не обмежена. Можна поєднати в одному завданні розкрій на різних верстатах.

Висока швидкість розкрою

«BCUT» забезпечує високу швидкість розкрою. Це досягнуто за рахунок швидких алгоритмів і використання многопроцессорности сучасних комп'ютерів.

Алгоритм розкладки деталей оптимізований для роботи на багатоядерних процесорах, наприклад Intel Core2Duo. При оптимізації використовуються всі ядра процесора.

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

оптимізації

«BCUT» має простий і ясний. Є можливість і окремі карти, змінюючи при цьому методи оптимізації та / або додавати до завдання додаткові деталі.

Автоматичний розрахунок припусків заготовок

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

Проте, залишається можливість задати величину припуску вручну. Просто ввівши його значення, в тому числі з використанням вбудованого калькулятора.

Більш наочно робота автоматичних припусків показана у відеоролику. Розмір ~ 2 МБ.

зберегти замовлення

вихідні документи

Зручні, ясні вихідні документи: карти, зведені відомості, етикетки для деталей і ділових залишків. На картах розкрити використовується штрих-кодування. Є можливість налаштування бирок «під себе». Можна просто запам'ятати зображення карти в буфері і вставити як картинку, наприклад, в документ Word.

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

Мета роботи: Закріплення знань в області економіко-математичного моделювання, знайомство з методикою вирішення завдання раціонального розкрою матеріалів, заснованої на вирішенні оптимізаційної задачі лінійного програмування.

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

Завдання оптимального розкрою матеріалів - одні з перших завдань, до вирішення яких застосовувалися методи лінійного програмування. Вони полягають у визначенні найкращого способу розкрою матеріалу, що поступає, при якому буде виготовлено найбільшу кількість готових виробів в заданому асортименті або буде отримано найменшу кількість відходів.

Перша робота, присвячена вирішенню завдань, названих згодом завданнями лінійного програмування, з'явилася в 1939 р Це була книга Л.В.Канторовича "Математичні методи організації і планування виробництва". Поштовхом для її появи послужила завдання, поставлене перед Інститутом математики і механіки Ленінградського Державного університету лабораторією фанерного тресту. В інших галузях промисловості також успішно застосовувалися економіко-математичні методи оптимізації розкрою матеріалів. Так, ще в 1948 - 1949 рр. математичні методи розкрою були успішно застосовані на вагонобудівному заводі ім. Єгорова в Ленінграді, що дозволило знизити в кілька разів відходи при розкрої різних матеріалів.

Математична модель задачі.

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

У більшості випадків розкрій матеріалів на заготовки проводиться в певній пропорції, що забезпечує отримання комплекту заготовок (тобто кратно комплекту).

Завдання оптимізації розкрою матеріалів полягає в розробці таких варіантів розкрою, при яких отримують певну кількість заготовок в даному асортименті (різних видів) з мінімальними відходами.

Для складання математичної моделі задачі оптимального розкрою введемо такі позначення:

L - довжина матеріалу; S - площа поверхні листового або рулонного матеріалу; N - кількість одиниць вихідного матеріалу.

необхідно отримати m різних видів заготовок або довжиною L i , Або площею S i , де i - вид заготовки ( i \u003d 1, 2, ..., m ).

Відомо число заготовок i -го виду в виробі, тобто то число заготовок, яке необхідно для виробництва одного виробу - b i . Число комплектів виробів, що випускаються підприємством позначимо через k .


Розкрій матеріалу можна зробити n способами. відомо а ij - число заготовок i -го виду, що отримується j -м способом ( j \u003d 1, 2, ..., n ).

Кількість відходів, що отримується при розкрої одиниці вихідного матеріалу j -м способом - З j .

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

позначимо через x j кількість одиниць вихідного матеріалу, розкроєних j -м способом. знайти такі x j ³ 0 , Які задовольняють наступним обмеженням:

(Обмеження по кількості вихідного матеріалу)

(Обмеження по плану виробництва)

Стільки виходить заготовок i-го виду при першій-ліпшій нагоді розкрою. Виходячи з умови комплектності отримаємо такі обмеження за планом виробництва:

Сумарна величина відходів повинна бути мінімальною, тоді функція мети набуде вигляду:

Приклад розрахунків в завданню оптимального розкрою матеріалів.

З металевих прутків довжиною по 6 м кожен, наявних в кількості 100 шт. необхідно виготовити конструкцію, зображену на рис.1.

Див. Моделі лінійного програмування для вирішення задач розкрою.

Приклад №1. Продукція паперової фірми випускається у вигляді паперових рулонів стандартної ширини - по 2 метри. За спеціальними замовленнями споживачів фірма поставляє рулони і інших розмірів, для чого проводиться розрізування стандартних рулонів. Типові замовлення на рулони нестандартних розмірів наведені в табл.


Потрібно знайти такі поєднання різних варіантів розрізання стандартних рулонів, щоб надійшли замовлення повністю задовольнити з мінімальними втратами (відходами).
Розглянемо всі можливі варіанти розкрою стандартного рулону, відповідні дані наведемо в табл.
Ширина рулону (м) Варіанти розкрою рулону Мінімальна кількість рулонів
1 2 3 4 5 6
0,5 0 2 2 4 1 0 150
0,7 1 1 0 0 2 0 200
0,9 1 0 1 0 0 2 300
Відходи в м 0,4 0,3 0,1 0 0,1 0,2 -

Визначимо змінні:
X j - кількість стандартних рулонів, що розрізають по варіанту j, j \u003d 1, 2, 3,4,5, 6.
Обмеження безпосередньо пов'язані з вимогою забезпечити виготовлення необхідної кількості нестандартних рулонів. Використовуючи дані табл., Отримаємо:
2 Х 2 + 2 Х 3 + 4 Х 4 + Х 5 \u003d 150 - кількість рулонів шириною 0,5 м,
X 1 + Х 2 + 2 Х 5 \u003d 200 - кількість рулонів шириною 0,7 м,
X 1 + Х 3 + 2 Х 6 \u003d 300 - кількість рулонів шириною 0,9 м.

Вираз для сумарної величини втрат паперу (відходи) (в м) має вигляд
0,4Х 1 + 0,3 Х 2 + 0,1 Х 3 + 0,1 Х 5 + 0,2 Х 6.

Таким чином, математична модель в загальному вигляді має вигляд
min f (x) \u003d 0,4 X 1 + 0,3Х 2 + 0,1 х 3 + 0,1 х 5 + 0,2Х 6.
при обмеженнях:
2 Х 2 + 2 Х 3 + 4 Х 4 + Х 5 \u003d 150
Х 2 + Х 2 + 2 Х 5 \u003d 200
Х 2 + Х 3 + 2 Х 6 \u003d 300

Завдання про розкрої матеріалів

Дане завдання полягає в розробці такого плану, який забезпечує необхідний комплект виробів при мінімальних відходах (по довжині, площі, маси, вартості та ін.) При розкрої матеріалів або забезпечує максимальне число комплектів виробів. Приклад №2. Потрібно розробити оптимальний план розкрою стандартних листів стали, забезпечуючи вихід планового числа заготовок різного виду при мінімальних сумарних відходах, якщо відомо, що з партії листової сталі необхідно нарізати чотири види різних заготовок в кількості bi (i \u003d 1, 2, ..., 4) штук . Лист стали стандартних розмірів може бути розкроєний чотирма способами. Кожному можливого способу розкрою відповідає карта розкрою. З карт розкрою відомий вихід заготовок в штуках різних видів a ij (i \u003d 1, 2, ... 4; j \u003d 1,2, ..., 4), а також площа відходів cj (j \u003d 1, 2, ..., n) при розкрої одного листа стали по j-му способу розкрою. Яка кількість листів стали необхідно розкроїти тим чи іншим способом, щоб відходи були мінімальними?

Таблиця 3

види
заготовок

План-завдання по кількості заготовок (b 1)

Вихід заготовок (шт) різних видів
з карт розкрою (a ij)

1 2 3 4
1 240 1 4 0 1
2 200 1 0 4 0
3 120 1 0 0 3
4 140 1 1 0 3
Площа відходів, м 2
(C j)
1,4 0,1 2,1 0,1

Складемо економіко-математичну модель задачі. Позначимо через x j - кількість вихідного матеріалу (листів стали), які необхідно розкроїти по одному із способів j. Обмеження в задачі повинні відповідати плановому виходу заготовок різних видів. Цільова функція зводитися до знаходження мінімуму відходів при розкрої

F \u003d 1,4 · x 1 + 0,1 · x 2 + 2,1 · x 3 + 0,1 · x 4 → (min) ..
Обмеження щодо виходу заготовок i-го виду за всіма j способам розкрою:

Приклад №3. На розкрій (розпил, обробку) надходить матеріал одного зразка в кількості a одиниць. Потрібно виготовити з нього l різних комплектуючих виробів в кількостях, пропорційних числах b 1, b 2, ..., b l (умова комплектності). Кожна одиниця матеріалу може бути розкроєна n різними способами, причому використання i -го способу (i \u003d 1, 2, ..., n) дає a ik одиниць k-го вироби (k \u003d 1, 2, ..., l). Необхідно знайти план розкрою, що забезпечує максимальне число комплектів.
Складемо економіко-математичну модель задачі.
Позначимо через x i - число одиниць матеріалу, розкроюємо i-им способом, і x - число виготовляються комплектів виробів. Тоді цільова функція зводитися до знаходження

F \u003d x → (max),
при обмеженнях: за загальною кількістю матеріалу дорівнює сумі його одиниць, розкроюємо різними способами; на вимогу комплектності і не заперечності змінних.

Приклад №4. На підприємстві є колоди довжиною L м, які необхідно розрізати на заготовки довжиною l 1, l 2, l 3 м в кількості p 1, p 2, p 3 відповідно.
Необхідно скласти оптимальний план розкрою матеріалу, який забезпечує мінімальні відходи, за умови виконання плану по виходу заготовок. Вихідні дані наведені в таблиці.

завданнядовжинаРозміри заготовок, мКількість заготовок, шт.
l 1l 2l 3p 1p 2p 3
68 6,5 2,1 2,3 1,4 600 720 900

Рішення: Спочатку складемо математичну модель нашого завдання. Можливі варіанти розкрою і відходи при кожному з них запишемо у вигляді таблиці.
довжина заготовкиваріанти розкроюкількість заготовок
1 2 3 4 5 6 7
2,1 3 2 2 1 1 0 0 600
2,3 0 1 0 1 0 2 1 720
1,4 0 0 1 1 3 1 3 900
Залишок, м0,2 0 0,9 0,7 0,2 0,5 0

Позначимо через x i кількість колод, розрізаних по i-му варіанту (i \u003d 1..7). Тоді сумарний залишок відходів запишеться у вигляді лінійної функції:
Z \u003d 0,2x 1 + 0x 2 + 0,9x 3 + 0,7x 4 + 0,2x 5 + 0,5x 6 + 0x 7
При цьому повинні бути виконані вимоги виконання плану по кількості заготовок, тобто
3x 1 + 2x 2 + 2x 3 + x 4 + x 5 \u003d 600
x 2 + x 4 + 2x 6 + x 7 \u003d 720
x 3 + x 4 + 3x 5 + x 6 + 3x 7 \u003d 900

Таким чином, для вирішення поставленого завдання необхідно знайти minZ при обмеженнях. Оскільки minZ \u003d -max (-Z (x)), то замість завдання мінімізації функції будемо вирішувати завдання максимізації функції:
Z \u003d - (0,2x 1 + 0x 2 + 0,9x 3 + 0,7x 4 + 0,2x 5 + 0,5x 6 + 0x 7)

Приклад №5. Для пошиття одного виробу потрібно викроїти з тканини 6 деталей. На швейній фабриці були розроблені два варіанти розкрою тканини. У таблиці (розташованої нижче) наведено характеристики варіантів розкрою 10 м 2 тканини комплектність, тобто кількість деталей певного виду, які необхідні для пошиття одного виробу. Щомісячний запас тканини для пошиття виробів даного типу становить 405 м 2. В найближчий вечір планується пошити 90 виробів.
Побудувати математичну модель задачі, що дозволяє в найближчий місяць виконати план з пошиття з мінімальною кількістю відходів.

Таблиця - Характеристики варіантів розкрою відрізків тканини по 10м 2

варіант розкрою Кількість деталей, шт. / Відріз Відходи, м 2 / відріз
1 2 3 4 5 6
1 60 0 90 40 70 90 0,5
2 80 35 20 78 15 0 0,35
Комплектність, шт. / Виріб 1 2 2 2 2 2

Математична постановка задачі

змінні завдання
У цьому завданню шукані величини явно не вказані, але сказано, що повинен бути виконаний щомісячний план з пошиття 90 виробів. Для пошиття 90 виробів на місяць потрібно розкроїти строго певну кількість деталей. Крій проводиться з відрізків тканини по 10 м 2 двома різними способами, яке дозволяють отримати різне число деталей. Оскільки заздалегідь невідомо, скільки тканини буде розкроювати першим способом і скільки - другим, то в якості шуканих величин можна задати кількість відрізків тканини по 10м 2, розкроєних кожним із способів:
x 1 - кількість відрізків тканини по 10м 2, розкроєних першим способом протягом місяця, [відріз. / міс.];
x 2 - кількість відрізків тканини по 10м 2, розкроєних першим способом протягом місяця, [відріз. / міс.];

Цільова функція
Метою рішення задачі є виконання плану при мінімальній кількості відходів. Оскільки кількість виробів строго заплановано (90 шт. / Міс.), То цей параметр не описує ЦФ, а відноситься до обмеження, невиконання якого означає, що завдання не вирішена. А критерієм ефективності виконання плану служить параметр «кількість відходів», який необхідно звести до мінімуму. Оскільки при розкрої одного відрізу (10м 2) тканини по 1-му варіанту виходить 0,5 2 відходів, а по 2-му варіанту - 0,35 м 2 (див. Таблицю 1), то загальна кількість відходів при крої (ЦФ) має вид
L (x) \u003d 0.5x 1 + 0.35x 2 \u003d min,

обмеження
Кількість розкриємо тканини різними способами обмежується наступними умовами:

  • Повинен бути виконаний план з пошиття виробів, іншими словами, загальна кількість викроєних деталей повинно бути таким, щоб з нього можна було пошити 90 виробів на місяць, а саме: 1-го виду повинно бути як мінімум 90 і деталей інших видів - як мінімум по 180 (див. комплектність в таблицю).
  • Витрата тканини не повинен перевищувати місячного запасу на складі;
  • Кількість відрізків раскроенной тканини не може бути негативним.
Обмеження за планом пошиття пальто мають наступну змістовну форму записи.
(Загальна кількість деталей №1 викроєних по всіх варіантах) ≥ (90 штук);
(Загальна кількість деталей №2 викроєних по всіх варіантах) ≥ (180 штук);
(Загальна кількість деталей №6 викроєних по всіх варіантах) ≥ (180 штук);

Математично ці обмеження записуються у вигляді :
60x 1 + 80x 2 ≥90;
35x 2 ≥180;
90x 1 + 20x 2 ≥180;
40x 1 + 78x 2 ≥180;
70x 1 + 15x 2 ≥180;
90x 1 ≥180;

Обмеження по витраті тканини має такі форми запису:
змістовну
(Загальна кількість тканини, раскроенной за місяць) ≤ (405м 2)
математичну
x 1 + x 2 ≤405 / 10

Чи не негативність кількості розкроєних відрізків задається у вигляді
x 1 ≥ 0, x 2 ≥ 0

Таким чином, математична модель задачі має вигляд
L (x) \u003d 0.5x 1 + 0.35x 2 \u003d min [м 2 отх. / Міс.],
60x 1 + 80x 2 ≥90;
35x 2 ≥180;
90x 1 + 20x 2 ≥180;
40x 1 + 78x 2 ≥180;
70x 1 + 15x 2 ≥180;
90x 1 ≥180;
x 1 + x 2 ≤40,5
x 1 ≥ 0, x 2 ≥ 0

Приклад №6. Є 69 труб для опалювальної мережі по 1070 см кожна. Їх необхідно розрізати на труби по 130, 150 і 310 см. Знайти такий варіант розкрою надійшли труб, при якому відходи були б мінімальними.

Етап 1. Визначаємо варіанти оптимального розпилу труб.

варіанти розкрою 1 2 3 4 5 6 7 8 9 10 11 12 13
310 3 2 2 2 2 1 1 1 1 0 0 0 0
150 0 3 2 1 0 3 2 1 0 3 2 1 0
130 1 0 1 2 3 2 3 4 5 4 5 7 8
залишки 10 0 20 40 60 50 70 90 110 100 120 10 30

Етап 2.
Складемо економіко-математичну модель задачі. Позначимо через x j - кількість труб, які необхідно розпиляти по одному із способів j. Цільова функція зводитися до знаходження мінімуму відходів при розпилюванні:
10x 1 + 20x 3 + 40x 4 + 60x 5 + 50x 6 + 70x 7 + 90x 8 + 110x 9 + 100x 10 + 120x 11 + 10x 12 + 30x 13 → min

x 1 + x 3 + x 4 + x 5 + x 6 + x 7 + x 8 + x 9 + x 10 + x 11 + x 12 + x 13 \u003d 69

Відповідь: необхідно використовувати тільки другий варіант розпилу (нульові відходи)

Програма призначена для оптимізації розкрою профілю та інших довгомірних матеріалів (брус, колода, труба, підвіконня).
Використаний алгоритм "щільного укладання", тобто взятий виріб укладається на самий короткий залишок заготовки, на який вона поміщається. Якщо нікуди не поміщається, береться нова заготовка. Завданням оптимізації є знаходження послідовності виробів, при якій буде використано менше заготовок і буде більше довжина ділових обрізків. На першому такті, вироби розміщуються на хлистах у випадковому порядку. Виникає "початкова популяція". У процесі рішення, популяція мутує і розмножується, невдалі екземпляри гинуть, а кращі продовжують еволюцію. Все, як у тваринному і рослинному світі + штучний відбір.

Живе демо на сайті


старт

переваги

  • Окнософт: cutting забезпечує карти розпилу високої якості. Численні впровадження підтверджують реальний коефіцієнт обрізу не більше 1% при оптимізації партій від 30 контурів (~ 120 відрізків)
  • Для читання вихідних даних і запису результатів розкрою, програма використовує прості формати текстових файлів, що спрощує інтеграцію з обліковими системами, впровадженими у замовника
  • При необхідності, розкрій може виконуватися під Linux або OS X в браузері або Node.js з передачею параметрів через url, web-socket або об'єкти javascript

Алгоритми лінійного оптимізатора

У окнософт: Каттінг використаний генетичний алгоритм. Суть його ось у чому:
Назвемо кожне розподіл виробів по хлистів рішенням. Визначимо цільову функцію, що дозволяє порівнювати якість рішень. Сформуємо кілька довільних рішень, назвемо їх поколінням. Визначимо правила отримання наступного покоління. Примірники з кращого цільовою функцією передають більшу частину свого "генофонду", це наш "штучний відбір". Тепер залишається надати систему самої себе, нехай мутує і оптимізує результати розкрою
В процесі розробки випробовувався метод "Монте-Карло", коли наші "екземпляри" є випадковими і не залежать один від одного і "Мурашині алгоритми" (ACO- ant colony optimisation). Всі методи показали себе цілком працездатним, але генетичний алгоритм виявився трохи більш ефективним

варіанти поставки

Є два варіанти поставки модуля розкрою Окнософт: cutting - в складі комплексного вирішення Управління позамовний проізводствм і у вигляді окремого файлу. Взаємодія з розкрійної програмою при першому сценарії, повністю приховано від користувача. Оператор працює зі стандартними документами 1С:

  • На підставі замовлень покупців формується план виробництва
  • На підставі плану - змінні завдання зі списком продукції і необхідних матеріалів
  • Усередині завдання на виробництво відбувається оптимізація розкрою
  • В процесі оптимізації, програма забирає з незавершеного виробництва ділову обріз і поміщає в пористий склад новоутворені ділові обрізки
  • Змінне завдання вміє друкувати бланки розкрою при ручному виробництві або формувати файли для верстатів з ЧПУ
  • Так само, з змінного завдання друкуються етикетки для відрізаних виробів і схеми розкладки в вози і піраміди
  • На підставі завдань на виробництво формуються вимоги - накладні для передачі матеріалів в цех з урахуванням потреби та нормоупаковок

Програмний інтерфейс (API лінійного розкрою)

Файл вхідних даних - setup.ini, поміщається в папку з виконуваним файлом.
Файли вихідних даних - result.txt, resultproduct.txt і resultstick.txt - формуються в тій же папці.
Завантажити файли з демо-даними Окнософт: cutting можна за посиланням в кінці сторінки. У файлх використовуються такі ключові слова:

  • Outputvariant - структура вихідного файлу файлу. Можливі значення: tab, oknosoft, за замовчуванням oknosoft
    • У варіанті "oknosoft", формуються файли resultproduct.txt і resultstick.txt з інформацією про розміщення виробів на заготовках і утворилася обрізу
    • У варіанті "tab" виводяться п'ять значень, розділених символами "tab": довжина виробу, номер хлиста, довжина хлиста, номер різу і залишок заготовки
  • Algorithm - використовуваний алгоритм. Можливі значення: random, conservative, genetic, за замовчуванням genetic
    • Random- випадковий перебір варіантів
    • Conservative- екземпляри наступної ітерації походять від одного "батька"
    • Genetic- від двох батьків
  • Variation - мінливість, параметр алгоритмів "conservative" і "genetic". Чим вище, тим менше потомство "схоже" на батьків. За замовчуванням 1.
  • Generations - кількість ітерацій алгоритму, за замовчуванням 40000
  • Persons - кількість "екземплярів" в "популяції", кількість рішень використовуваних в одній ітерації. В алгоритмі "random" просто робиться generations * persons ітерацій з одним екземпляром (рішенням)
  • KnifeWidth - ширина пилки
  • StickLength - довжина нового хлиста
  • Products - довжина виробу
  • Scraps - довжина обрізка, використовуваного в розкрої
  • Wrongsnipmin - мінімальна довжина «поганого» образка
  • Wrongsnipmax - максимальна довжина «поганого» обрізка
    У результатах оптимізація не буде обрізків з довжиною між Wrongsnipmin і Wrongsnipmax

парний розкрій

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

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

Розкрій великого числа виробів

З одного боку, для досягнення високої якості оптимізації, на вхід програми має надходити значна кількість виробів різної довжини, щоб оптимізаторові було "що сортувати". З іншого, при дуже великих партіях, знижується ймовірність знаходження максимуму при фіксованому числі ітерацій перебору. Експерименти показали, що оптимальною є партія в 60 - 120 заготовок (що відповідає такту виробництва 30-60 виробів при парному розкрої). Якщо необхідно оптимізувати понад 120 заготовок, кращих результатів можна досягти, розділивши завдання на N частин і виконавши послідовні оптимізації для кожної частини. Обробка формування пачок завдань на виробництво вміє групувати продукції за видами профілю та підбирати в змінні завдання вироби з максимальною дисперсією, позбавляючи оператора від рутинної роботи по складанню виробничих документів

Завантажити приклади розкрою і документацію

  • Демо карт одинарного і подвійного розпилу: 60.01 Листи розкрою
  • Документація і приклади файлів:

Cutting Line - Програма для лінійного розкрою

Версія: 2.49


Розрядність: 32bit


Таблетка: вилікувано


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

Програма оптимального розкрою лінійних заготовок на деталі

У програмі реалізовані наступні функції і можливості:











В нашому прайсі представлені три продукти, пов'язаних спільною темою сортування і оптимізації:

  • Програма лінійного розкрою профілю і довгомірних матеріалів
  • Програма двовимірного розкрою скла, сендвічів, ДСП та інших листових матеріалів
  • Програма оптимізації маршруту для вирішення логістичних завдань

Поставка модулів розкрою можлива як в складі комплексного вирішення Окнософт: Управління позамовний виробництвом, так і у вигляді окремих програм. При виклику розкрійних програм з 1С, не потрібно імпорт - експорт даних в проміжні файли. Користувач працює в стандартному інтерфейсі, а всі тонкощі взаємодії 1С з зовнішніми оптимізаторами виконують обробки заповнення табличних частин. Для цілей обліку складських залишків, ділової обрізків і матеріалів у виробництві, використовуються стандартні документи і регістри типових конфігурацій 1С.

Лінійний розкрій (профіль, труба, колода)

Забезпечує підтверджений инвентаризациями відсоток обрізу

Живе демо на сайті

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

20000 р.

Розкрій скла і листових матеріалів

Формує карти розкрою найвищої якості. Забезпечує відсоток економії матеріалу, близький до теоретичної межі. На 10-12% перевершує популярні програми Opty-Way, MaxCut, PerfectCut, Cutting і ін. За такими показниками, як площа неділових залишків, загальна площа розкроюється матеріалу і кількість використаних цілих листів

Всі алгоритми двовимірного розкрою розроблені в ТОВ «Програми розкрою», Новосибірськ, розробник: Шиляєв Володимир Генріхович. "Окнософт" є офіційним дилером розробника і по субліцензійного договору має право, як продавати програму у вигляді окремого продукту, так і використовувати в складі наших розробок

40000 р.

Навіщо оптимізувати розкрій в програмі?

Багато замовників кажуть: "У мене працює хороший напіловщік. Він прекрасно кроїть скло і профіль в голові. В сміття потрапляють тільки трикутники."
Найчастіше, це правда. Разом з тим, одним із завдань керівника, є організація передбачуваного процесу, стабільність якого не залежить від геніальності виконавців. Програмна оптимізація розпилу на підставі плану виробництва - один із заходів, що наближає до цієї мети.

Якщо припустити, що людина може перебрати в голові комбінацій більше, ніж комп'ютер за той же відрізок часу, одержуваний при автоматичному розкрої коефіцієнт обрізу ~ 1%, вигладить привабливіше, ніж неконтрольований і некерований 1%, який може забезпечити Геній. Перекладвианіе завдань оптимізації на програму, може вивільнити додатковий час (1-2 години в день), які він витратить з користю для бізнесу.

Насправді, ситуація з обрізом на більшості підприємств гірше. У специфікації закладають коефіцієнти порядку 4-7% і якщо цех відпрацює з обрізом 3-5%, це вважається хорошим результатом. Зниження реального коефіцієнта обрізу на 3-5% - це 30-50 тисяч рублів, зекономлених на кожному мільйоні, витрачений на матеріали. А ще, це дасть можливість не закладати в планову собівартість зайві рублі і запропонувати покупцеві більш вигідні ціни.

Завдання оптимального витрачання матеріалів складається з декількох частин

Складський облік мірних матеріалів

Залежно від особливостей бізнесу, клієнти використовують кілька схем обліку матеріалів:

  • На підставі плану виробництва формуються вимоги - накладні із зазначенням продукції. Видача додаткових матеріалів (не вистачило) відбивається окремими документами. Вказівка \u200b\u200bпродукції в цих документах - бажано, але не є необхідною умовою. В цьому випадку, в цех видаються тільки ті матеріали, які є в специфікаціях, що випускається сьогодні продукції і тільки в потрібній кількості. Недоліком даного підходу можна назвати необхідність оформляти більше документів і відсутність запасу матеріалів на ділянках (може, це гідність?)
  • Вимоги - накладні формуються асинхронно, без прив'язки до плану виробництва на підставі заявок майстрів. Такий підхід дозволяє отримати "живий склад" при мінімальних операторських витратах комірника, але не захищає від перевитрати матеріалів. Вся відповідальність за відповідність витрат специфікаціям, лежить в цьому випадку на майстрах і робітників. План-фактний аналіз собівартості, покаже відхилення, але може виявитися пізно

Облік ділової обрізу

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

взаємодія виконавців

Приймаючи рішення про використання оптимізатора розкрою, необхідно врахувати:

  • При автоматичному розкрої неможливо організувати зварювання (збірку) виробів "з - під пили", так як відрізки, що відносяться до одного виробу будуть "розкидані" по всій карті оптимізації
  • Удлінняется цикл виробництва, потрібно організувати пул для зберігання заготовок. Компромісом є розкрій партіями по 30 - 50 виробів. При цьому досягаються високі показники обрізків і виходить рівномірна завантаження ділянок зварювання і фурнітури
  • Знижується оперативність, з якою цех може відреагувати на зміни плану. Якщо менеджеру потрібно вклинитися в сьогоднішній план новий виріб, це погіршить результати оптимізації

Програма для лінійного розкрою

Версія: 2.49
Розробник: Шибаєв Юрій Анатолійович Україна, м Черкаси
Сайт розробника: http://www.cuttinghome.com/
Розрядність: 32bit
Сумісність з Windows 7: так
Мова інтерфейсу: Англійська + Російська
Таблетка: вилікувано
Системні вимоги: Мінімальні
Опис: Програма CUTTING призначена для оптимального розкрою матеріалу на лінійні деталі. Програма можуть бути використані в деревообробному виробництві, виробництві меблів, рубки металу, різання скла і т.д. В основу програм покладено унікальний, високошвидкісний алгоритм, що дозволяє швидко провести розкрій з мінімальними відходами.



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

Виняткова простота - це особлива риса програми Astra S-Nesting. Це незвично для професійної програми, але ми спеціально доклали зусиль, щоб рішення всіх задач від формування замовлення до редагування карт розкрою і призначення маршруту вирізки було інтуїтивно зрозуміло. В результаті це забезпечує швидке впровадження і успішну експлуатацію.

завантажити

Детально про програму Astra S-Nesting

Імпорт з CAD / CAM

Імпорт деталей виконується з DXF-файлів. Для імпортованих деталей вказуються властивості: найменування матеріалу, товщина, кількість і номер креслення. Всі властивості деталей можна змінити після імпорту. Замовлення може містити деталі різної товщини і матеріалів - програма автоматично сортує деталі на групи спільного розкрою.

оптимізація розкрою

Швидкий автоматичний розкрій забезпечує високий коефіцієнт використання матеріалу. Якщо потрібно, карти розкрою можна відредагувати вручну. Для цього програма пропонує зручні інструменти: переміщення деталей із заданим кроком, до упору і вільне переміщення мишею; поворот деталей на заданий і довільний кут, запаралелювання крайок деталей; команди масштабування; можливість відміни і затримки команд та ін.

Розрахунок маршруту вирізки

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

Друк звітів з розкрою

Для замовлення формується комплект звітів, що включає специфікації і ескізи карт розкрою. Шаблони звітів в Astra S-Nesting настроюються! Це означає, що ви можете змінювати їх самостійно під прийняті на вашому підприємстві форми. Будь-який звіт можна експортувати в Excel.

Інтеграція з CAD / CAM

Один з ключових принципів, який підтримується в програмі Astra S-Nesting - це інтеграція з іншими системами CAD / CAM. Дані, які готує і зберігає ваша САПР можна зберегти як замовлення для програми Astra S-Nesting і отримати назад результати розрахунку. Програма забезпечує запуск з командного рядка, автоматичний імпорт даних, розкрій замовлення, і експорт результатів назад для обробки у зовнішній системі.