AnyLogi c: выбрать несколько продуктов из одной ячейки в стеллажах - PullRequest
0 голосов
/ 13 января 2020

Я пытаюсь смоделировать распределительный центр в AnyLogi c. У меня вопрос по извлечению продуктов из ячейки стойки хранения.

Я храню единицы обработки (агенты) в стойках хранения. Единица обработки состоит из нескольких элементов, и я хочу получать эти элементы по одному, пока не будет достигнуто количество элементов в единице обработки. Я могу извлечь весь блок обработки из стойки хранения, но возможно ли также извлечь элементы из этого блока обработки без извлечения фактического блока обработки из стойки хранения? Я думаю, что-то вроде разделенного блока может помочь, но затем я получаю сообщение об ошибке, что стойка хранения не содержит агента (так как копия чем-то отличается от оригинала?). Было бы здорово, если бы кто-то мог помочь мне с этим.

Большое спасибо заранее.

1 Ответ

0 голосов
/ 13 января 2020

В одной стойке может быть только 1 агент.

Несколько опций:

  1. разделить их перед RackStore и транспортировать вместе с некоторым ресурсом. Однако они не будут сохранены в 1 позиции.
  2. Добавьте параметр numTaken, который отражает количество субагентов (скажем, 5 изначально). Каждый раз, когда ваш ресурс просят взять отдельный продукт, вы уменьшаете это число на 1. Вместо того, чтобы выбирать родительского агента, вы создаете отдельного нового агента рядом с позицией Rack и позволяете ресурсу его транспортировать (используя «поддельный» RackPick, который является просто блоком «MoveTo» для ресурса. Только когда numTaken родительского агента уменьшен до 1, ресурс возьмет фактического агента.

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

...