Um novo fluxo de processos no modelo

Nesta Parte III, acrescentaremos o serviço de atendimento pessoal à nossa agência bancária. O objetivo aqui é:

  • Identificar se 3 caixas de atendimento presencial são suficientes para atender a demanda.

A taxa de chegada de clientes na agência é a mesma da etapa anterior, mas alguns destes clientes preferem o atendimento presencial. Os parâmetros de entrada utilizados nesta etapa do exercício são:

  • 40% dos clientes preferem o atendimento no caixa eletrônico;

  • O restante (60%) é atendido por um dos 3 caixas disponíveis;

  • A duração média de atendimento presencial é de 5 min (em cada caixa), e a distribuição das durações também é exponencial.

A novidade nesta etapa do exercício é, além do processo de decisão do cliente quanto ao tipo de serviço desejado, a existência de 3 caixas que prestam o mesmo serviço (diferentemente da Parte II do tutorial, em que a fila bancária é atendida por um único caixa eletrônico). Usualmente, a representação de caixas de atendimento é feita por Recursos ou, na nomenclatura do AnyLogic, Resource Pool, pelos motivos que esclareço a seguir.

Quando se modela algum recurso escasso do sistema por meio do bloco Resource Pool, o AnyLogic encarrega-se da lógica de ocupar e desocupar o recurso, da coleta de estatísticas de ocupação e da geração de paralisações por quebras e/ou manutenções. Para aqueles já familiarizados com a simulação de agentes, o AnyLogic ainda permite configurar o Resource Pool como um Agente criado pelo usuário - com esta abordagem, o céu é o limite.

Um Resource Pool pode ser selecionado e ocupado pelo bloco Seize e liberado pelo bloco Release, ou isso tudo pode ser feito de maneira compacta pelo bloco Service, que já incorpora a sequência Seize-Delay-Release num único bloco.

Com o tempo, você vai notar que muitos blocos do AnyLogic são mera junção de outros ou mesmo herdeiros de outros blocos. Note, por exemplo, a similaridade entre os blocos da Process Modeling Library com os blocos da Pedestrian Library (biblioteca de pedestres):

Antes de começarmos, vamos abrir um espaço nos blocos, caso contrário ficará difícil visualizar alguma coisa (clique e arraste com o mouse a seleção de objetos):

Quando um cliente entra no banco, deve decidir se vai ao caixa eletrônico ou aos caixas normais. O bloco Select Output representa o processo de tomada de decisão:

Agora vamos representar o processo de atendimento dos caixas normais. Utilize um bloco Service para representar o processo, que já possui as regras de ocupação e desocupação do Resource Pool (caixas). Lembre-se de conectá-lo ao fluxo de clientes:

Não esqueça de preencher as propriedades do selectOutput: 40% dos clientes se dirigem ao caixa eletrônico:

Dica

Além do bloco Select Output, que permite apenas duas saídas, o AnyLogic possui o Select Output5, que permite até 5 saídas. Você precisa mais do que 5 saídas ou mesmo os conectores ficaram confusos e embaralhados? Neste caso, o AnyLogic tem um comando bem legal e genérico explicado aqui.