MichaelCH Опубликовано: 11 ноября, 2015 Share Опубликовано: 11 ноября, 2015 Соглашусь, и перебирая значения КОНСТАНТ на своем же примере - выставляю 5 мм торцовка и 5 мм рез - получаю 1 единственный товарный обрезок 1916 мм... Да у меня туповатый алгоритм и программа в Excel реализована... но ведь работает же... и результат показал не хуже!!! У меня при данных настройках - ширина реза 5 и кромка 10 (по 5 с каждой стороны) получился полезный остаток 1970мм. Возникает вопрос, если Ваше оборудование позволяет раскраивать с шириной реза 5 и торцевой кромке 10, то зачем производить расчет при большем резе и большей кромке, ведь результат должен получится хуже (меньше полезный остаток)? Либо Ваша программа при увеличении реза и кромки может выдавать результат лучше? Но тогда это проблема алгоритма раскроя, реализованного в программе. Специально раскроил Ваши данные с разным размером ширины реза (от 5 до 11) и торцевой кромкой (от 0 до 10 с одной стороны, т.е. от 0 до 20 с двух сторон с шагом 2мм). Ни в одном из результатов при увеличении ширины реза или кромки результат не стал лучше. Все схемы во вложении P.S. Тоже раскраиваю в Excel. LinRaskrLP пример2.rar Цитата Ссылка на комментарий Поделиться на других сайтах More sharing options...
Dan-K Опубликовано: 14 ноября, 2015 Share Опубликовано: 14 ноября, 2015 Да как я и думал - ваш алгоритм явно круче ))) У меня программа считает явно менее элегантно и видимо из-за скорости ))) Но при этом из-за несовершенности алгоритма и склонности к быстрым решениям - она и реагирует на изменения констант куда сильнее... Я тут сводную табличку после цикла отсортировал: Мой вариант.zip Цитата Ссылка на комментарий Поделиться на других сайтах More sharing options...
MichaelCH Опубликовано: 15 ноября, 2015 Share Опубликовано: 15 ноября, 2015 Dan-K, для анализа ваших данных не хватает карт раскроя. Относительно моего алгоритма, сейчас реализовано два метода: Решение задачи о рюкзаке (сумма подмножеств) методом динамического программирования - вариант задачи, когда рюкзаков много. Данный метод показывает относительно хорошую скорость и приемлемое качество раскроя. Второй способ - применение линейного программирования (целочисленный симплекс метод). Данный способ не всегда применим, либо может очень долго считать, но находит оптимальное решение - наименьшее количество заготовок. Во вложении расчет данных от Dan-K с различной длиной заготовок от 4000 до 6500 с шагом 100 с применением обоих методов. Линейное программирование показывает результата лучше. Если есть желание, то можете раскроить данные своей программой при любом размере профиля и сравнить результаты. Для сопоставимости различных программ специально обнулил ширину реза и кромки, т.к. программы по-разному относятся к этим параметрам. CSP.rar Цитата Ссылка на комментарий Поделиться на других сайтах More sharing options...
MichaelCH Опубликовано: 15 ноября, 2015 Share Опубликовано: 15 ноября, 2015 В дополнение к качеству раскроя. Я для себя поставил следующие параметры оптимальности: 1. Использования как можно меньшего количества исходных заготовок (профиля) 2. Сделать как можно большим остаток у последней заготовки, при этом все остальные раскроить с минимальными отходами. Данный способ хорошо реализуется на большом профиле. Во вложении три варианта раскроя при размере профиля 4000. В первом варианте - использование 23 заготовок по 4000 и сохранение полезного остатка 3400 Во втором варианте - 23 заготовки, полезный остаток 2465 + 1387 = 3852 В третьем варианте - 24 заготовки, полезный остаток 2609*2 + 1387*2 = 7992 Вопрос: какой из этих вариантов лучше? Я склоняюсь к мнению, что первый, т.к. раскроить в последствии остаток 3400 легче с меньшими потерями,чем 2465+1387 и тем более 4000+3400 - это лучше, чем 2609+2609+1387+1387. Хотя во 2м и 3м варианте "полезный" остаток больше, чем в первом. LP 0x0 4000.rar Цитата Ссылка на комментарий Поделиться на других сайтах More sharing options...
smsinfo Опубликовано: 15 ноября, 2015 Share Опубликовано: 15 ноября, 2015 Скажем так, я не смотрел ваши остатки. Но судя по тому, что вы пишите, что в последнем варианте остались парные размеры, и использовалось чётное кол-во профиля, я думаю, что это был парный крой, а остальные были одиночными. Если это так и есть, то значит последний крой и лучший. Цитата Ссылка на комментарий Поделиться на других сайтах More sharing options...
MichaelCH Опубликовано: 16 ноября, 2015 Share Опубликовано: 16 ноября, 2015 Да, третий вариант - это раскрой в два профиля, но я не хочу обсуждать, что крой в два профиля лучше, чем в один, я хотел узнать, что лучше, получить меньше полезного остатка, но один, либо несколько маленьких, но суммарной длиной больше. Forus в 79 сообщении уже ответил на этот вопрос. Хотелось бы знать мнение других участников. smsinfo, Вы хотели устроить тест (дуэль) по раскрою, готов принять Ваш вызов. Можете приложить несколько различных вариантов данных для раскроя и указать свои результаты, либо раскроить уже опубликованные в данной теме тесты? Во избежание разночтений лучше ширину реза и торцевую кромку обнулить, таким образом не будет споров, что различные программы по-разному совмещают резы. Цитата Ссылка на комментарий Поделиться на других сайтах More sharing options...
MichaelCH Опубликовано: 19 ноября, 2015 Share Опубликовано: 19 ноября, 2015 Т.к. от smsinfo не получено данных для тестирования, то предлагаю любому желающему выложить данные (желательно реальный заказ из производства), для проведения тестирования. Считаю, что с помощью своего алгоритма линейного раскроя смогу найти решение не хуже (скорее всего лучше), чем это делают специализированные программы по раскрою. Цитата Ссылка на комментарий Поделиться на других сайтах More sharing options...
Dan-K Опубликовано: 23 декабря, 2015 Share Опубликовано: 23 декабря, 2015 Т.к. от smsinfo не получено данных для тестирования, то предлагаю любому желающему выложить данные (желательно реальный заказ из производства), для проведения тестирования. Считаю, что с помощью своего алгоритма линейного раскроя смогу найти решение не хуже (скорее всего лучше), чем это делают специализированные программы по раскрою. А алгоритм (прога) продается, бесплатно раздается или просто эксплуатируется в режиме похвастаться )))? Цитата Ссылка на комментарий Поделиться на других сайтах More sharing options...
MichaelCH Опубликовано: 26 декабря, 2015 Share Опубликовано: 26 декабря, 2015 А алгоритм (прога) продается, бесплатно раздается или просто эксплуатируется в режиме похвастаться )))? Продается, но т.к. уже получил замечание от модераторов за рекламу, то подробная информация в личке. Демо версию пока не реализовал, если сделаю - выложу бесплатно. 1 Цитата Ссылка на комментарий Поделиться на других сайтах More sharing options...
MichaelCH Опубликовано: 3 февраля, 2016 Share Опубликовано: 3 февраля, 2016 Ссылку на Demo-версию выложил здесь: http://www.excelworld.ru/forum/3-21304-1 1 Цитата Ссылка на комментарий Поделиться на других сайтах More sharing options...
MichaelCH Опубликовано: 13 мая, 2016 Share Опубликовано: 13 мая, 2016 (изменено) На текущий момент основной алгоритм линейного раскроя переписан на FreeBasic, что дало ускорение расчетов в несколько раз, поэтому повторно хочу предложить тестирование: предлагаю любому желающему выложить данные (желательно реальный заказ из производства), для проведения тестирования.Считаю, что с помощью своего алгоритма линейного раскроя смогу найти решение не хуже (скорее всего лучше), чем это делают специализированные программы по раскрою. Если есть примеры реальных данных с картой раскроя (или без), прошу выложить на форум. Изменено 13 мая, 2016 пользователем MichaelCH Цитата Ссылка на комментарий Поделиться на других сайтах More sharing options...
Рекомендованные сообщения
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.