• Nenhum resultado encontrado

OTIMIZAÇÃO DA ESCALA DE ATENDENTES PARA UM CENTRO DE ATENDIMENTO

N/A
N/A
Protected

Academic year: 2021

Share "OTIMIZAÇÃO DA ESCALA DE ATENDENTES PARA UM CENTRO DE ATENDIMENTO"

Copied!
12
0
0

Texto

(1)

OTIMIZAÇÃO DA ESCALA DE ATENDENTES PARA UM CENTRO DE

ATENDIMENTO

Filipe Ferreira Mazzini, Bárbara Carvalho Pereira, Pierre Novis Mendonça

Petrobras SA

Rua Almirante Barroso, 81 / 19oandar, Centro, 20031-004

Rio de Janeiro, RJ

{filipemazzini,barbara.pereira,pierremendonca}@petrobras.com.br Andrea Nunes de Barros

Petrobras Distribuidora SA

Rua Barão de Mesquita 184, Tijuca, 20540-006 - Rio de Janeiro, RJ andrea@br-petrobras.com.br

RESUMO

Este trabalho aborda o problema de otimização da escala de atendentes do Centro de Atendimento (CA) da Petrobras Distribuidora. As principais características do problema são: número fixo de atendentes, custo fixo de operação, múltiplos serviços, atendentes com habilidades diferentes, jornada de trabalho flexível e banco de horas. O objetivo do prob-lema é maximizar a qualidade de serviço que é medida pelo tempo de espera e número de chamadas perdidas. A incerteza presente nos indicadores de qualidade de serviço sugere o uso de programação estocástica para o tratamento do problema. Como a resolução do problema estocástico de otimização de escala de atendentes seria computacionalmente in-viável, é proposta uma aproximação determinística do problema estocástico e a posterior avaliação da qualidade da solução via simulação do CA. Para resolver o problema aprox-imado é utilizada a técnica de algoritmo genético. Foram realizados testes preliminares e os resultados obtidos mostram um ganho significativo na qualidade de serviço atual. PALAVRAS-CHAVE. Centro de Atendimento, Algoritmo Genético, Simulação. Área principal: Metaheurística, Otimização.

ABSTRACT

This work addresses the call center scheduling and rostering problem for the Petrobras Distributor company. The problem main features are fixed staff size, fixed operation costs, multiple services, multiskill staff, flexible schedules and overtime buffer. The problem objective is to maximize the quality of service which can be measured by the waiting time and the number of lost calls. Maximize the quality of service leads to an stochastic programming problem which is too hard to solve. The proposed approach works with a deterministic approximation of the problem and evaluates the problem solution quality provided by the optimization via the call center simulation. The optimization problem is solved by genetic algorithm. The results produced by the first experiments show an improvement in the current quality of service.

PALAVRAS-CHAVE. Call Center, Genetic Algorithm, Simulation. Área principal: Metaheuristic, Optimization.

(2)

1. Introdução

Este trabalho trata o problema de otimização da escala de atendentes do centro de atendimento (CA) da Petrobras Distribuidora (BR). Este centro de atendimento é composto por um conjunto de atendentes que tem como objetivo realizar a prestação de múltiplos serviços por meio de atendimento telefônico. O principal serviço do CA é o serviço de venda de combustíveis. O tempo gasto para o atendimento de cada serviço varia de acordo com o atendente. Em média, cada atendente é capacitado para atender mais de um serviço e nem todo atendente está capacitado para atender todos os serviços. O número de atendentes do CA é fixo e todos são contratados segundo a Consolidação das Leis do Trabalho (CLT). O horário de atendimento do CA é das 7h da manhã até as 19h da noite, de segundas a sextas feiras. O horário dos atendentes é flexível, podendo variar a cada dia. Cada atendente tem sua jornada típica, que pode variar entre 4h ou 6h. A hora extra, conhecida como dobra, pode ser de no máximo 2h ao dia. Para um dia qualquer, a jornada de um atendente pode variar de 0h até o período equivalente à sua jornada típica mais a dobra máxima. O início da jornada pode acontecer em qualquer horário, desde que contido no horário de atendimento do CA. A diferença do horário entre a jornada realizada em um dia qualquer e sua jornada típica é contabilizada no banco de horas do atendente. Ao final do mês, o atendente precisa ter seu banco de horas zerado. Em outras palavras, ao final do mês não deve haver saldo positivo nem negativo no banco de horas. De acordo com a jornada do dia, o atendente deve realizar pausas para almoço, lanche e descanso.

O objetivo do CA é definir a escala de trabalho diária de cada atendente para um horizonte mensal de programação de forma a maximizar a qualidade de serviço do seu atendimento, considerando sua força de trabalho disponível. As principais características do problema são: número fixo de atendentes, custo fixo de operação, múltiplos serviços, atendentes com habilidades diferentes, jornada de trabalho flexível e banco de horas. Estas características fazem deste problema o mais complexo entre os problemas de escala de pessoal. Ernst et al. (2004) apresentam uma caracterização bastante ampla dos diferentes tipos de problema de escala de pessoal.

A abordagem utilizada para resolver o problema pode ser dividida em três etapas. A primeira consiste na modelagem de dados de demanda. O CA possui dados históricos de demanda para cada tipo de serviço, para cada dia da semana e para cada intervalo de 15min. As informações contidas em sua base são o tempo médio de atendimento e o número de chamadas recebidas. A partir destas informações são definidas curvas de distribuição para modelar os processos de chegada de chamadas e de duração destas. A segunda etapa con-siste em modelar o problema utilizando a técnica de Algoritmo Genético. Nesta etapa são definidos a codificação do problema, a função de avaliação e os operadores genéti-cos. A otimização é realizada a partir do valor esperado da demanda, caso contrário seria necessário realizar a simulação do processo de atendimento para cada indivíduo, o que se-ria inviável do ponto de vista prático. Para referência de tratamento explícito da qualidade de serviço no modelo de otimização veja Cezik e L’Ecuyer (2008). Portanto, a função de avaliação utilizada não trata a qualidade de serviço explicitamente. Na terceira etapa é realizada uma simulação para a avaliação da qualidade da solução obtida pela otimização com o Algoritmo Genético. Na simulação são avaliados os indicadores de tempo médio de espera e de chamadas perdidas. Uma revisão ampla sobre o tema centro de atendimento é apresentada em Gans et al. (2003).

O restante do artigo é organizado da seguinte maneira. Na seção (2) é apresentada a formulação matemática para o problema. Na seção (3) é apresentada a modelagem do

(3)

algoritmo genético utilizado na otimização. O modelo de simulação é apresentado em (4). Em (5) são apresentados resultados computacionais para um estudo de caso proposto. Encerrando o trabalho são apresentadas algumas conclusões em (6).

2. Formulação do Problema

A elaboração de escala otimizada de atendentes pode ser formulada como um problema de programação linear inteira mista. Seja A o conjunto de atendentes, S o con-junto de serviços, I o concon-junto de intervalos de 15min cada e J o concon-junto de dias que compõe o horizonte de programação.

O valor esperado para a demanda do serviço s no intervalo i para o dia j é dada por Dsi j. O valor de demanda é medido em número de intervalos de 15min. Por exemplo, seja

a duração média das chamadas do serviço s no intervalo i igual a 3min, seja o número de chamadas esperado para o intervalo igual a 10, a demanda deste intervalo seria 3×10/15 = 2. A jornada típica do atendente a é dada por JTa. A habilidade do atendente a para tratar

um serviço s é quantificada através de uma nota Na,satribuída ao par (a, s). O tempo gasto

para atender uma chamada é calculado como o tempo da chamada dividido pela nota do atendente. Desta forma, quanto maior a nota menor o tempo para atender uma chamada. Um atendente com nota 1 é capaz de atender a chamada no tempo previsto. O valor máximo da dobra de horário é representada pelo parâmetro Db.

As variáveis binárias yai je xai j definem, respectivamente, os intervalos de início e

término da jornada do atendente a no dia j. A variável contínua easi jé definida no intervalo

[0, 1] e representa a fração do tempo do atendente a referente ao intervalo i do dia j que é dedicada ao atendimento da demanda do serviço s. A variável auxiliar zsi j é utilizada para

definir a demanda não atendida.

Uma vez introduzidas as informações necessárias à formulação do modelo, este é definido por: Min

s∈S

i∈I

j∈J zsi j (1) sujeito a: zsi j≥ Dsi j−

a∈A Naseasi j, ∀s, i, j (2)

j∈J (

i∈I yai j× i −

i∈I xai j× i) = JTa× J, ∀a (3)

i∈I yai j× i −

i∈I xai j× i ≤ JTa+ Db, ∀a, j (4)

s∈S easi j≤ i

k=1 yak j, ∀a, i, j (5)

s∈S easi j≤ I

k=i xak j, ∀a, i, j (6)

i∈I yai j≤ 1, ∀a, j (7)

i∈I xai j

i∈I yai j, ∀a, j (8)

(4)

s∈S easi j ≤ 1, ∀a, i, j (9) yai j, xai j ∈ {0, 1}, ∀a, i, j (10) easi j ∈ [0, 1], ∀a, s, i, j (11) zsi j∈ ℜ+, ∀s, i, j (12)

A função objetivo (1) busca minimizar a demanda não atendida que é definida pelas restrições (2). O conjunto de restrições (3) garante que não haverá saldo no banco de horas ao final do horizonte de programação. As restrições (4) limitam a duração da jornada de um dia à duração da jornada típica mais a dobra. O conjunto (5) garante que o atendente a só pode atender um serviço s em i caso ele tenha iniciado a jornada em um intervalo k anterior ou igual a i. Para terminar de amarrar as variáveis y e e, o conjunto (6) garante que o atendente a só pode atender um serviço s em i caso ele encerre sua jornada em um intervalo k posterior ou igual ao intervalo i. As restrições (7) e (8) garantem que a jornada se inicie e seja encerrada em intervalos únicos. O conjunto (8) garante ainda que só sejam encerradas jornadas que foram iniciadas. Neste ponto é possível perceber que o modelo permite que um atendente a não trabalhe em um dia j. O conjunto (9) limita o o esforço do atendente a em cada intervalo.

3. Algoritmo

A solução do modelo de programação matemática apresentado na seção (2) uti-lizando pacotes comerciais como o CPLEX é computacionalmente inviável. Para resolver o problema de escala de pessoal em um tempo aceitável para o CA optamos pelo uso da técnica de Algoritmos Genéticos. Nossa experiência na empresa com essa técnica, bem como os trabalhos apresentados na literatura utilizando a mesma, nos permite fazer esta opção com segurança. A implementação do algoritmo foi realizada em C++ e foi utilizada a biblioteca GALib Wall (1999).

3.1. Representação

A modelagem adotada utiliza um esquema de representação indireta dos indiví-duos. Cada indivíduo é representado por um cromossomo com três segmentos distintos. O tamanho de cada segmento é dado pelo número de atendentes vezes o número de dias do horizonte de programação. A descrição de cada segmento é apresentada para o cenário mais simples com apenas um dia de programação.

O primeiro segmento é formado por um vetor de inteiros e seu conjunto de alelos é definido como o conjunto de intervalos I. O valor assumido pelo a-ésimo gene representa o intervalo i no qual o atendente a inicia sua jornada. A figura (1) mostra um exemplo para este segmento para o problema com 72 atendentes e 48 intervalos. Segundo a informação do segmento, o atendente 1 inicia sua jornada no intervalo 16, o atendente 2 no intervalo 0 e assim por diante. Como o início do horário de funcionamento do CA é as 7h e cada intervalo tem duração de 15min, o atendente 1 inicia sua jornada as 11h e o atendente 2 as 7h.

(5)

O segundo segmento também é formado por um vetor de inteiros, mas possui um conjunto de alelos diferente para cada gene. O conjunto de alelos de cada gene é definido no intervalo [0, JMa], onde JMaé o valor da jornada máxima para o atendente a. Este valor

é calculado como o valor da jornada típica mais o valor da dobra máxima. Como a jornada típica é definida de acordo com o atendente, faz-se necessária a utilização de conjuntos de alelos diferentes para cada gene. O valor assumido pelo a-ésimo gene representa a duração da jornada do atendente a em número de intervalos. A figura (2) mostra um exemplo para o segundo segmento. Neste exemplo, a jornada do atendente 1 é de 32 intervalos que é equivalente a 8h. Considerando que sua jornada típica é de 6h este atendente está realizando 2h de hora extra. O atendente 4 não trabalha neste dia, pois sua jornada é 0.

Figura 2. Segundo Segmento

O terceiro segmento é formado por uma lista ordenada onde o valor de cada gene é definido pelo conjunto de atendentes A. A lista é utilizada para estabelecer a ordem em que os atendentes são utilizados na decodificação do individuo. A figura (3) mostra um exemplo para o terceiro segmento. Neste exemplo o atendente 70 é o primeiro da lista, o atendente 23 é o segundo e assim por diante.

Figura 3. Terceiro Segmento 3.2. Decodificação

Para cada dia j de programação, um atendente a é selecionado de acordo com a ordem definida pelo terceiro segmento do cromossomo. A partir do atendente a é sele-cionado o serviço s cuja nota do atendente seja máxima. O início da jornada i e sua duração são obtidos a partir da a-ésima posição do primeiro e segundo segmentos do cromossomo respectivamente. Observa-se então qual a demanda Dsi j para o serviço s no intervalo i.

Havendo demanda, esta é alocada ao atendente a até o limite de sua capacidade. A ca-pacidade inicial de cada atendente em cada intervalo é 1. Ou seja, ele tem disponibilidade de 15min de atendimento no intervalo. Caso a capacidade não seja esgotada, passa-se ao próximo serviço de maior nota. Caso não haja mais capacidade disponível no intervalo, passa-se ao próximo intervalo. O algoritmo prossegue até que o atendente chegue ao tér-mino de sua jornada, dado pela soma do início mais a duração da mesma.

Finalizada a alocação da demanda no primeiro dia, o algoritmo é repetido para os demais dias. Ao longo do algoritmo é contabilizado o tempo de trabalho de cada atendente. Este tempo não pode ser superior ao produto de sua jornada típica vezes o número de dias de programação. Desta forma, quando o tempo de trabalho do atendente atinge este limite, o processo de alocação de demanda para o mesmo é encerrado passando-se para o próximo atendente. Isto garante que não haja saldo positivo para o banco de horas no final da programação.

(6)

3.3. Função de Avaliação

A função de avaliação utilizada para representar o objetivo do problema consiste em minimizar a demanda não atendida. Este valor é avaliado durante o processo de decod-ificação. Testes preliminares mostraram que, ao buscar este objetivo, o algoritmo gerava soluções onde os atendentes faziam horas extras desnecessariamente. Para exemplificar, considere dois atendentes A e B com as mesmas notas. Em algumas soluções, para um determinado dia da semana, o atendente A fazia 2h extras e o B tinha sua jornada reduzida em 2h. Em um outro dia da mesma semana, o inverso. Neste caso, ambos poderiam ter feito suas jornadas típicas nos dois dias. Para contornar este problema, foi adicionado à função de avaliação uma penalização para as horas extras.

3.4. Operadores Genéticos

A inicialização da população para os segmentos de inicio e duração da jornada foi realizada de duas formas. Uma parte da população foi inicializada a partir de uma heurís-tica e a outra parte de forma totalmente aleatória. A estratégia utilizada para inicializar a primeira é a seguinte. O início da jornada de um atendente a foi definido como um valor múltiplo da duração de sua jornada típica. Por exemplo, seja sua jornada típica 4h e o horário de atendimento de 7h as 19h. Os valores possíveis para o início da jornada são 7h, 11h e 15h. A duração da jornada deste mesmo atendente foi definida entre sua jornada típica e sua jornada máxima a partir de uma função de probabilidade. Quanto maior for a soma da demanda de todos os serviços no dia, maior será a probabilidade de escolha da jornada dobrada. A inicialização do segmento referente a ordem de decodificação dos indivíduos foi realizada apenas de forma aleatória.

Para os segmentos de início e duração da jornada foram utilizadas duas estraté-gias para o cruzamento com igual probabilidade de ocorrência. A primeira é o cruzamento uniforme, já implementado pela biblioteca. A segunda é o cruzamento aritmético, com im-plementação própria. Para evitar a formação de descendentes com a mesma carga genética a partir do cruzamento aritmético, foi atribuído aos descendentes do cruzamento frações entre 0,45 e 0,55 da soma do valor dos genes dos ascendentes. Para o segmento de ordem foi utilizado o cruzamento parcial, também implementado pela biblioteca.

A mutação utilizada para os dois primeiros segmentos foi baseada na seguinte heurística. Com igual probabilidade realiza-se uma perturbação positiva ou negativa no valor do gene. O valor da perturbação é definido de forma aleatória dentro do intervalo [0, 8]. Foram testados os operadores clássicos de mutação já oferecidos pela biblioteca mas o desempenho obtido não foi satisfatório. A mutação utilizada para o terceiro segmento foi a mutação de troca, também já implementada pela biblioteca.

4. Simulação

Esta etapa simula a operação do CA a partir da escala de atendentes gerada pelo AG. Na simulação são incorporadas as variáveis estocásticas referentes ao tempo de atendi-mento, à taxa de chegada de ligações e ao tempo entre estas chegadas. O objetivo da sim-ulação é avaliar o nível de serviço alcançado a partir da escala proposta. Desta forma, os resultados da simulação testam se o resultado do AG, que não incorpora as variabilidades inerentes ao problema nem a lógica de atendimento das chamadas, obtém um desempenho aceitável para um modelo mais próximo do sistema real. O nível de serviço é avaliado pelo tempo médio de espera das ligações e pelo número de ligações perdidas. O modelo foi desenvolvido no software de simulação PROMODEL.

(7)

Primeiramente, foi feita uma análise dos dados reais fornecidos pelo CA. Uti-lizando a ferramenta StatFit, foram obtidas as distribuições de probabilidade do tempo de atendimento de cada serviço. Cada vez que uma ligação é atendida, sorteia-se o tempo médio de atendimento de acordo com a distribuição de probabilidade. Este tempo é pon-derado pela nota do atendente para dar o tempo de atendimento efetivo da ligação. Com relação à taxa de chegadas de cada tipo de serviço, utilizou-se a distribuição de Poisson. Ressalta-se que como a formulação matemática do problema considerou um número es-perado de chamadas por intervalo de tempo de 15 minutos, a média da distribuição de Poisson pode ser diferente a cada intervalo. O intervalo entre as chegadas é dado por dis-tribuição Uniforme, com média e desvio-padrão iguais à 15 minutos (duração do intervalo de tempo) dividido pelo número esperado de ligações. Assim, uma ligação pode chegar junto da ligação anterior ou da posterior.

A distribuição das chamadas recebidas entre os atendentes é realizada pelo Dis-tribuidor Automático de Chamadas (DAC), que considera as notas normalizadas de cada atendente em cada serviço para realizar esta tarefa. A normalização é realizada de forma que a nota máxima em cada serviço sempre seja 10. Quando uma ligação é recebida, o DAC procura um atendente que tenha nota no intervalo de [10, 9) naquele serviço e, se não encontra nenhum disponível, procura um que tenha nota no intervalo de [9, 8). Se ainda as-sim não tiver nenhum disponível, a ligação espera 4 segundos e o DAC refaz a busca, mas desta vez procurando também um atendente com nota no intervalo de [8, 7). Não tendo sucesso nesta nova busca, a ligação espera mais 30 segundos e o DAC refaz a busca procu-rando qualquer atendente que tenha nota maior que zero, isto é, que seja apto para realizar aquele serviço. A partir de então, a ligação fica esperando até que possa ser atendida ou até atingir o tempo de tolerância, quando a ligação é perdida. O tempo de tolerância é diferente para cada serviço e foi definido de acordo com o os dados de funcionamento do CA. Nota-se que o DAC tenta Nota-sempre direcionar uma ligação para o atendente com maior habilidade. No caso em que duas ligações concorram para um mesmo atendente, será atendida aquela que está esperando há mais tempo. A figura (4) apresenta um diagrama da simulação com suas respectivas informações de entrada e saída.

Figura 4. Diagrama esquemático da simulação

5. Resultados Computacionais

Para realizar os primeiros testes com a abordagem de solução proposta foi definido um caso de teste a partir de dados reais da operação do CA. O caso de teste considerado inclui uma programação de 5 dias de trabalho, uma equipe de 72 atendentes e a oferta

(8)

de 7 serviços. A demanda Dsi j foi calculada como o produto do número de chamadas

recebidas no intervalo i vezes a duração média das chamadas do serviço s no intervalo dividido por 15min. Os dados são apresentados na tabela 1. É interessante observar a variação da demanda ao longo da semana, com maior concentração no início e no final da mesma. Ainda na mesma tabela é possível observar que o serviço 2 tem uma demanda muito superior aos demais serviços. O gráfico da figura 5 mostra a evolução da demanda durante todos os dias da semana para o serviço 2, que é o serviço de maior concentração de demanda. É possível observar um pico de demanda em torno das 9:30h e outro em torno das 17:30h. O perfil de distribuição da demanda para o CA varia muito com o dia da semana e com o horário do dia. Ele é também fortemente influenciado nas proximidades de feriados. Esta variação dificulta bastante a alocação dos atendentes.

SEG TER QUA QUI SEX Total S1 100,48 90,00 76,94 105,23 96,33 468,97 S2 585,16 479,34 480,93 549,70 549,41 2644,53 S3 129,61 102,43 89,15 121,18 103,90 546,27 S4 10,00 8,04 5,11 6,84 8,91 38,90 S5 61,06 57,85 47,90 54,14 62,75 283,70 S6 8,06 8,06 5,54 6,86 5,18 33,70 S7 226,02 202,74 182,53 203,71 224,08 1039,08 Total 1120,40 948,46 888,10 1047,66 1050,54

Tabela 1. Demanda por dia e por serviço

Figura 5. Demanda do serviço 2

A nota Na,s do atendente a para o serviço s foi definida como função da relação

entre o tempo que o atendente leva para atender uma chamada do serviço s e a média dos tempos de todos os atendentes para atender uma chamada daquele serviço. Por exemplo, se o tempo médio para atender uma chamada do serviço s é de 1min e o atendente a leva 1,1min para atender à chamada, sua nota é calculada como 1/1, 1 = 0, 91. As durações das jornadas típicas de cada atendente foram informadas pelo CA.

As parametrizações do algoritmo genético utilizadas são as seguintes. O tamanho da população foi de 150 indivíduos, o número de gerações foi 300, a taxa de reposição foi de 95%, a taxa de cruzamento foi também de 95% e a taxa de mutação foi variável,

(9)

iniciando em 0,1% na primeira geração podendo chegar a 1% na última geração. Para melhorar a qualidade da solução foi implementada uma estratégia de reinicialização do algoritmo mantendo os 10% melhores indivíduos. O número de reinicializações utilizado foi 5. Os pesos utilizados na função de avaliação foram 1 para a carga não atendida e 0,01 para o total de horas extras realizadas.

O caso de teste foi otimizado utilizando o sistema operacional Windows XP em um computador com um processador AMD Athlon 3500+ de 2.2GHz e 2GB de memória RAM. O tempo para otimização foi de 20min. Os resultados são apresentados na tabela 2. Como pode ser observado, a demanda não atendida é praticamente nula.

SEG TER QUA QUI SEX Total

S1 - - - -S2 0,34% - - - - 0,08% S3 - - - -S4 - - - -S5 - - - -S6 - - - -S7 - - - -Total 0,18% - - -

-Tabela 2. Percentual da demanda não atendida

Na escala obtida pelo AG, muitos atendentes não fecharam os seus bancos de horas, havendo portando sobras em seus horários que podem ser alocadas a atividades internas. Isto acontece porque o perfil de demanda varia fortemente ao longo do dia e da semana. Na prática, os atendentes alocados em atividades internas podem atender a chamadas externas em caso de filas muito longas no DAC.

Para definir a alocação das sobras do banco de horas de cada atendente foi im-plementada um algoritmo. A idéia do algoritmo consiste em ordenar, para cada atendente, os dias de menor jornada de trabalho. As horas restantes no banco são alocadas em cada dia até que a duração da jornada alcance a duração da jornada típica. A alocação desta horas restantes é feita no início ou término da jornada, tendo prioridade os intervalos onde a demanda for maior. A figura (7) do apêndice A apresenta a escala otimizada sugerida pelo algoritmo genético. As cores amarelo, verde e vermelho indicam, respectivamente, quando a duração da jornada é inferior, igual ou superior à duração da jornada típica. A figura mostra que houve uma maior concentração de horas extras nos dias de maior de-manda, a saber, segunda, quinta e sexta. Este resultado indica a coerência da solução.

Para avaliar a qualidade da escala de atendentes obtida com o AG foi utilizado o modelo de simulação proposto em (4). A análise dos dados do tempo de atendimento resultou em alguns tipos de distribuições de probabilidade, entre elas LogNormal, Gama, LogLogística e Weibull. A figura (6) mostra a curva de distribuição de probabilidade es-colhida para o serviço 2 gerada pelo StatFit. Foram realizadas 10 replicações da simulação. A tabela (3) mostra o percentual de ligações perdidas por serviço. O serviço que teve a maior perda de ligações foi o S1 com apenas 0,87% de ligações perdidas. A tabela (4) apresenta uma comparação do número de ligações perdidas por serviço entre a alocação proposta pelo algoritmo genético e a alocação realizada no CA. Os resultados mostram um ganho significativo para quase todos os serviços. A exeção é serviço S4 cuja piora em valor absoluto não corresponde nem a uma chamada.

(10)

Figura 6. Distribuição para o tempo de atendimento do serviço 2

Serviço Ligações Recebidas Ligações Perdidas % Ligações perdidas

S1 2.372 20,7 0,87% S2 18.293 16,6 0,09% S3 2.586 8,8 0,34% S4 344 2,7 0,79% S5 1.686 2,8 0,17% S6 286 0,6 0,21% S7 6.420 6,1 0,10%

Tabela 3. Ligações perdidas

obtido pela alocação proposta pelo AG e aquele obtido pela alocação utilizada pelo CA. Os resultados mostram uma redução dos tempos de espera em 25% ou mais para todos os serviços, chegando a 44% para o serviço S1. A redução do tempo de espera é um objetivo importante, pois impacta diretamente no nível de serviço percebido pelos clientes. Pelos resultados é possível concluir que a solução por AG é bastante promissora.

6. Conclusões

Foi proposta uma abordagem de otimização determinística da escala de atendentes do centro de atendimento da Petrobras Distribuidora com o objetivo de maximizar a quali-dade de serviço prestado. Os resultados da simulação mostraram que a abordagem proposta alcançou níveis desejados para ambos os indicadores de tempo de espera e ligação perdida, proporcionando uma melhora significativa dos atuais níveis de serviço praticados pelo CA. O tempo de processamento também ficou dentro do aceitável.

Os resultados obtidos com estes testes preliminares sinalizam que a abordagem

Serviço AG Real AG/Real S1 20,7 52 39,81% S2 16,6 24,5 67,76% S3 8,8 14 62,86% S4 2,7 2,2 122,73% S5 2,8 6,4 43,75% S6 0,6 1 60,00% S7 6,1 7,6 80,26%

(11)

Serviço AG Real AG/Real S1 5,4 12,1 44,2% S2 3,2 4,2 75,5% S3 6,5 8,9 73,3% S4 11,4 15,1 75,5% S5 4,4 8,1 54,5% S6 2,6 3,6 72,9% S7 2,9 4,0 74,0%

Tabela 5. Tempo médio de espera - AG x Real

proposta é bastante promissora, nos permitindo dar continuidade ao trabalho. Os próximos passos incluem atividades em três frentes, sendo elas o aperfeiçoamento da abordagem de solução, o desenvolvimento de um módulo para previsão de demanda e o desenvolvimento do sistema propriamente dito. Na primeira frente serão realizados novos testes para outros períodos com o objetivo de avaliar a robustez do método diante da variação da demanda. Na segunda, estão sendo realizados alguns ensaios de modelagem para previsão de demanda utilizando diferentes técnicas. Estão sendo consideradas as técncias de ajuste de curvas por mínimos quadrados e redes neurais. A ferramenta de previsão de séries temporais Forecast Pro também esta sendo utilizada. Por fim, na terceira frente será desenvolvido um sistema incluindo interface para o usuário e banco de dados.

Referências

Cezik, M. T. e L’Ecuyer, P. (2008), “Staffing Multiskill Call Centers via Linear Program-ming and Simulation”, MANAGEMENT SCIENCE 54(2), 310–323.

URL: http://mansci.journal.informs.org/cgi/content/abstract/54/2/310

Ernst, A. T., Jiang, H., Krishnamoorthy, M. e Sier, D. (2004), “Staff scheduling and roster-ing: A review of applications, methods and models”, European Journal of Operational Research 153(1), 3–27.

Gans, N., Koole, G. e Mandelbaum, A. (2003), “Telephone call centers: tutorial, review, and research prospects”, Manufacturing & Service Operations Management 5(2), 79– 141.

Wall, M. (1999), A C++ Library of Genetic Algorithm Components, version 2.4.7 ed, Massachusetts Institute of Technology.

(12)

A. Apêndice

Referências

Documentos relacionados

A Lei nº 2/2007 de 15 de janeiro, na alínea c) do Artigo 10º e Artigo 15º consagram que constitui receita do Município o produto da cobrança das taxas

• A Revolução Industrial corresponde ao processo de industrialização que teve início na segunda metade do.. século XVIII no

Coordenações Gerais, Divisões de Atendimento, Divisões de Atendimento, Atendentes, Unidades Atendentes, Unidades Ministeriais, Municípios e Ministeriais, Municípios e tipos

Os maiores coeficientes da razão área/perímetro são das edificações Kanimbambo (12,75) e Barão do Rio Branco (10,22) ou seja possuem uma maior área por unidade de

Com os recursos da Ação, as demais Ações foram apoiadas para o desenvolvimento e aperfeiçoamento de novos produtos de geração de informações meteorológicas, voltados

Os profissionais devem realizar seus serviços dentro dos mais altos padrões de qualidade e dos princípios da ética/bioética, tendo em conta que a responsabilidade da atenção à

No Código Civil de 1916, o companheiro não era tido com herdeiro e seus direitos sucessórios apenas encontraram fundamento em 1988, com o artigo 226, §3º

SUBTITLE – Para acessar o menu do sistema referente ao idioma da legenda ZOOM – Amplia a imagem na tela da TV VOCAL – Permite escolher os canais de áudio ou os métodos de