Rexther Опубликовано: 11 января, 2014 Share Опубликовано: 11 января, 2014 Программа линейного раскроя должна ... Вот. Вот именно это, на мой взгляд, и следует определить. ЧТО именно должна уметь делать программа раскроя. Причем по 2-м направлениям: алгоритмы именно ОПТИМИЗАЦИИ; опции внутренне логистики компании. А после того как мухи будут отделены от котлет можно и сравнивать. Потому как будут заданы краевые условия ... Цитата Ссылка на комментарий Поделиться на других сайтах More sharing options...
Forus Опубликовано: 11 января, 2014 Автор Share Опубликовано: 11 января, 2014 Если программа будет супер распрекрасной для логистов, но при этом будет давать оптимизацию на 5% больше конкурентных продуктов, то напрашивается логический вывод - а зачем она нужна? Цитата Ссылка на комментарий Поделиться на других сайтах More sharing options...
Casper Опубликовано: 11 января, 2014 Share Опубликовано: 11 января, 2014 Внезапно вопрос, а какой раскрой лучше (для оконного производства)? Вариант 1: использовано 2 хлыста по 6000 мм, остаток 400 мм - 1 шт. (отход). Вариант 2: использовано 3 хлыста по 6000 мм, остатки 4400 мм - 1 шт. (деловой) и 2000 мм -1шт. (деловой). Цитата Ссылка на комментарий Поделиться на других сайтах More sharing options...
Forus Опубликовано: 11 января, 2014 Автор Share Опубликовано: 11 января, 2014 Это теория, а на практике (согласно тех. тестов, какие я провел) - все программы раскладывали все заготовки практически в ноль, и только последняя палка давала полезный остаток. Но предположим, мы рассматриваем раскрой импоста. Предположим заказов на балконные блоки мало и в ходу стандартные окна. 1400-44*2=1312 мм. Давайте попробуем их разложить на хлысте 6000 мм. 6000-1312-1312-1312-10-5*3=2039 или 6000-1312-1312-1312-1312-10-5*4=722. Вопрос, что лучше сохранить 2064 или обрезок 752 мм сразу выбросить как неходовой? Ради исключения накопления остатков я бы выкинул 700 мм кусок сразу, поскольку через полгода работы кусков 2000 мм накопится очень много и их всё равно порежут на 1300 мм. Откуда такая расточительность? На практике на 8-10 хлыстов, покроенных в партии практически в ноль, нужно будет выбросить один кусок в 500 мм. А это 1% от всего раскроя. Как вы думаете, что лучше сразу получить отход на импосте в 2-2,5% (выбросив обрезки) или получить отход 1,5% и ооочень много ликвида, и тешить себя иллюзиями? В общем, рассматривать раскрой лучше целиком на всю партию. И если в процессе раскроя отход 400 мм, но это только 1-1,5%, то это можно считать хорошим результатом. А ещё с помощью удобной программы можно комбинировать эти варианты, - сначала ликвидные остатки накопить, а потом поменять настройки и вырезать их "уж как-нибудь". А ещё лучше покупать хлысты 6500 мм. Цитата Ссылка на комментарий Поделиться на других сайтах More sharing options...
Casper Опубликовано: 11 января, 2014 Share Опубликовано: 11 января, 2014 Совершенно верно. Это теория. На практике 1,5% или 1,8% отхода дает оптимизация - не единственный и не первый параметр для выбора ПО. Поэтому вопрос стоит так - тестируем ПО или алгоритмы оптимизации? Цитата Ссылка на комментарий Поделиться на других сайтах More sharing options...
ADGroup Опубликовано: 12 января, 2014 Share Опубликовано: 12 января, 2014 В то же время РасКон не совмещает последний рез с обрезью... На самом деле РасКон последний рез умеет совмещать с обрезью, причем плавающим способом, то есть если на любой рез в параметрах задано 5 мм, а реально остается 2 мм именно на последний рез, то РасКон подобную комбинацию сосчитает действительной, так как, всегда есть на практике торцевание палки с начала и с конца. Или если подумать логически, какая разница пиле, сколько в конце она обрежет, 5 мм или 2 мм, или 0 мм, она не умеет мерить то, что она режет, а результат при этом будет одинаковый. Соответственно на практике не бывает, чтобы палку "отторцевали" с начала, затем с конца и затем делали резы математическим способом: количество деталей*ширину каждого реза (в данном случае последний рез бессмысленный, так как есть понятие торцевания, и нет смысла делать рез в конце дважды, собственно как и в начале). Николай, думаю, и Вы согласитесь и другие участники, что подобные моменты (а моментов много) в разных программах по-разному предусмотрены. В РасКон-е это поведение менялось в раскрое несколько раз за всю историю, например. Я думаю, Forus, имеет смысл обратить внимание на просьбу убрать вообще все резы и торцевания из тестов. С математической точки зрения это правильно. Это максимально приблизит все программы к единым условиям и единому поведению (сразу говорю, на момент написания данного сообщения я не проверял свою программу на результат при предложенных мною условиях). С другой стороны чистая математика на практике иногда оказывается бессмысленна, тогда второе предложение: два разных теста, математический (с нулями везде) и практический (текущий тест). В идеале чтобы тест базовый (базовый набор длин) отличался или менялся периодически. Для истории Вы можете делать сводную таблицу и публиковать, как с каждым тестом (набором данных) менялся результат. Поймите правильно, но, ни для меня, ни для Николая, либо других участников не составит труда запустить "тестовую" машину на "полный перебор" хоть на несколько месяцев, и в свежей версии программы подстроить результат к оптимальному решению. (Много лет назад я читал на ixbt о подобных вещах по 3dmark тесту видеокарт, опытные люди с дизассемблером находили конкретные привязки и реакции на конкретные тесты в дровах). Я уверен сейчас подобными вещами с подстановкой результата никто не занимается, но с ростом популярности Вашего теста это может происходить, по крайней мере, не стоит исключать данный нюанс. 2 Rexther: RasKon для теста Forus-у был предоставлен лицензионный, думаю, как и большинство других программ. 1 Цитата Ссылка на комментарий Поделиться на других сайтах More sharing options...
Forus Опубликовано: 12 января, 2014 Автор Share Опубликовано: 12 января, 2014 (изменено) Не знаю, кто и что будет в будущем тестировать, но я свои поставленные задачи полностью выполнил. У меня была цель, или если даже позволите мечта, - собрать много программ раскроя листовых материалов и объединить их в одном глобальном тесте. Зародилась она ещё на первой моей работе, когда мне поставили задачу, наладить оптимизацию стекла на небольшом оконном предприятии. И в этот момент, я понял, что по критерию качества раскроя никто программы не анализировал. О наличии такой возможности поставщики ПО говорили, но нигде не было информации, как с этим они справляются. Затем были "робкие" попытки выяснить, а какие собственно критерии при тестировании нужно вложить в тест, но внятных и четких ответов я не узнал. Тогда я из своего опыта, сам придумал параметры и взял базу заказов реального предприятия и нашел там три сменных задания, которые отличались между собой кардинально. И провел тест. А как следствие на базе тех сменок, провел тест длинномеров. Плохо ли я это сделал или хорошо, но я это сделал. Кому этот тест нужен? Да, прежде всего мне. Мне это очень хотелось сделать. Кому ещё? Возможно рачительным руководителям предприятий, которые умножив годовой оборот материалов подлежащих раскрою на процент возможной экономии, начнут, как минимум теребить разработчиков своего ПО, улучшать его в этом направлении. Или как максимум заменят ПО на более лучшее. Для них мой тест будет точкой опоры, сравнить действующее ПО с аналогами. Кому ещё это пригодится? Тем предприятиям, которые только начинают работу, и не знают, как подойти к анализу покупаемого ПО. Ведь нет возможности потратить десятки тысяч евро, только на то, чтобы посмотреть устроит их оно или нет. Кому ещё? Я считаю, что и разработчикам ПО этот тест будет полезен. С помощью него можно посмотреть, какие алгоритмы использовали конкуренты, и в каком направлении двигаться. После моего тестирования, одна из программ улучшила качество раскроя, потому что было видно, как это делали более именитые программы. Некоторые участники форума высказывают мнение, что параметры можно было задать по-другому, чтобы исключить возможные погрешности. А давайте разберем необходимость протестировать программы, но на примере автомобилей. Ведь не все могут себе позволить разбираться в тонкостях настроек. Итак, предположим у нас есть три автомобиля: Ламбо 1968 г., BMW 2013 г. и Hundai Sonata 2013 г. У одной машины шины Бриджстоун, у второй зимняя резина Кама, а у третьей вообще лысая. У одной машины "полный фарш" электроники, какая-то в базовой комплектации, а какая-то вообще таких слов не знала. В какой-то машине полупустой бак, а у кого-то в багажнике уже успел прорости мешок картошки. И т.п. нюансы. Как бы протестировал я? Я бы в первую очередь приблизил состояние автомобилей в более-менее одинаковое состояние. Установил любые, но одинаковые покрышки, залил равное количество топлива, отключил электронику, вытащил ненужный балласт из багажников и т.п.. Затем тест провел на двух-трех одинаковых маршрутах, с одним и тем же водителем, и при одинаковой погоде. И свёл бы результаты в единую таблицу. И тут представьте, захотел бы кто-то ещё поучаствовать в тесте со своим автомобилем, но при этом отказывался участвовать без закиси азота, и требовал поставить её на все остальные автомобили. И утверждал бы, что настоящие мужчины только так и ездят ... А ещё потребовал вернуть мешок картошки в другую машину. Как вы думаете, что на это отвечу я? А некоторые начнут утверждать, что тесты нужно проводить не меньше, как на 30 разных автодромах, поскольку трасса может обрезиниваться, или автомобиль будет настроен именно на эти трассы... Так вот тест проведен, и каждый пускай самостоятельно решает для себя нужно ли доверять результатам! Кто считает, что параметры не такие, предлагаю сделать своё тестирование и показать, что его тестирование на голову выше предложенного мной. Несколько слов об этих самых параметрах. Я не перестаю утверждать, что все программы с помощью тех или иных настроек были приведены к общим (равным) условиям тестирования. Я не перестаю утверждать, что от перемены параметров, результаты теста не изменятся! Приведу два примера. Говорят, что нужно убрать обрезь хлыста. Так вот если убрать обрезь, но при этом сделать размер хлыста 5990 мм, то получится то же самое тестирование. Какая собственно разница раскладывать программе заготовки на размере 6000 или 5990 мм? В моем понимании совершенно никакой!!! Поскольку все программы будут раскладывать одни и те же детали на одном и том же размере хлыста. Сейчас так и происходит!!! Второй момент. Утверждают, что нужно убрать рез пилы. Хорошо, убираем, но при этом представим чисто гипотетически, что все конструкции были не с этими размерами, а на 10 мм больше и по ширине и по высоте. Тогда получается, что результаты опять будут одни и те же. Программы будут раскладывать одинаковые заготовки на одинаковом размере хлыста. Так это происходит и сейчас! Ещё раз повторюсь. Во всех программах один и тот же обязательный отход (читайте мусор). Совершенно у всех!!! В итоге хочу сказать, что проводить новые тесты у меня нет возможности и желания. Кто не согласен с параметрами прошу провести свой тест. Я с чувством выполненного долга, откланиваюсь. P.S. Будут ли новые программы, которые присоединятся к уже протестированным? С большой вероятностью - да. Будут ли включаться в результаты усовершенствованные (переделанные) алгоритмы уже протестированных участников? Да. Изменено 13 января, 2014 пользователем Forus 2 Цитата Ссылка на комментарий Поделиться на других сайтах More sharing options...
MichaelCH Опубликовано: 7 сентября, 2015 Share Опубликовано: 7 сентября, 2015 (изменено) Реализовал собственный алгоритм линейного раскроя на базе Excel Если сравнивать с опубликованными здесь результатами, то у меня получилось лучше чем у лидера (AltaWin) Тест 1: использован 31 хлыст, полезный остаток 5274 Тест 2: использовано 16 хлыстов, полезный остаток 5344, при удвоении: 32 хлыста, полезный остаток 10688 Тест 3: использовано 24 хлыста, полезный остаток 3802 Тест 4: Использовано 12 хлыстов, полезный остаток 1904, при удвоении: 24 хлыста, полезный остаток 3808 Тест 5: использовано 54 хлыста, полезный остаток 3468 Тест 6: Использовано 27 хлыстов, полезный остаток 1952, при удвоении: 54 хлыста, полезный остаток 3904 Карта раскроя во вложении или по ссылке: https://yadi.sk/i/bEJEh4mYiuXXo LinRaskr (MCH) тест 1-6.rar Изменено 7 сентября, 2015 пользователем Rexther без коммерции это сообщение выглядит лучше Цитата Ссылка на комментарий Поделиться на других сайтах More sharing options...
MichaelCH Опубликовано: 7 сентября, 2015 Share Опубликовано: 7 сентября, 2015 В дополнение к вопросу о качестве алгоритмов раскроя, хорошим стрессовым тестом является набор данных указанных в Википедии по теме «Задача раскроя»: Размер заготовок – 5600 Детали, размер - кол-во: 1380 - 22 1520 - 25 1560 - 12 1710 - 14 1820 - 18 1880 - 18 1930 - 20 2000 - 10 2050 - 12 2100 - 14 2140 - 16 2150 - 18 2200 - 20 Ширина реза – 0 Торцевые кромки – 0 Данные детали можно раскроить из 73 исходных заготовок, решение указано в статье. Но не все программы справляются с этой задачей. CuttingLine и Optimize не могут найти решение в 73 заготовки. Следующим показателем качественности алгоритма – какого максимального размера остается остаток от последней заготовки либо минимизация количества различных вариантов раскроя, если критичным является переналадка оборудования. Самый эффективный метод для раскроя – целочисленное линейное программирование. Применение данного метода имеет ограничение при поиске всех возможных комбинаций раскроя, когда заготовка имеет большой размер, а детали – небольшой. Также задачу можно решать, как разновидность «задачи о рюкзаке» или «сумма подмножеств» динамическим программированием. Во вложении пример полученных раскроев этой задачи с помощью самописной программы методом динамического программирования (ДП) и линейного программирования (ЛП) с двумя подзадачами – максимизация последнего остатка и минимизация количества переналадки оборудования. Если у кого-нибудь есть возможность протестировать алгоритм своих программ по этим данным, прошу сообщить результаты. Задача минимум – получить раскрой в 73 заготовки (не все программы с этим справляются), задача максимум – для 73 заготовок максимизировать остаток от последней. Wiki.rar Цитата Ссылка на комментарий Поделиться на других сайтах More sharing options...
Nick Опубликовано: 8 сентября, 2015 Share Опубликовано: 8 сентября, 2015 (изменено) Куда-то делись результаты тестов WinCalc, выкладываю повторно. Лидерство в этот раз взять не удалось "благодаря" результатам MichaelCH, первое место теперь делим на двоих Для удобства сравнения в скобках указал разницу между результатами от MichaelCH) Тест 1: использован 31 хлыст, полезный остаток 5294 (на 20мм больше) Тест 2: использовано 16 хлыстов, полезный остаток 5284 (на 60мм меньше), при удвоении: 32 хлыста, полезный остаток 10568 ( на 120мм меньше) Тест 3: использовано 24 хлыста, полезный остаток 3752 (на 50мм меньшк) Тест 4: Использовано 12 хлыстов, полезный остаток 1884 (на 20мм меньше), при удвоении: 24 хлыста, полезный остаток 3768 (на 40мм меньше) Тест 5: использовано 54 хлыста, полезный остаток 3832 (на 364мм больше) Тест 6: Использовано 27 хлыстов, полезный остаток 1900 (на 52мм меньше, при удвоении: 54 хлыста, полезный остаток 3800 (на 104мм меньше) Результаты и итог в приложении wincalc-1.pdf wincalc-2.pdf wincalc-3.pdf wincalc-4.pdf wincalc-5.pdf wincalc-6.pdf Изменено 8 сентября, 2015 пользователем Nick Цитата Ссылка на комментарий Поделиться на других сайтах More sharing options...
MichaelCH Опубликовано: 8 сентября, 2015 Share Опубликовано: 8 сентября, 2015 первое место теперь делим на двоих Не удержался и перезапустил раскрой на более сложном пересчете (расчет вместо 5-10 секунд производился не более 30-40 секунд в самом сложном 5м варианте). Результаты улучшились и обогнали WinCalc Схемы раскроя: https://yadi.sk/i/T3fuPINaiwUvz Полезный остаток: Тест 1: 5344 Тест 2: 10688 Тест 3: 3808 Тест 4: 3808 Тест 5: 3874 Тест 6: 3924 Цитата Ссылка на комментарий Поделиться на других сайтах More sharing options...
Nick Опубликовано: 9 сентября, 2015 Share Опубликовано: 9 сентября, 2015 Не удержался и перезапустил раскрой на более сложном пересчете (расчет вместо 5-10 секунд производился не более 30-40 секунд в самом сложном 5м варианте). Результаты улучшились и обогнали WinCalc Снимаю шляпу, добиться лучших результатов, чем у Вас не получается Цитата Ссылка на комментарий Поделиться на других сайтах More sharing options...
MichaelCH Опубликовано: 9 сентября, 2015 Share Опубликовано: 9 сентября, 2015 Удалось улучшить решение в 1м и 2м тесте: используется вместо 31 заготовки - 30 При этом не технологические потери во всех тестах минимальны. LinRaskr тест 1-6 вар3.rar Цитата Ссылка на комментарий Поделиться на других сайтах More sharing options...
MichaelCH Опубликовано: 12 сентября, 2015 Share Опубликовано: 12 сентября, 2015 Сделал раскрой имеющихся данных при разных размерах профиля от 3000 до 6500 с шагом 500 с теми же условиями (ширина реза - 10, торцевая кромка - 10), итого получилось 48 (6 * 8) тестов. Результаты во вложении. Если у кого-нибудь хватит терпения, то протестируйте свои программы. Будет интересно сравнить эффективность алгоритмов раскроя не только на 6000, но и на других размерах профиля. Тесты.rar Цитата Ссылка на комментарий Поделиться на других сайтах More sharing options...
MichaelCH Опубликовано: 2 ноября, 2015 Share Опубликовано: 2 ноября, 2015 Сделал расчет по объединенным заказам (примерно 300-400 окон). В результате получилось 1834 детали общей длиной 2737,154 метра Думаю, что данный набор покажет эффективность алгоритмов различных программ линейного раскроя. Т.к. программы по разному подходят к ширине реза и кромки, то для сопоставимости добавил к размеру деталей ширину реза, а из длины хлыста убрал кромку. Таким образом, ширина реза - 0, кромка - 0, размер хлыста - 5975 (6000-25). Минимально для раскроя необходимо 2737154 / 5975 = 458,101 хлыста, т.е. 459 целых хлыста. Задача минимум - получить раскрой, используя 459 хлыстов, задача максимум - максимизировать остаток от последнего хлыста (при этом потери будут не более 0,899/459 = 0,2%). Количество заготовок достаточно большое и они имеют большую дисперсию, поэтому получить раскрой в 459 заготовок возможно. К реальной ситуации данная задача не относится, т.к. на практике заказ разбивается на партии и производится раскрой каждой партии отдельно. Интересно посмотреть, как специализированные программы решают данный тест. Набор исходных данных и схема раскроя, которую смог найти - во вложении. Пример.rar Цитата Ссылка на комментарий Поделиться на других сайтах More sharing options...
Dan-K Опубликовано: 9 ноября, 2015 Share Опубликовано: 9 ноября, 2015 Оптимизировал тут на днях распил и дай, думаю, напишу цикл, чтобы программа сама прогоняла не одну, а несколько сотен оптимизаций подряд, сама, меняя 2 параметра: толщину реза от 5 до 20 мм и обрезку по краю от тех же 5 до 30 мм. Я вам скажу, интересные результаты получились. Иной раз программа, выдающая 1,3% потерь при обрезке края 10 мм и толщине реза 5 мм, при обрезке 18 мм и толщине реза 10 - выдала 0,9% потерь... Так что, если в оптимизаторе нет возможности сделать подобный цикл с анализом товарных остатков и анализом % потерь, то программа не дает полной эффективности... Цитата Ссылка на комментарий Поделиться на других сайтах More sharing options...
MichaelCH Опубликовано: 10 ноября, 2015 Share Опубликовано: 10 ноября, 2015 Иной раз программа, выдающая 1,3% потерь при обрезке края 10 мм и толщине реза 5 мм, при обрезке 18 мм и толщине реза 10 - выдала 0,9% потерь... Dan-K, как Вы (или программа) вычисляет потери? Если учитывать, что в шестиметровый профиль умещается 4-5 отрезков, то это 4 реза по 10мм + 18мм кромка. Итого 58 мм, а это уже почти 1% от 6 метров, но никак не 0,9%, а еще ведь остаются неделовые обрезки. Либо у Вас в 0,9% учитывалось только неделовые отходы (без учета реза пилы и кромки)? Кроме того, оборудование ведь не может перенастраивать ширину реза. Для более наглядного анализа качества раскроя хотелось бы видеть исходные данные, которые Вы раскраивали и саму карту раскроя. Обратите внимание на раскрой из 88 сообщения. Если не учитывать технологические отходы (кромка и рез ~ 1%), то на выброс ушло в 1 и 2м тесте 13,2 см (т.к. полезный остаток не удается сформировать), в 3 и 4м тесте выбрасывается только 4 мм из 144 метров, в 5м тесте - на выброс ушло 7см из 324 метров профиля, в 6м тесте выбрасывается 2см, остальное удалось сохранить в виде делового остатка, потери измеряются сотыми долей процента. Цитата Ссылка на комментарий Поделиться на других сайтах More sharing options...
Rexther Опубликовано: 10 ноября, 2015 Share Опубликовано: 10 ноября, 2015 Оптимизировал тут на днях распил и дай, думаю, напишу цикл, чтобы программа сама прогоняла не одну, а несколько сотен оптимизаций подряд, сама, меняя 2 параметра: толщину реза от 5 до 20 мм и обрезку по краю от тех же 5 до 30 мм. Я вам скажу, интересные результаты получились. Иной раз программа, выдающая 1,3% потерь при обрезке края 10 мм и толщине реза 5 мм, при обрезке 18 мм и толщине реза 10 - выдала 0,9% потерь... Так что, если в оптимизаторе нет возможности сделать подобный цикл с анализом товарных остатков и анализом % потерь, то программа не дает полной эффективности... Что-то я никак в толк не возьму - каким образом при раскрое можно менять толщину реза? Это же константа. Причем задается она только и исключительно шириной диска. Цитата Ссылка на комментарий Поделиться на других сайтах More sharing options...
Dan-K Опубликовано: 10 ноября, 2015 Share Опубликовано: 10 ноября, 2015 Что-то я никак в толк не возьму - каким образом при раскрое можно менять толщину реза? Это же константа. Причем задается она только и исключительно шириной диска. При распиле пластика под углом 45° у меня резчик реально за счет наложения резов делает толщину реза 1,5-2 мм. Я иногда обнаруживаю, что он умудряется делать её отрицательной ))). Я соглашусь, что программисту хочется считать её константой, но когда изменяешь эту самую константу от с шагом 1 мм - с удивлением обнаруживаешь что эффективность распила серьезно меняется то в одну, то в другую сторону... Вот вам и эффективный способ улучшения программы раскроя... Цитата Ссылка на комментарий Поделиться на других сайтах More sharing options...
Dan-K Опубликовано: 10 ноября, 2015 Share Опубликовано: 10 ноября, 2015 Dan-K, как Вы (или программа) вычисляет потери? Если учитывать, что в шестиметровый профиль умещается 4-5 отрезков, то это 4 реза по 10мм + 18мм кромка. Итого 58 мм, а это уже почти 1% от 6 метров, но никак не 0,9%, а еще ведь остаются неделовые обрезки. Либо у Вас в 0,9% учитывалось только неделовые отходы (без учета реза пилы и кромки)? Кроме того, оборудование ведь не может перенастраивать ширину реза. Для более наглядного анализа качества раскроя хотелось бы видеть исходные данные, которые Вы раскраивали и саму карту раскроя. Обратите внимание на раскрой из 88 сообщения. Если не учитывать технологические отходы (кромка и рез ~ 1%), то на выброс ушло в 1 и 2м тесте 13,2 см (т.к. полезный остаток не удается сформировать), в 3 и 4м тесте выбрасывается только 4 мм из 144 метров, в 5м тесте - на выброс ушло 7см из 324 метров профиля, в 6м тесте выбрасывается 2см, остальное удалось сохранить в виде делового остатка, потери измеряются сотыми долей процента. Программа отнимает от реальной длины хлыстов все рабочие отрезки и те отрезки, которые я объявил деловыми. Ну скажем для рамы >=490. Не учитывать технологические отходы - это забава для программистов, а меня мучает не абстрактная, а реальная жадность ))) Распил_001.pdf Цитата Ссылка на комментарий Поделиться на других сайтах More sharing options...
MichaelCH Опубликовано: 10 ноября, 2015 Share Опубликовано: 10 ноября, 2015 Так что, если в оптимизаторе нет возможности сделать подобный цикл с анализом товарных остатков и анализом % потерь, то программа не дает полной эффективности... Эффективность раскроя можно оценить следующими показателями: использования меньшего количества заготовок (профиля) и максимизация полезного остатка, остальные показатели - переналадка оборудования, оптимизация складских остатков очень индивидуальна. Да и "полезный остаток" имеет разную ценность, например, три отрезка по 1500 существенно хуже, чем один на 4500. Если за счет увеличения кромки Вы добиваетесь снижения рассчитываемого процента отхода, при этом не получается уменьшить заготовки или увеличить полезный остаток, то это просто самообман. Некоторые программы позволяют совмещать последний рез и кромку, за счет этого получать дополнительный выигрыш в долях процента. Цитата Ссылка на комментарий Поделиться на других сайтах More sharing options...
Dan-K Опубликовано: 10 ноября, 2015 Share Опубликовано: 10 ноября, 2015 Эффективность раскроя можно оценить следующими показателями: использования меньшего количества заготовок (профиля) и максимизация полезного остатка, остальные показатели - переналадка оборудования, оптимизация складских остатков очень индивидуальна. Да и "полезный остаток" имеет разную ценность, например, три отрезка по 1500 существенно хуже, чем один на 4500. Если за счет увеличения кромки Вы добиваетесь снижения рассчитываемого процента отхода, при этом не получается уменьшить заготовки или увеличить полезный остаток, то это просто самообман. Некоторые программы позволяют совмещать последний рез и кромку, за счет этого получать дополнительный выигрыш в долях процента. Переналадка оборудования - это только на полностью автоматизированных комплексах, где позиционирование распиливаемого профиля автоматическое... Каков % подобного оборудования в отрасли? Очень редка длинномерная обрезь! Чаще имеем кусочки от 400 до 700.... Склад обрези можно не вести, а просто 1 раз в неделю поработать с кусочками в ручном режиме подбора, как работают больше половины фирм в отрасли. Какой же самообман, если методика расчета проста и незатейлива: Общая длина хлыстов - (Длина рабочих отрезков+ Длина товарной обрези)? - мы производственники - народ простой и математику на уровне калькулятора освоили в совершенстве! Вы сами хоть раз присутствовали в цеху, когда по вашей программе живой человек пилит хлыст? Пробовали сравнить остаток с реально получающимся? А когда-нибудь видели, как торцуют конец профиля? Я вам открою тайну, его никто не торцует))) Короче, берите штангель и отправляйтесь в цех смотреть на реальный процесс! Цитата Ссылка на комментарий Поделиться на других сайтах More sharing options...
MichaelCH Опубликовано: 10 ноября, 2015 Share Опубликовано: 10 ноября, 2015 Не учитывать технологические отходы - это забава для программистов, а меня мучает не абстрактная, а реальная жадность ))) Dan-K, раскроил Ваши данные своей программой (для этого не пришлось делать "несколько сотен оптимизаций подряд"). Имеется 58 деталей, общей длиной 87580мм, для раскроя необходимо минимум 15 хлыстов по 6000 итого 90000мм. При кромке 20мм (по 10 с каждой стороны) уйдет 15*20 = 300мм, и при резе 11мм - 58*11 = 638 мм. Итого максимально возможный полезный остаток: 90000 - 87580 - 300 - 638 = 1482 У меня получилось сохранить 1428, выброшено 1482 - 1428 = 54 мм (54/90000 = 0,06%) или с учетом резов и кромки (90000-87580-1428)/90000 = 1,1% Схемы во вложении. У Вас сохранено 732 мм, т.е выброшено 1482 - 732 = 750 мм (750/90000 = 0,833%) или с учетом резов и кромки (90000-87580-732)/90000 = 1,876% Согласитесь, что остаток 1428 это лучше, чем 732. Вы сами хоть раз присутствовали в цеху, когда по вашей программе живой человек пилит хлыст? Пробовали сравнить остаток с реально получающимся? А когда нибудь видели как торцуют конец профиля? Я вам открою тайну его никто не торцует ))) Короче, берите штангель и отправлятесь в цех смотреть на реальный процесс! С удовольствием поучаствовал бы в производственном процессе и помогу с оптимизацией раскроя, к реальному производству не имею никакого отношения, я программист. В 82 сообщении Forus ответил, какова цель тестов - сравнить алгоритмы программ при равных условиях. Если в реальном производстве не производится торцовка, а она задается для минимизации ошибки резчика либо, когда концы профиля необходимо подровнять, то это не имеет отношение к тестам. LinRaskrLP пример.rar Цитата Ссылка на комментарий Поделиться на других сайтах More sharing options...
Rexther Опубликовано: 10 ноября, 2015 Share Опубликовано: 10 ноября, 2015 При распиле пластика под углом 45° у меня резчик реально за счет наложения резов делает толщину реза 1,5-2 мм. Я иногда обнаруживаю, что он умудряется делать её отрицательной ))). Я соглашусь, что программисту хочется считать её константой, но когда изменяешь эту самую константу от с шагом 1 мм - с удивлением обнаруживаешь что эффективность распила серьезно меняется то в одну, то в другую сторону... Вот вам и эффективный способ улучшения программы раскроя... Я не программист. Думаю, что наличие мыслящего резчика в цеху большая удача. И редкость. А на автоматах его и вообще нет.... И они не такая уж редкость. Но суть я понял. Спасибо! Цитата Ссылка на комментарий Поделиться на других сайтах More sharing options...
Dan-K Опубликовано: 10 ноября, 2015 Share Опубликовано: 10 ноября, 2015 Согласитесь, что остаток 1428 это лучше, чем 732. Согласитесь, что остаток 1428 это лучше, чем 732. Соглашусь, и перебирая значения КОНСТАНТ на своем же примере, выставляю 5 мм торцовка и 5 мм рез - получаю 1 единственный товарный обрезок 1916 мм... Да у меня туповатый алгоритм и программа в Excel реализована... но ведь работает же... и результат показал не хуже!!! Вот глядите сами: Процент потерь 0,56, Карл!!! А алгоритм ТУПОЙ!! Общие результаты :РАСПИЛ_5_5.pdf Цитата Ссылка на комментарий Поделиться на других сайтах 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.