Вход | Регистрация
 
1С:Предприятие :: 1С:Предприятие 8 общая

Подбор тары и ее заполнение товаром

Подбор тары и ее заполнение товаром
Я
   kapitoshka_user
 
19.02.21 - 12:24
Добрый день!
Нужно написать обработку под обычные формы для УТП для автоматического подбора тары и ее заполнение товаром.
Основная задача - упаковать наиболее оптимальным способом товары разного веса - в одной коробке может быть несколько тяжелых предметов и пару легких. Соответственно, упаковывать должны сначала тяжелый товар, затем сверху - легкий.

Если делить товар по весу - я смогу упаковать товар в тару. Метод не совсем оптимальный. Когда положим первый товар в тару - получаю несколько областей: занятая область товаром, область сверху товара, сбоку товара и спереди товара. И обхожу каждую свободную область, пытаясь подобрать товар под размеры области и по необходимости опять делю свободную область на несколько: занятая товаром и несколько свободных областей рядом. Метод не оптимальный, т.к. я ограничиваю области по размерам товара и не могу объединить свободные области, которые появились на разных уровнях уложенного товара.

Кто сталкивался с подобным трехмерным тетрисом в 1с? Как можно запоминать свободные области и корректировать их размеры? Я не могу найти никаких методов для этого, помогите советом, пожалуйста.
 
 Партнерская программа EFSOL Oblako
   Базис
 
1 - 19.02.21 - 14:16
Гугли метод рюкзака, задачу линейного программирования, но это тяжёлые и абстрактные задачи, возможно просто набор правил "Большое И тяжёлое вниз", затем "Тяжёлое вбок" потом "60% объёма запихать мелкими".

Экспресс-доставка?
   kapitoshka_user
 
2 - 19.02.21 - 15:14
(1)
Да, в поисковиках искала все методы, вспомнила дискретную математику и все алгоритмы. Собственно, с набором правил как разместить товар в ящике проблем нет.
Я не могу сообразить, как мне запомнить трехмерное размещение товара и найти свободные области.
Сейчас у меня заполняется слой за слоем, и если осталось свободное место на первом слое(ограниченное сверху максимальной высотой какого-то товара), но нет подходящего товара - я закрываю область как занятую. И если сверху над этой закрытой пустой областью будет еще одна закрытая пустая область - но если их объединить вместе - поместился бы какой-то товар, например. А так у меня простаивает область, потому что я использовала дерево значений для формирования пустых областей.... Может, это тоже через дерево значений можно определить - свободные области на разных уровнях и заполнять их, но я пока не могу сообразить как это сделать

P.s. не доставка, но услугами транспортных компаний пользуемся, собственно поэтому и возникла такая задача
   Базис
 
3 - 19.02.21 - 16:56
Если это ваше подразделение, то человек сделает лучше: исходные данные по геометрии и "совместимости" упаковок вряд ли будут точны, удобны и полны одновременно.

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

ЗЫ В другой отрасли увидел, как робот выполняет производственные задания. Он после выполнения присылает отчёт, где пишет "Тут надо было по КД поставить такой элемент, но я поставил другой. Вот SN узла, вот код номинального элемента, вот применённого".

И на выдаче подобный робот.

Но иногда кое-что делают люди. И они не дают никаких отчётов.

Список тем форума
 
ВНИМАНИЕ! Если вы потеряли окно ввода сообщения, нажмите Ctrl-F5 или Ctrl-R или кнопку "Обновить" в браузере.