Бенчмарки оптимизатора раскроя
Мы публикуем цифры, на которых работает оптимизатор, вместо того чтобы просить поверить маркетинговому заявлению на слово. Каждая задача ниже сгенерирована из фиксированного зерна, решена тем же движком, который работает на этом сайте, и сопоставлена с тем, как этот же список раскроя выполнялся бы вручную.
Почему мы это публикуем
Оптимизаторы раскроя все как один обещают экономию материала. Почти никто не говорит, сколько именно, на каких задачах и по сравнению с чем. Такие заявления невозможно проверить. Эта страница даёт вам набор задач, определение базового сценария, зерно генератора и исходные результаты — вы можете воспроизвести всё сами и спорить с нами по существу, а не в общих словах.
Методика
Набор задач
Десять профилей материалов, взятых из реальных форматов поставки: хвойный пиломатериал 6 м, алюминиевый профиль 6,5 м, арматура 12 м, плинтус 2,44 м, стальная труба 6 м, МДФ 2440 × 1220, фанера 2500 × 1250, берёзовая фанера 1830 × 920, листовая сталь 3000 × 1500 и полированное стекло 3210 × 2250. Каждому профилю соответствует одинаковое число сгенерированных задач — от четырёх до двенадцати различных типоразмеров деталей в каждой, с реалистичными количествами, пропилом и обрезкой кромки.
Базовый сценарий: ручной раскрой
Сравнение идёт не с другим оптимизатором, а с тем, что происходит без него. Базовый сценарий берёт детали в том порядке, в каком они записаны в списке, заполняет текущий хлыст или лист и берёт новый, как только очередная деталь не помещается. Без сортировки, без поворота, без анализа наперёд. Именно так список раскроя обычно выполняется за верстаком.
Метрики
Отходы — это доля израсходованного материала, ушедшая в обрезки, включая частично использованный последний хлыст или лист; для обеих сторон считается одинаково. Единицы материала — реально израсходованные хлысты или листы. Время решения — астрономическое время только вызова решателя, замеренное на обычном ноутбуке; решатель работает в вашем браузере, поэтому в очереди на сервере ничего не стоит.
Что исключено
Задачи, в которых движок не может разместить все детали, исключаются с обеих сторон, а не засчитываются как выигрыш. Сгенерированные задачи получают материал с запасом, чтобы ни один из методов не был в дефиците. Ничего не настраивается под отдельный профиль: одни и те же настройки решателя работают на всех десяти.
Результаты линейного раскроя
Хлысты, трубы, профили и погонаж, раскраиваемые по длине из стандартных длин.
| Материал | Задачи | Отходы NestingCalc | Отходы при ручном раскрое | Снижение отходов |
|---|---|---|---|---|
| Softwood 6 m | 40 | 8,4% | 17,7% | 52% |
| Aluminium 6.5 m | 40 | 7,6% | 13,9% | 45% |
| Rebar 12 m | 40 | 7,5% | 17,8% | 58% |
| Skirting 2.44 m | 40 | 8,7% | 16,6% | 48% |
| Steel tube 6 m | 40 | 7,9% | 15,3% | 48% |
| Все профили | 200 | 7,9% | 16,7% | 53% |
297 хлыстов сэкономлено по всему набору задач (9,1%) · 157/200 задач решено с меньшим числом единиц материала
Результаты листового раскроя
Панели, раскладываемые на целых листах плиты, металла или стекла. Укладка листов — задача сложнее линейного раскроя, и цифры это показывают: набор не связанных между собой прямоугольников близок к худшему случаю для любого алгоритма раскроя.
| Материал | Задачи | Отходы NestingCalc | Отходы при ручном раскрое | Снижение отходов |
|---|---|---|---|---|
| MDF 2440 × 1220 | 40 | 33,1% | 45,9% | 28% |
| Plywood 2500 × 1250 | 40 | 33,1% | 44,9% | 26% |
| Birch ply 1830 × 920 | 40 | 35,1% | 47,9% | 27% |
| Steel 3000 × 1500 | 40 | 35,0% | 46,6% | 25% |
| Float glass 3210 × 2250 | 40 | 28,5% | 45,3% | 37% |
| Все профили | 200 | 32,1% | 45,8% | 30% |
300 листов сэкономлено по всему набору задач (19,5%) · 171/200 задач решено с меньшим числом единиц материала
Скорость
Решатель работает локально в вашем браузере: ничего не загружается на сервер, ничего не стоит в очереди и нет лимитов бесплатного тарифа, о которые можно удариться.
| Метрика | Медиана | 95-й перцентиль | Самая медленная задача |
|---|---|---|---|
| Время решения, линейный раскрой | 0,05 ms | 0,20 ms | 0,74 ms |
| Время решения, листовой раскрой | 0,03 ms | 0,32 ms | 0,66 ms |
Чем NestingCalc отличается от других оптимизаторов раскроя
Экономия материала — лишь часть выбора. Большинство оптимизаторов раскроя — подписочные продукты, ограничивающие бесплатный тариф числом деталей или задач в день, и ни один из четырёх ниже не публикует Markdown-версию своих страниц и MCP-сервер для ИИ-ассистентов. Вот место NestingCalc в этом ряду.
| Возможность | NestingCalc | CutList Evolution | OptiCutter | SmartCut.pro | CutList Optimizer |
|---|---|---|---|---|---|
| Ограничения бесплатного тарифа | без ограничений | 40 | бесплатный тариф | не публикуется | 5 / 24 h |
| Платные тарифы | нет | 150 – 2000 | €9 – 99 | $2.50 – 779 | несколько уровней |
| Языки интерфейса | 19 | 1 | 11 | 21 | несколько |
| Линейный и листовой раскрой | ✓ | ✓ | ✓ | ✓ | ✓ |
| Калькуляторы для деревообработки (Hoppus, JAS, сушильная камера, EMC, усушка) | 16 | 0 | 0 | 0 | 0 |
| Markdown-версия каждой страницы для ИИ-агентов | ✓ | — | — | — | — |
| MCP-сервер для ИИ-ассистентов | ✓ 32 | — | — | — | — |
| Опубликованные воспроизводимые данные бенчмарков | ✓ | только статьи | — | — | — |
| Настройка ширины пропила (kerf) | ✓ | ✓ | ✓ | ✓ | ✓ |
| Блокировка поворота / направления волокон для каждой детали | ✓ | ✓ | не публикуется | не публикуется | ✓ |
| Кромление (кромочная лента) | ✓ | ✓ | не публикуется | не публикуется | ✓ |
| Повторное использование обрезков (учёт остатков) | только линейный раскрой | ✓ | не публикуется | ✓ | не публикуется |
| Метки деталей и PDF-карты раскроя | печать из браузера | ✓ | ✓ | ✓ | ✓ |
| Сохранённые проекты и история планов | ✓ | ✓ | ✓ | ✓ | ✓ |
Сведения о конкурентах взяты из открытых страниц самих поставщиков 31 августа и повторно проверены 10 сентября 2026 года; если не указано иное, описывается базовый тариф. Тарифы и ограничения меняются — перед решением сверьтесь со страницей поставщика.
Замечание об ИИ-ассистентах
У каждой страницы этого сайта есть Markdown-двойник по тому же адресу с добавкой /index.md, все они перечислены в llms.txt, а все 29 калькуляторов доступны как инструменты на публичном MCP-сервере. Это сделано намеренно: когда кто-то спрашивает у ИИ-ассистента, сколько досок нужно для задачи, ассистент может прочитать методику и вызвать калькулятор вместо того, чтобы гадать. Мы не блокируем ИИ-краулеры: лучше, чтобы нас цитировали вместе с методикой, чем не цитировали вовсе.
Как воспроизвести эти цифры
Бенчмарк — это тест в репозитории, а не слайд в презентации. Склонируйте репозиторий, запустите приведённую ниже команду, и она заново сформирует ровно тот набор данных, который показывает эта страница: то же зерно, те же задачи, те же результаты. Пороговые значения качества проверяются в этом тесте автоматически, поэтому регрессия ломает сборку, а не тихо меняет страницу.
BENCH_WRITE=1 pnpm --filter @cutting/engine test Вопросы
Независим ли этот бенчмарк?
Нет. Мы его написали, мы его запускаем, и он измеряет наш собственный решатель. Именно поэтому зерно, генератор, определение базового сценария и исходные данные опубликованы полностью: вам не нужно верить нам на слово — вы можете запустить всё заново и проверить. Любое непроверенное число от любого вендора, включая нас, считайте заявлением, которое надо проверить, а не фактом.
Почему сравнение с ручным раскроем, а не с другими оптимизаторами?
Потому что это честное сравнение, которое мы действительно можем опубликовать. Массовый запуск конкурирующих подписочных продуктов ради их оценки означал бы обход их лимитов бесплатного тарифа, а любой результат оказался бы снимком версии, которую мы не контролируем. Ручной раскрой — тот метод, который большинство людей реально заменяет, и его можно описать достаточно точно, чтобы вы могли его воспроизвести. Остальную часть сравнения закрывает таблица возможностей выше.
Почему отходы при листовом раскрое намного выше, чем при линейном?
Причины две. Раскрой не связанных между собой прямоугольников близок к худшему случаю для любого алгоритма упаковки, а генератор специально выдаёт смешанные размеры, а не повторяющиеся размеры деталей реального мебельного заказа. Кроме того, частично использованный последний лист полностью считается отходом. Реальные заказы с повторяющимися деталями раскладываются заметно лучше; здесь важно сравнение с базовым сценарием, а не абсолютная цифра.
Находит ли оптимизатор математически оптимальный план?
Нет, как и вообще всё, что можно мгновенно запустить в браузере. Задача раскроя NP-трудна: доказательство оптимальности плана требует экспоненциального времени с ростом числа деталей. Движок использует проверенные эвристики — размещение самой крупной детали первой с выбором наилучшего места для длин и полочную укладку для листов; они дают результат, близкий к оптимальному, выполняются за доли миллисекунды и ведут себя стабильно от запуска к запуску.
Открыть калькулятор линейного раскроя Открыть калькулятор раскроя листов Практические примеры