Профессиональные приемы работы в Microsoft Excel

Пожалуйста, войдите или зарегистрируйтесь.


Расширенный поиск  

Новости:

Теперь на форум можно залогиниться / зарегистрироваться с помощью ВКонтакте. Уже существующие пользователи могут связать свою учетную запись с аккаунтом ВКонтакте одним кликом в профиле пользователя http://forum.msexcel.ru/index.php?action=profile;area=account

Автор Тема: Как решить задачу о раскрое в Excel  (Прочитано 3140 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Alice Liddell

  • Новичок
  • *
  • Уважение: +0/-0
  • Оффлайн Оффлайн
  • Сообщений: 2

Здравствуйте,

Дано условие задачи:

Есть стальная лента заданной ширины (l=1250 миллиметров), ее нужно раскроить на n более узких лент (разной или одинаковой ширины) таким образом, чтобы в результате раскроя получилось заданное соотношение весов раскроенных лент. При каждом виде раскроя получается некий расход. Заданы ширина каждой ленты (каждого вида ленты) и их массы, и их соотношения. Сумма ширин лент не обязательно равна ширине исходной. Каждому способу раскроя соответствует некий расход.  Найти самый оптимальный способ.

Набор рулонов заданной ширины. (Каждая часть рулона может быть раскроена тем или иным способом).

Способ раскроя l_i (набор векторов). В конце раскроя надо получить заданное соотношение по весу раскроенного металла. (Например- 300 тонн такой-то ленты, 400 тонн другой ленты). Это нужно получить с минимальным отходом.

(написать на excel)

(Количество лент, на которые можно резать рулон, не более 10-ти).

Пыталась найти похожее в интернете, однако, дается лишь максимум определение задачи. Очевидно, это подвид задачи об оптимизации отходов, однако как решать такую задачу, не совсем понятно.

Помогите, пожалуйста, разобраться.
Пока удалось дойти своими силами до примерной таблицы, которая показывает, какие отходы могут быть. (Массы пока не учитывала, взяла более простой случай).
« Последнее редактирование: 21.09.2015, 10:20:47 от Alice Liddell »
Записан

MCH

  • Постоялец
  • ***
  • Уважение: +44/-0
  • Оффлайн Оффлайн
  • Сообщений: 433
Re: Как решить задачу о раскрое в Excel
« Ответ #1 : 23.09.2015, 22:37:51 »

Цитировать
(написать на excel)
Это учебная задача или нужно для работы?
Если учебная - то нужно ее решить с помощью надстройки "Поиск решения"
Если рабочая, то тема оптимального раскроя достаточно сложная.

Приложите пример Ваших данных.
Например, есть неограниченное кол-во лент шириной 1250 мм, необходимо нарезать их на полосы 400 мм - ??? штук, 300 мм - ??? штук, 100 мм - ??? штук с минимальными отходами.
Тогда можно будет решить задачу оптимизации
Записан

Alice Liddell

  • Новичок
  • *
  • Уважение: +0/-0
  • Оффлайн Оффлайн
  • Сообщений: 2
Re: Как решить задачу о раскрое в Excel
« Ответ #2 : 24.09.2015, 17:38:40 »

Добрый день, спасибо вам большое за то, что откликнулись.

Скажите пожалуйста, почему не рекомендуется использовать данную надстройку для рабочей задачи?

Можно как пример взять следующие цифры- есть 5 исходных лент, нарезать нужно- 8 лент шириной 400 мм, 5 лент шириной 300 мм и 9 лент шириной 100 мм.

------------------------
Попробовала сделать с помощью надстройки, но получается что-то не то.
« Последнее редактирование: 24.09.2015, 21:57:47 от Alice Liddell »
Записан

MCH

  • Постоялец
  • ***
  • Уважение: +44/-0
  • Оффлайн Оффлайн
  • Сообщений: 433
Re: Как решить задачу о раскрое в Excel
« Ответ #3 : 24.09.2015, 23:02:34 »

Вы так и не ответили, это учебное задание или рабочее?
Скажите пожалуйста, почему не рекомендуется использовать данную надстройку для рабочей задачи?
В реальных условиях, как правило, требуется нарезать большое кол-во деталей (как вариантов длин, так и количества самих деталей), и количество различных вариантов раскроя получается очень большим. "Поиск решения" не применим в виду его ограничений (200 изменяемых ячеек).
Даже по приложенному Вами варианту: 400 - 8 шт, 300 - 5 шт, 100 - 9 шт, получается 57 различных вариантов раскроя заготовок длиной 1250 мм

Во вложении два примера раскроя, первое получено динамическим программированием (решения задачи "сумма подмножеств"), второе - "поиском решения"
Записан

IKor

  • Старожил
  • ****
  • Уважение: +49/-0
  • Оффлайн Оффлайн
  • Сообщений: 902
Re: Как решить задачу о раскрое в Excel
« Ответ #4 : 25.09.2015, 09:57:19 »

За ночь поиск решения нашел то, что руками находится менее чем за минуту...
:)
Записан

MCH

  • Постоялец
  • ***
  • Уважение: +44/-0
  • Оффлайн Оффлайн
  • Сообщений: 433
Re: Как решить задачу о раскрое в Excel
« Ответ #5 : 25.09.2015, 12:22:13 »

За ночь поиск решения нашел то, что руками находится менее чем за минуту...
:)
Я по другому использовал "Поиск решения" (см. вложение).
Сгенерировав предварительно все варианты раскроя заготовки.
Решение находится за секунды.
Записан

IKor

  • Старожил
  • ****
  • Уважение: +49/-0
  • Оффлайн Оффлайн
  • Сообщений: 902
Re: Как решить задачу о раскрое в Excel
« Ответ #6 : 25.09.2015, 15:17:48 »

Сгенерировав предварительно все варианты раскроя заготовки.
Решение находится за секунды.
Правильно ли я понимаю, что для решения другой задачи потребуется заново заполнять таблицу вариантов, аналогичную I9:K65 ?
В таком случае, время заполнения нужно добавить к полученным секундам... :)

Для заданной задачи один из вариантов раскроя вручную находится быстрее, чем заполняется ваша таблица :)
а количество отходов в этом варианте не больше, чем в других вариантах, найденных машинным способом.
Записан

MCH

  • Постоялец
  • ***
  • Уважение: +44/-0
  • Оффлайн Оффлайн
  • Сообщений: 433
Re: Как решить задачу о раскрое в Excel
« Ответ #7 : 26.09.2015, 07:17:19 »

В таком случае, время заполнения нужно добавить к полученным секундам... :)
Алгоритм составления карт раскроев достаточно простой и программным способом их составление занимает доли секунды
Пример решения данной задачи см. на видео: https://yadi.sk/i/EmLRtD_MjKy62

Для заданной задачи один из вариантов раскроя вручную находится быстрее, чем заполняется ваша таблица
IKor, попробуйте найти "ручное" решение для исходных данных в задаче раскроя описанной в Википедии: https://ru.wikipedia.org/wiki/%D0%97%D0%B0%D0%B4%D0%B0%D1%87%D0%B0_%D1%80%D0%B0%D1%81%D0%BA%D1%80%D0%BE%D1%8F
Видео с решением задачи через "Поиск решения": https://yadi.sk/i/-vueHRbSjKy8v
Пример решения с картами раскроя - во вложении
Стоит отметить, что не все специализированные программы линейного раскроя могут раскроить данные из Википедии в 73 заготовки (обычно в 74 или более)

При более сложных примерах не удается применить "Поиск решения", упираемся в ограничения - 200 изменяемых ячеек.
« Последнее редактирование: 26.09.2015, 08:02:46 от MCH »
Записан
 



Темы без ответов

09.08.2019 14:09 Макрос для заполнения таблиц через форму 142
18.07.2019 16:02 Рассылка почты из Excel при помощи почтовой программы TheBAT! 156
09.07.2019 20:39 Кредит с уменьшением периода выплат 203
28.05.2019 21:09 Сделать несколько скриптов для рабочей таблицы 536
05.03.2019 17:00 Последовательный вывод таблиц Excel в один документ Word без шаблона 848
05.03.2019 09:29 Нежелательные изменение размеров колонтитула при редактировании 622
07.02.2019 01:36 Как удалить дубликаты из выпадающего связанного списка? 755
20.01.2019 12:38 Все варианты частичного суммирования 931
13.01.2019 12:24 Заполнение диапазона числами - в виде кластеров 772
30.09.2018 10:24 Расчет процентов за определенный период (месяц) с учетом изменений и платежей 1182





Яндекс цитирования msexcel.ru Яндекс.Метрика

Страница сгенерирована за 0.159 секунд. Запросов: 115.