|
Подбор тары и ее заполнение товаром | ☑ | ||
---|---|---|---|---|
0
kapitoshka_
user 19.02.21
✎
12:24
|
Добрый день!
Нужно написать обработку под обычные формы для УТП для автоматического подбора тары и ее заполнение товаром. Основная задача - упаковать наиболее оптимальным способом товары разного веса - в одной коробке может быть несколько тяжелых предметов и пару легких. Соответственно, упаковывать должны сначала тяжелый товар, затем сверху - легкий. Если делить товар по весу - я смогу упаковать товар в тару. Метод не совсем оптимальный. Когда положим первый товар в тару - получаю несколько областей: занятая область товаром, область сверху товара, сбоку товара и спереди товара. И обхожу каждую свободную область, пытаясь подобрать товар под размеры области и по необходимости опять делю свободную область на несколько: занятая товаром и несколько свободных областей рядом. Метод не оптимальный, т.к. я ограничиваю области по размерам товара и не могу объединить свободные области, которые появились на разных уровнях уложенного товара. Кто сталкивался с подобным трехмерным тетрисом в 1с? Как можно запоминать свободные области и корректировать их размеры? Я не могу найти никаких методов для этого, помогите советом, пожалуйста. |
|||
1
Базис
naïve
19.02.21
✎
14:16
|
Гугли метод рюкзака, задачу линейного программирования, но это тяжёлые и абстрактные задачи, возможно просто набор правил "Большое И тяжёлое вниз", затем "Тяжёлое вбок" потом "60% объёма запихать мелкими".
Экспресс-доставка? |
|||
2
kapitoshka_
user 19.02.21
✎
15:14
|
(1)
Да, в поисковиках искала все методы, вспомнила дискретную математику и все алгоритмы. Собственно, с набором правил как разместить товар в ящике проблем нет. Я не могу сообразить, как мне запомнить трехмерное размещение товара и найти свободные области. Сейчас у меня заполняется слой за слоем, и если осталось свободное место на первом слое(ограниченное сверху максимальной высотой какого-то товара), но нет подходящего товара - я закрываю область как занятую. И если сверху над этой закрытой пустой областью будет еще одна закрытая пустая область - но если их объединить вместе - поместился бы какой-то товар, например. А так у меня простаивает область, потому что я использовала дерево значений для формирования пустых областей.... Может, это тоже через дерево значений можно определить - свободные области на разных уровнях и заполнять их, но я пока не могу сообразить как это сделать P.s. не доставка, но услугами транспортных компаний пользуемся, собственно поэтому и возникла такая задача |
|||
3
Базис
naïve
19.02.21
✎
16:56
|
Если это ваше подразделение, то человек сделает лучше: исходные данные по геометрии и "совместимости" упаковок вряд ли будут точны, удобны и полны одновременно.
Если не ваше, то перевозчик не будет работать по вашим бумагам. ЗЫ В другой отрасли увидел, как робот выполняет производственные задания. Он после выполнения присылает отчёт, где пишет "Тут надо было по КД поставить такой элемент, но я поставил другой. Вот SN узла, вот код номинального элемента, вот применённого". И на выдаче подобный робот. Но иногда кое-что делают люди. И они не дают никаких отчётов. |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |