1D vs 2D optimalizace řezů: Rozdíly, použití a algoritmy
Optimalizace řezů se dělí do dvou základních kategorií podle toho, v kolika rozměrech díly umisťujete. Jednorozměrná (1D) optimalizace řeší řezání délek — tyče, trubky, profily, lišty. Dvourozměrná (2D) optimalizace řeší rozložení obdélníkových dílů na ploché desky. Obě kategorie sdílejí stejný cíl: minimalizovat odpad. Liší se ale ve vstupních datech, algoritmech i praktickém použití.
Co se naučíte:
- Jak funguje 1D optimalizace a kde se používá
- Jak funguje 2D optimalizace a jaké přidává proměnné
- Který typ potřebujete pro svůj materiál a stroj
- Jaké algoritmy za každým typem stojí
Co je 1D optimalizace řezů
Jednorozměrná optimalizace pracuje s jediným rozměrem — délkou. Máte tyče, trubky nebo profily o standardní délce (např. 6000 mm) a potřebujete z nich nařezat kusy o různých délkách.
Typické použití:
- Hliníkové profily pro okna a dveře
- Ocelové trubky a tyče pro zábradlí, konstrukce
- Dřevěné lišty a sokly
- Plastové profily a kabelové žlaby
- Textilní role řezané na délku
Vstupní data jsou jednoduchá: délka skladového materiálu, seznam požadovaných délek s množstvím a šířka prořezu. Algoritmus najde rozložení, které spotřebuje nejméně tyčí.
Jednoduchost vstupů ale neznamená triviální úlohu. Skutečný rozdíl mezi optimalizátorem a tabulkou se u lineárního materiálu ukáže tehdy, když máte na skladě tyče různých délek — pár celých od dodavatele a hromadu kratších zbytků z minulých zakázek. Zakázka se tím mění v otázku, kterou tyč načít jako další, a to je rozhodnutí, které solver udělá lépe než člověk jdoucí po seznamu shora dolů. Krátký díl uříznutý z celé tyče znehodnotí materiál, který bude jinde chybět.
Proto se vyplatí zadávat zbytky jako dostupný skladový materiál a nenechávat je mimo výpočet. Optimalizátor pak sáhne po nové tyči teprve tehdy, když se zakázka do zbytků nevejde — a to je přesně ten okamžik, kdy se má objednávat.
Co je 2D optimalizace řezů
Dvourozměrná optimalizace přidává druhý rozměr — šířku. Díly jsou obdélníky (délka × šířka), které se umisťují na ploché desky. To přináší řádově víc kombinací a dalších proměnných:
- Rotace dílů — díl 800×500 mm lze umístit i jako 500×800 mm (pokud to dovolí dekor)
- Směr vláken — u dekorovaných desek omezuje rotaci
- Olepení hran — korekce rozměrů o tloušťku ABS pásky
- Typ řezu — guillotinový (průchozí řezy) vs volný (libovolné umístění)
Typické materiály pro 2D optimalizaci: laminované DTD (Kronospan, Egger, Kaindl), MDF, překližka, sklo, kovové plechy, plastové desky.
Přímé srovnání
| Vlastnost | 1D optimalizace | 2D optimalizace |
|---|---|---|
| Rozměry dílu | Jen délka | Délka × šířka |
| Typ materiálu | Tyče, trubky, profily | Desky, plechy, tabule |
| Rotace dílů | Neaplikovatelné | Ano (s ohledem na vlákna) |
| Směr vláken | Neaplikovatelné | Zásadní u dekorů |
| Olepení hran | Ne | Ano |
| Typ řezu | Pouze přímý | Guillotinový nebo volný |
| Složitost výpočtu | Nižší | Výrazně vyšší |
| Typický odpad | 5–12 % | 8–15 % |
Řádek o složitosti výpočtu si zaslouží vysvětlení, protože rozdíl mezi oběma úlohami není postupný, ale zásadní. Jednorozměrná úloha musí určit jedinou věc: pořadí dílů po délce tyče. Dvourozměrná musí určit tři — polohu dílu na desce, jeho otočení a pořadí samotných řezů. Každá z těch tří proměnných násobí prostor možností, který je nutné prohledat.
K tomu přistupuje omezení, které v 1D nemá obdobu. Na formátovací pile musí každý řez vést od hrany k hraně přes celý zbývající kus, takže řada uspořádání, která by na papíře vyšla úsporněji, je fyzicky neproveditelná. Optimalizátor tedy neprohledává všechna rozložení, ale jen ta, která z desky skutečně vyřežete — a rozdíl mezi oběma množinami není zanedbatelný.
Algoritmy za 1D optimalizací
Jednorozměrný problém řezání je algoritmicky jednodušší, ale stále NP-těžký. Nejčastější přístupy:
First Fit Decreasing (FFD) — seřadí díly od nejdelšího po nejkratší a každý umístí na první tyč, kde se vejde. Jednoduchý, rychlý, ale ne vždy optimální.
Column generation — matematický přístup z lineárního programování. Generuje „sloupce” (možná rozložení na jedné tyči) a hledá kombinaci sloupců s nejmenším počtem tyčí. Přesnější, ale výpočetně náročnější.
Genetické algoritmy — simulují přirozený výběr. Vytvoří populaci náhodných rozložení, kříží a mutují je přes generace a postupně konvergují k lepšímu řešení.
Algoritmy za 2D optimalizací
Dvourozměrný problém přidává vrstvu: díly se musí vměstnat na plochu, ne na linku. Hlavní přístupy:
Bottom-left (BL) — umisťuje díly co nejvíc dolů a doleva. Jednoduché, rychlé, ale často nechává mezery.
Shelf algorithms — rozdělí desku na „police” (vodorovné pruhy) a do každé police umisťuje díly. Odpovídá guillotinovému řezání na formátovací pile.
Genetické a hybridní algoritmy — kombinují heuristiky s evolučním přístupem. Testují tisíce rozložení a postupně zlepšují výsledek. CutOptim genetický algoritmus nepoužívá — prohledá více strategií polic a sloupců v různém pořadí dílů a s různým povolením rotace a ponechá nejlepší nalezený rozklad.
Simulated annealing — inspirováno metalurgickým žíháním. Postupně snižuje „teplotu” a s ní pravděpodobnost přijetí horších rozložení, čímž konverguje k blízkému optimu.
Kdy potřebujete 1D a kdy 2D
Volba je jednoduchá a závisí na materiálu:
Potřebujete 1D, pokud řežete:
- Tyče, trubky, profily na délku
- Role materiálu (textil, fólie, papír)
- Řezivo a hranoly — délkové přířezy
Potřebujete 2D, pokud řežete:
- Deskový materiál (DTD, MDF, překližka)
- Kovové plechy a tabule
- Skleněné tabule
- Plastové desky
Některé projekty vyžadují obojí. Výroba kuchyně zahrnuje 2D řezání desek pro korpusy a 1D řezání hliníkových profilů pro sokly. CutOptim podporuje oba režimy.
Otázka, jestli lze na tyče a trubky pustit 2D optimalizátor, má odpověď „technicky ano, prakticky bez užitku”. Tyč zadáte jako dlouhý úzký obdélník a plán vyjde, jenže packer utratí práci na hledání polohy v šířce, kterou u zakoupeného profilu stejně nikdo nemění. Výsledek navíc dostanete jako plošný diagram, který se u pokosové pily čte podstatně hůř než prostý seznam délek v pořadí řezání.
Kam patří řezivo — do 1D, nebo do 2D?
Do 1D, dokud kupujete hotový průřez. Do 2D ve chvíli, kdy si šířku teprve vyřezáváte.
Řezivo je nejčastější hraniční případ, protože se dá číst obojím způsobem. Když si přivezete hranoly 50 × 100 mm v délkách 4 m a potřebujete z nich nařezat krokve, průřez je daný a jediné, co rozhodujete, je dělení po délce. To je učebnicová jednorozměrná úloha, i když je materiál trojrozměrný.
Jakmile ale kupujete neomítané fošny nebo široké lamely a šířku dílů si teprve vyřezáváte, vstupuje do hry druhý rozměr a úloha se blíží deskové. V praxi se přesto jako plnohodnotné 2D nepočítá, protože fošna nemá po celé délce jednotnou použitelnou šířku — obsahuje suky, obliny a trhliny. Rozvržení tedy nakonec dělá člověk podle toho, co na konkrétním kuse vidí, a software slouží spíš k evidenci než k rozhodování.
Stejná dvojznačnost platí pro pruhy vyřezané z desky. Když z laminované desky řežete úzké pruhy na police nebo na zástěnu, je to formálně 2D úloha, protože pruh má šířku i délku. Rozumnější je ale zadat ji dvoustupňově: 2D optimalizací rozřežete desku na pruhy a délkové dělení pruhů pak řešíte jako 1D. Odpovídá to i tomu, jak se skutečně řeže — nejdřív podélné řezy, pak příčné.
Vodítko je proto jednoduché: rozhoduje počet rozměrů, které určujete vy, ne počet rozměrů, které materiál má. Pokud jeden z nich už určil dodavatel, je vaše úloha jednorozměrná.
Kombinace 1D a 2D v praxi
U truhlářského projektu typicky pracujete s oběma typy:
- 2D režim pro laminované desky — bočnice, police, dvířka, dna
- 1D režim pro lišty, sokly a hrany — ABS pásky, krycí lišty, úchytové profily
Oddělte materiály do dvou samostatných optimalizačních běhů. Výstupem jsou dva plány řezání: jeden pro formátovací pilu (2D), druhý pro pokosovou nebo stolní pilu (1D).
Tip: Pokud řežete desky výhradně na formátovací pile s průchozími řezy, nemusíte nic nastavovat — 2D optimalizace v CutOptim generuje guillotinový plán vždy. Výsledek tak přímo odpovídá tomu, jak na pile řežete — žádné přesouvání středních dílů.
Vyzkoušejte optimalizaci na svém seznamu řezů
Bez registrace · 229 Kč/měs. vč. DPH
Optimalizovat zdarma