Могу ли я ограничить количество отправляемых на станцию ​​товаров через конвейер? - PullRequest
0 голосов
/ 30 октября 2019

Я новичок в AnyLogic, поэтому, пожалуйста, простите, если это простой вопрос!

У меня есть блок selectoutput. Исходя из этого, если ложно, я хочу, чтобы агент перемещался через транспортный блок к станции 1 (из «текущей позиции» в «станцию ​​1»). Но перед тем, как агент отправится на транспортный блок для поездки на станцию ​​1, я хочу проверить, есть ли на станции 1 более 3 агентов, ожидающих ее (с 1 агентом на станции, так что всего 4). Если ожидают более 3 агентов, я хочу, чтобы текущий агент вообще пропустил станцию.

Я попытался добавить ограничение 1 на нарисованную станцию ​​с разметкой пространства вместе с добавлением очереди с емкостью 3в блок-схему непосредственно перед блоком переноса, но очередь, кажется, ничего не делает вообще.

TIA для любой помощи!

Отрывок потока материала

Настройки очереди

Настройки конвейера

Вид разметки пространства

1 Ответ

0 голосов
/ 31 октября 2019

добро пожаловать в SOF.

Звучит так, будто вам просто нужно добавить SelectOutput между вашим существующим SelectOutput false выходом и блоком транспортировки. В этом новом вы проверяете, сколько агентов уже есть на станции и на конвейере. Если оно больше / равно 4, вы обходите его, иначе вы заставляете агента передавать его туда.

Вы также можете поиграть с блоками Restricted Area Start/End, которые "оцепляют", и областью вашего потока, если их слишком много. агенты внутри (проверьте помощь). Но для обхода вам все равно понадобится еще один SelectOutput блок.

cheers

...