"Убер на складе": динамический расчет маршрутов с учетом реальных расстояний

0. 1932 24.06.19 10:10 Сейчас в теме
Представляю методику и инструмент для динамического расчета маршрутов отбора на высоконагруженных складах для максимального повышения эффективности склада, ускорения проходимости и, как следствие, экономии денег. Это методика и обработка для интеграции в WMS решения. Тестировалось на 1С 8.3.14.1565.

Перейти к публикации

Комментарии
В избранное Подписаться на ответы Сортировка: Древо развёрнутое
Свернуть все
1. Fragster 1053 24.06.19 18:24 Сейчас в теме
В свое время решали эту задачу таким образом: склад проектировался и адреса ячеек устанавливались таким образом, что кратчайший (конечно, с небольшой погрешностью) путь сборки заказа всегда получался простой сортировкой адресов. Конечно, тут не было красивых карт и прочего, но на 20000 ячеек хватало :)
shard; acanta; +2 Ответить
2. genayo 24.06.19 18:30 Сейчас в теме
Годно. Теперь нужно, чтоб алгоритм ещё и разводил наборщиков так, чтобы они не мешали друг другу.
informa1555; +1 Ответить
3. informa1555 1932 24.06.19 18:53 Сейчас в теме
(2) Спасибо. На начальном шаге их надо в максимально удаленные друг от друга места отправить, а вот потом - сложнее))
4. quaker94 24.06.19 19:14 Сейчас в теме
5. sm.artem 14 25.06.19 05:11 Сейчас в теме
Прям напомнило мою дипломную работу по оптимизации компоновок гибких производственных комплексов.
6. it@contlog.ru 25.06.19 06:28 Сейчас в теме
По моей оценке jump point search работает быстрее чем a* эта разница не ощутима на складе 10*10 но будет ощутимой на реальном.
Решение без конфигуратора не взлетело. Надо было выложить dt шку кроме как со скринов на странице не ясно чем заполнить бд чтобы проверить. Еще увидел работу с сетью, про это тоже интересно было-бы(dt). А так хороший старт!
7. informa1555 1932 25.06.19 06:46 Сейчас в теме
(6) почему не взлетело? Какая ошибка? По поводу чем заполнять бд - а там нет никаких данных в бд - все данные в форме обработки. Вы добавляете ряды со стеллажами, препятствия они добавляются в табличную часть обработки. Больше никаких данных.
9. it@contlog.ru 26.06.19 06:25 Сейчас в теме
(7) Это не список претензий, а скорее описание с чем столкнулся. Началось все с того что форма вылетала без ошибок - а оказывается это ошибка установки драйвера. ддл должена лежать в определенной папке о чем в описании ни слова зато сказано, что надо качать файл другой разработки, но на самом деле не надо все уже и так есть в цф.
Пришлось немного разкоментировать одни строки и закоментировать другие после чего драйвер увиделся.
Калибровка тоже не вкатила пока не комментировал проверку клика вне рабочего квадрата.
Все наладил но дальше надо было нарисовать свою карту с этим не ясно - поидее элементы должны автоматом привязываться к шагу выбраной сетки но этого не происходит препятствия клетки текст можно лепить где угодно.
Дальше что-то нажал и все зависло... не успел с этим разобраться.
10. informa1555 1932 26.06.19 07:45 Сейчас в теме
(9) Спасибо что сказали - убрал из макета компоненту. Калибровка должна работать. Может положение окна после калибровки поменялось?
8. Идальго 186 26.06.19 00:59 Сейчас в теме
Мне кажется, ещё прикольно будет сделать модельные-имитационные примеры (с визуазизацией), где попробовать посмотреть, на каких конфигурациях складов и нагрузках сборщики начнут мешать друг-другу (и на сколько сильно это скажется вообще) и использовать эти модели для проработки более эффективных моделей.
CheBurator; informa1555; +2 Ответить
11. informa1555 1932 26.06.19 07:47 Сейчас в теме
(8) Хорошая мысль! Если поведение каждого - идти к ближайшему то да, это можно сделать...
12. it@contlog.ru 28.06.19 04:19 Сейчас в теме
Что-то сбился с пути.
Прикрепленные файлы:
13. mpeg1989 30.06.19 09:53 Сейчас в теме
(12) Это другой грузчик его прикурить попросил.
rovenko.n; informa1555; +2 Ответить
14. informa1555 1932 30.06.19 11:02 Сейчас в теме
(12) А путь при этом не увеличился если считать по ячейкам. Так что все нормально.
rovenko.n; +1 Ответить
15. CheBurator 3453 05.07.19 00:26 Сейчас в теме
полезно. очень напоминает встречавшуюся мне статью в одном из логистических журналов, видимо потому что описывается тот же алгоритм построения маршрута "по квадратикам" ;-)
однако такой динамический расчет в массовых промышленных решениях вряд ли применим (имхо, ?). потому что в общем случае непонятно при больших количествах заказов, большого количества сборщиков, большого количества ограничений по ролям, лимитам и прочего - сколько понадобится на текущий расчет в горячем режиме. проще получается заранее рассчитать и выдавать по порядку обхода. Как частное решение - вполне себе годно.
informa1555; +1 Ответить
16. informa1555 1932 05.07.19 06:24 Сейчас в теме
(15) Спасибо! А нисколько не понадобится. Там все 1 раз считается, записывается в таблицу и в момент когда надо определить следующую цель - простенький запрос к таблице расстояний. Это настолько быстро что я даже не заморачиваюсь всякими многопоточными расчетами заданий как это сделано в 1Сных WMS, а просто отрисовываю на экране в При открытии. Расчет всей таблицы - это долго, да. Но как я и говорю он 1 раз- нарисовал, рассчитал, записал в таблицу. Все.
17. Pim 168 27.01.20 21:55 Сейчас в теме
Калибровка "без напильника" так и не работает. По совету коллеги убрал строки:
Если НЕ ((LPARAM_X >= ВерхнийЛевый_X и LPARAM_X <= НижнийПравый_X) и (LPARAM_Y >= ВерхнийЛевый_Y и LPARAM_Y <= НижнийПравый_Y)) Тогда
Возврат;
КонецЕсли;
Оставьте свое сообщение
Вопросы с вознаграждением