Acessibilidade / Reportar erro

Determinação de escalas de plantão para militares considerando preferências e hierarquia

Resumos

O objetivo deste artigo é apresentar um modelo matemático de Programação Linear Inteira Binária (PLIB) para resolver o problema de escalas de trabalho para o serviço de guarda de soldados (militares) da Aeronáutica, de forma a definir os dias de serviço de guarda de cada militar, levando em consideração as suas preferências e as leis da hierarquia militar. Para a implementação e resolução do referido modelo, foi desenvolvido um programa computacional que serve como interface entre o usuário e o software LINGO, utilizado para resolver o modelo de PLIB. Para validar o modelo, várias simulações foram realizadas variando-se o número de militares, os seus pesos (graus de prioridade), as demandas diárias, os tipos de escalas e a possibilidade de se ter militares de sobreaviso. Os resultados foram bastante satisfatórios, comparando-se as escalas otimizadas com as escalas em uso por ocasião da coleta de dados (obtidas empiricamente). O modelo matemático apresentado pode ser facilmente adaptado e aplicado para outras forças armadas, se for o caso, já que todas elas possuem características semelhantes.

programação linear inteira binária; procedimento de otimização; escalas de trabalho


The goal of this paper is to present a Binary Integer Linear Programming (BILP) model to solve a AIR FORCE soldiers rostering problem in order to define duty service days for each soldier, considering his or her preferences and military hierarchy rules as well. For the formulation and solving of the BILP problem, a computational program has been developed to serve as an interface between the user and LINGO software, which was used to solve the BILP model. In order to validate the model, many simulations were conducted, using different number of soldiers, weights (priority degrees), daily demands, scales types and the eventual need for having soldiers on call. The results were considered acceptable, by comparing the optimized scales with the ones in use on the occasion of the data collection (those were based on worker's experience). The mathematical model developed can easily be adapted and applied to any kind of military force, due to their similar characteristics.

binary integer linear programming; optimization procedure; rostering


Determinação de escalas de plantão para militares considerando preferências e hierarquia

Tânia Cordeiro Lindbeck da SilvaI; Maria Teresinha Arns Steiner* * Corresponding author / autor para quem as correspondências devem ser encaminhadas , II; Celso CarnieriII; Arinei Carlos Lindbeck da SilvaII

IEscola Técnica da Universidade Federal do Paraná, Curitiba – PR

IIDepto. de Matemática e Programa de Pós-Graduação em Métodos Numéricos em Engenharia (PPGMNE), Universidade Federal do Paraná (UFPR), Curitiba – PR, tere@mat.ufpr.br

RESUMO

O objetivo deste artigo é apresentar um modelo matemático de Programação Linear Inteira Binária (PLIB) para resolver o problema de escalas de trabalho para o serviço de guarda de soldados (militares) da Aeronáutica, de forma a definir os dias de serviço de guarda de cada militar, levando em consideração as suas preferências e as leis da hierarquia militar. Para a implementação e resolução do referido modelo, foi desenvolvido um programa computacional que serve como interface entre o usuário e o software LINGO, utilizado para resolver o modelo de PLIB. Para validar o modelo, várias simulações foram realizadas variando-se o número de militares, os seus pesos (graus de prioridade), as demandas diárias, os tipos de escalas e a possibilidade de se ter militares de sobreaviso. Os resultados foram bastante satisfatórios, comparando-se as escalas otimizadas com as escalas em uso por ocasião da coleta de dados (obtidas empiricamente). O modelo matemático apresentado pode ser facilmente adaptado e aplicado para outras forças armadas, se for o caso, já que todas elas possuem características semelhantes.

Palavras-chave: programação linear inteira binária; procedimento de otimização; escalas de trabalho.

ABSTRACT

The goal of this paper is to present a Binary Integer Linear Programming (BILP) model to solve a AIR FORCE soldiers rostering problem in order to define duty service days for each soldier, considering his or her preferences and military hierarchy rules as well. For the formulation and solving of the BILP problem, a computational program has been developed to serve as an interface between the user and LINGO software, which was used to solve the BILP model. In order to validate the model, many simulations were conducted, using different number of soldiers, weights (priority degrees), daily demands, scales types and the eventual need for having soldiers on call. The results were considered acceptable, by comparing the optimized scales with the ones in use on the occasion of the data collection (those were based on worker's experience). The mathematical model developed can easily be adapted and applied to any kind of military force, due to their similar characteristics.

Keywords: binary integer linear programming; optimization procedure; rostering.

1. Introdução

O presente artigo aborda o problema de escala de funcionários aplicado ao serviço de plantão de soldados da aeronáutica (militares), através da construção de um modelo matemático de Programação Linear Inteira Binária (PLIB). Este modelo leva em consideração o número de militares disponíveis, as demandas diárias, o tipo de escala em vigência, a necessidade de se ter militares de sobreaviso, a sua hierarquia e, principalmente, as preferências dos militares com relação aos dias de plantão, visando melhorar o nível de satisfação dos mesmos. A função objetivo do modelo maximiza estas preferências, obedecendo os níveis hierárquicos dos militares, sendo que todas as demais informações são consideradas nas restrições do modelo.

A obtenção da escala de trabalho otimizada é obtida com a resolução do referido modelo matemático que, neste artigo, é feita com a utilização do software LINGO 6.0 (Language for Interactive General Optimizer). Através da comparação das escalas de trabalho otimizadas com as escalas de trabalho em uso, obtidas empiricamente por ocasião do levantamento das informações necessárias, fica evidenciada a importância da Pesquisa Operacional na resolução deste tipo de problema.

O problema de fazer a designação de tarefas de um dado período de tempo a funcionários, tal que todas as tarefas sejam cobertas por algum funcionário e que, além disso, cada designação satisfaça algumas restrições, é um problema conhecido na literatura como problema de rostering na sua forma geral, conforme Bianco et al. (1992). A referida designação é chamada de roster, sendo que cada roster exige um funcionário para todo o período em estudo e, ainda, somente um subconjunto de dias do referido período de tempo pode ser coberto por um roster. Por exemplo, em um horizonte de tempo semanal (7 dias), o conjunto ordenado {5, 6, 7, 1, 2} representa um roster cobrindo os dias entre 5ª e 2ª-feira. É claro que apenas um número limitado de tipos de rosters existe, cada um dependendo dos dias inicial e final de trabalho. Além disso, um tempo de descanso mínimo deve ser permitido entre 2 tarefas consecutivas pertencentes ao mesmo roster. Finalmente, a carga de trabalho (soma dos tempos de trabalho das tarefas cobertas) designada aos rosters deve ser homogênea.

Segundo Caprara et al. (1998), o problema de rostering mais conhecido e discutido na literatura é o problema de designação de tripulações (Crew Rostering Problem – CRP) que objetiva determinar uma seqüência ótima de um dado conjunto de tarefas em rosters, satisfazendo restrições operacionais advindas de contratos e regulamentações de companhias. Dentre os problemas de CRP, os referidos autores mostram uma aplicação para uma companhia de via férrea italiana, onde o objetivo principal é minimizar o número de tripulantes para executar as tarefas. Os autores propõem um modelo geral projetado especificamente para este tipo de aplicação e também algoritmos heurísticos.

O problema de rostering estudado por Bianco et al. (1992), a determinação de escala de trabalho para motoristas de ônibus, consiste em achar uma combinação de mínimo custo de diferentes tipos de rosters com restrições de controle de tempos inicial e final de cada roster e assegurando um tempo mínimo de descanso entre 2 dias de trabalho consecutivos. Para isso, eles apresentam a formulação matemática de Programação Inteira do problema e um algoritmo heurístico iterativo que permite balancear os dias de trabalho entre os rosters.

Barboza et al. (2003) propõem uma solução para a elaboração de horários de atendentes em uma central telefônica e a posterior designação dos funcionários para os mesmos, através da construção de um modelo de Programação Linear Inteira e do Algoritmo para a resolução do problema do Matching de Peso Máximo, respectivamente. Em Siqueira et al. (2000), é mostrada a aplicação do Algoritmo para a resolução do problema do Matching de Peso Máximo na elaboração de jornadas de trabalho para motoristas e cobradores de ônibus.

Mason & Nielsen (1999) desenvolveram um sistema para resolver automaticamente problemas de escalas de serviço; o referido sistema utiliza técnicas de otimização por restrições, mais especificamente, uma formulação generalizada de particionamento do conjunto de escala que é resolvida utilizando Programação Linear e métodos Branch-and-Bound. Popova & Morton (1998) propõem um modelo de programação para a elaboração de escalas de funcionários combinando técnicas estatísticas bayesianas, de programação estocástica e de simulação.

Constantino (1997) apresenta um modelo de geração de escala cíclica para aplicação em uma empresa de transporte ferroviário de carga. Kusumoto (1996) desenvolveu um sistema de programação de horários para enfermeiras, fazendo uso de bibliotecas do ILOG SOLVER 3.0; já Lau & Lua (1997) propõem uma abordagem de programação por restrição para a solução de problemas de designação de tripulação.

A descrição e as características do problema de rostering abordado neste artigo estão apresentadas na seção 2 a seguir. Já a construção do modelo matemático de PLIB é feita na seção 3, sendo que o detalhamento e exemplificação de cada passo podem ser encontrados em Silva (2002). Na seção 4 são analisados os casos de necessidade de alterações na escala de trabalho já definida, fazendo com que as mesmas envolvam o menor número possível de militares, minimizando os possíveis transtornos para os mesmos. Várias simulações executadas, variando-se as informações consideradas no modelo matemático, são apresentadas na seção 5, validando o modelo matemático. Finalmente, na seção 6 são apresentadas as conclusões.

2. Descrição do Problema

As Forças Armadas do Brasil, essenciais à execução da política de segurança nacional, são constituídas pela Marinha, pelo Exército e pela Aeronáutica, e destinam-se a defender a Pátria e garantir os poderes constituídos, a lei e a ordem. São instituições nacionais, permanentes e regulares, organizadas com base na hierarquia e na disciplina, sob a autoridade suprema do Presidente da República e dentro dos limites da lei (Estatuto dos Militares, Título I, Cap. I).

Segundo a lei número 6.880, de 09 de dezembro de 1980, que dispõe sobre o Estatuto dos Militares, tem-se que "a hierarquia e a disciplina são a base institucional das Forças Armadas. A autoridade e a responsabilidade crescem com o grau hierárquico. A hierarquia militar é a ordenação da autoridade, em níveis diferentes, dentro da estrutura das Forças Armadas. A ordenação se faz por postos ou graduações; dentro de um mesmo posto ou graduação se faz pela antiguidade no posto ou graduação".

A Aeronáutica é composta, de uma forma geral, pelo Círculo de Oficiais e pelo Círculo de Praças. O presente artigo se atém ao problema dos praças: Soldado de Primeira-Classe e Soldado de Segunda Classe, chamados simplesmente de soldados da aeronáutica ou, ainda, militares.

Todos os militares têm um tipo de serviço chamado de administrativo. Neste serviço, normalmente, eles obedecem a um horário como o de qualquer outro trabalhador, trabalhando de 2ª a 6ª-feiras, das 8:00 às 19:00 h. No entanto, eles devem cumprir também, um outro tipo de horário, chamado de horário de guarda ou de plantão, em que devem trabalhar 24 horas ininterruptamente. Em geral, esta escala especial de serviço inicia e termina às 9:00 h da manhã.

Por ocasião da coleta das informações para o desenvolvimento do trabalho, a escala de guarda ou de plantão era feita manualmente, o que acarretava um trabalho de até 2 dias para ser concluída. Além disso, a grande maioria dos militares ficava insatisfeita com os resultados que, em geral, não atendiam as suas preferências. Um problema adicional é que se um militar faltava ao serviço de guarda, não havia um critério definido para a sua substituição sendo que, em geral, o militar que se encontrava em plantão, permanecia por mais um dia para cobrir a falta.

As características básicas que devem ser conhecidas sobre este serviço, além das já mencionadas anteriormente, para a construção do modelo matemático de PLIB, estão listadas a seguir:

• o tempo de trabalho pelo tempo de folga mínimo deve seguir uma das seguintes opções: (24/24 – 24/48 – 24/72 – 24/96...), ou seja, em (24/24) o militar cumpre guarda durante um dia (24 horas) e folga por um dia (24 horas); em (24/48) o militar cumpre guarda por um dia (24 horas) e folga por dois dias (48 horas) e assim por diante. Para um bom desenvolvimento do serviço do militar, é de interesse que o cumprimento de guarda seja no mínimo na escala (24/72), ou seja, se ele cumpre guarda por um dia e não cumprirá guarda no mínimo nos três dias seguintes para que o seu período de descanso seja adequado;

• o militar, preferencialmente, não deve cumprir guarda em finais de semana seguidos, ou seja, é desejável que o militar que cumpre guarda em um sábado ou em um domingo de uma determinada semana, não o cumpra novamente no final de semana seguinte;

• o militar, preferencialmente, não deve trabalhar mais do que um número determinado de finais de semana por mês. Considerando que um determinado mês tenha 5 finais de semana, o cumprimento de guarda deve ficar limitado a 3 finais de semana; já em um mês com 4 finais de semana, não mais do que 2 finais de semana podem ser de guarda para o militar;

• o trabalho de cada militar não pode exceder a uma carga mensal de dias de guarda. Cada militar deve ter um número fixo de dias nos quais deve cumprir guarda em um mês; este número depende do número de militares disponíveis para trabalhar;

• a demanda diária de militares deve atender a exigência do serviço, sendo que, em geral, é uma quantidade fixa. Apenas em casos especiais como, por exemplo, no caso da presença de uma autoridade, o número de militares de guarda pode ser maior;

• a escolha de dias de trabalho pelos militares obedecendo aos critérios de hierarquia, sempre que possível, deve ser atendida.

3. Construção do Modelo Matemático

A construção do modelo matemático para a composição da escala de serviço de guarda, apresentada nas subseções 3.1 a 3.6 a seguir, leva em consideração os seguintes aspectos:

• inicialmente, é verificado o número necessário e disponível de militares; a existência (ou não) de carga especial de trabalho para determinados militares e o tipo de escala necessário para o mês;

• depois, é verificado o problema dos finais de semana, a fim de se evitar o trabalho em finais de semana seguidos e, também, que fosse ultrapassado o número máximo de finais de semana a serem trabalhados no mês;

• a fim de se evitar que alguma das restrições fosse violada ao se passar de um mês para outro, é criado um vínculo do mês atual com o mês anterior, considerando o último dia trabalhado e o último final de semana trabalhado pelo militar no mês anterior;

• finalmente, considerando a hierarquia dos militares, é definida a função objetivo do modelo, ou seja, maximizar o nível de escolha dos dias em que os militares preferem trabalhar no plantão.

A partir da seção 3.2 é apresentada a construção do modelo matemático para o problema; na seção introdutória, 3.1, é apresentado um glossário para facilitar o entendimento do problema.

3.1 Glossário

O glossário para o problema em questão é o seguinte:

dj= demanda de militares no dia j;

ej = demanda aumentada de militares no dia j;

m = cardinalidade do conjunto de militares com carga especial;

mdt = mínimo de dias trabalhados no plantão;

n = valor auxiliar para a definição de sábados e domingos (Tabela 1 apresentada na seção 3.5);

nc = número de militares sem carga especial;

nfs = número de finais de semana;

nm = número de militares disponíveis no período;

nmp = número de militares necessários no período;

nmpe = número de militares necessários em período especial;

nd = número de dias do período a ser analisado;

nd1 = fator de escala a ser considerado;

nsab = número máximo de sábados que o militar pode trabalhar no período;

ndom = número máximo de domingos que o militar pode trabalhar no período;

nfim = número máximo de finais de semana que o militar pode trabalhar no período;

nij = preferência do militar i pelo dia j;

pi= peso associado ao militar i;

qi= quantidade de dias trabalhados pelo militar i no período considerado;

qmt = quantidade de militares que trabalharão um dia a mais;

qEsi= dias nos quais o militar i gostaria de trabalhar;

qExi = dias nos quais o militar i não gostaria de trabalhar;

ri= oferta extra incluída para cada militar i;

udt = diferença entre o último dia do mês e o último dia trabalhado pelo militar.

3.2 Cálculos Preliminares

Denotando-se por dja necessidade de militares no dia j, e por nd o número de dias do período a ser analisado, então a necessidade de militares em trabalho neste período é dada por nmp.

Sendo nm o número de militares disponíveis e mdt o mínimo de dias trabalhados no plantão, com ëbû representando o maior inteiro menor ou igual a b, a determinação do número mínimo de dias a ser trabalhado por cada militar é dada por mdt.

logo,

Chamando de qia quantidade de dias trabalhados pelo militar i, tem-se que:

assim sendo, a quantidade de militares que trabalharão um dia a mais no período considerado, é dada por qmt.

Sendo E = {i1, i2,...im} o conjunto dos militares que possui carga especial de trabalho, onde m é a cardinalidade de E, e CG = {qi1, qi2,...qim} o conjunto de suas cargas correspondentes, com m < nm, a expressão que define os militares que possuem nova carga de trabalho é dada por nc.

Nesta nova carga serão considerados (nm – m) militares, e, conseqüentemente, para uma análise da carga dos militares restantes, ter-se-á analogamente às expressões anteriores, as expressões apresentadas a seguir.

3.3 Variáveis de Decisão

As variáveis de decisão para este problema podem ser definidas através das variáveis binárias:

3.4 Restrições Associadas aos Dias Úteis da Semana

As restrições de oferta podem ser escritas como em (1),

garantindo que nenhum militar irá trabalhar mais do que a sua carga limite de plantão. As restrições de demanda podem ser escritas como em (2),

garantindo que a demanda será atendida em todos os dias do período considerado.

Considerando A/B os tipos de escala, com A = 24h e B as horas de folga (24, 48, 72,...), tem-se, o que passar-se-á a chamar de fator de escala nd1.

Assim sendo, supondo que um militar i inicia seu trabalho no dia j do mês, têm-se, na inequação (3) a seguir, as restrições que fazem com que o militar trabalhe de acordo com o fator de escala nd1.

3.5 Restrições Associadas aos Finais de Semana

Para o problema do equacionamento dos finais de semanas ao modelo matemático, considere-se S como sendo o primeiro sábado de um determinado mês. Assim sendo, têm-se na Tabela 1 os dias do mês, de forma generalizada, para os sábados e domingos.

onde (1 < S + n < nd) , onde n está representado os valores –6, +1, +8, +15, +22 e +29 contidos na Tabela 1.

Assim sendo, se o primeiro sábado do mês ocorrer no dia 5 (S = 5), então, pela Tabela 1, os demais sábados ocorrerão nos dias 12, 19 e 26 e os domingos ocorrerão nos dias 6, 13, 20 e 27. Neste caso, S + 28 = 5 + 28 = 33, assim como S – 6 = 5 – 6 = –1; S + 29 = 5 + 29 = 34 são dias não considerados para o sábado e domingos, respectivamente, pois não estão contidos no intervalo definido para (S + n).

A restrição que representa, por exemplo, que o militar i só pode trabalhar um domingo no mês, é dada por:

Assim sendo, se nsab é o número máximo de sábados que o militar i pode trabalhar no mês, tem-se a restrição (4).

Da mesma forma, sendo ndom o número máximo de domingos que o militar i pode trabalhar no mês, tem-se a restrição (5).

Sendo nfim o número máximo de finais de semana que o militar i pode trabalhar no mês, tem-se a restrição (6).

Também se faz necessária uma restrição que inviabilize o trabalho em finais de semana consecutivos, quando for o caso. Isto pode ser obtido através das seguintes restrições apresentadas em (7).

Além disso, existe a necessidade de um vínculo do mês atual com o mês anterior que pode ser obtido através das informações do último dia trabalhado no mês anterior e do último final de semana do mês anterior.

Para isso, seja udt o valor que representa a diferença entre o último dia do mês e o último dia trabalhado pelo militar. Assim, se o militar trabalhou no último dia do mês anterior, então udt = 0; se trabalhou no penúltimo dia do mês anterior, udt = 1, e assim por diante.

Considerando o fator de escala dado por nd1, se

udt>nd1–1

então nenhuma restrição adicional deve ser considerada no modelo. Caso contrário, se

udt< nd1–1ss

então a restrição (8) deverá ser considerada.

evitando-se a violação do fator de escala.

Um raciocínio semelhante deve ser utilizado para considerar os finais de semana, porém só será levado em consideração o fato do militar ter ou não trabalhado no último final de semana do mês anterior, visto que a quantidade de finais de semana trabalhados está restrita unicamente ao mês. Neste caso, faz-se simplesmente a pergunta: o militar i trabalhou o último final de semana do mês anterior? Se a resposta for afirmativa, deve-se incluir a restrição (9) a seguir.

Se a resposta for negativa, então nenhuma restrição adicional deve ser considerada, mesmo quando o primeiro sábado do mês cair no dia 7, pois a garantia de que não haverá trabalho para este militar no dia 1º (domingo) do mês é dada pela restrição (8) acima.

3.6 Construção da Função Objetivo

Com base na hierarquia militar, a preferência deve ser dada aos militares mais antigos. A cada militar estará associado um peso, pi, que representa o grau de prioridade em relação aos demais, ou seja, tanto maior será este peso, quanto mais antigo for o militar. Tal peso será utilizado na função objetivo multiplicando uma determinada preferência diária do militar i pelo dia j, nij.

Cada militar indica qEs dias nos quais gostaria de trabalhar e uma outra quantidade qEx de dias nos quais não gostaria de trabalhar. Como o militar trabalha poucos dias durante o mês, em geral, a quantidade de dias de escolha para trabalhar será maior que a quantidade de escolha de dias para não trabalhar.

Considerando os valores:

a expressão

xij · pi· nij

representará um nível de escolha do militar i em relação ao dia j considerando sua hierarquia dentro da estrutura.

O objetivo para o problema em questão é maximizar este nível de escolha. Assim sendo, a função objetivo pode ser representada da seguinte forma:

Assim sendo, tem-se que o modelo matemático para o problema é dado, até o momento, pelo conjunto de restrições de (1) a (9) e pela função objetivo dada por (10). Tem-se desta forma (nd . nm) variáveis de decisão e um número de restrições no mínimo igual a [nm + nd + (nd – nd1 + 1) nm + 3nm (nfs)].

4. Alteração Pós-Otimização – Escala com Sobreaviso

Um problema adicional a ser considerado é o caso de um determinado militar faltar após a escala dos militares já estar definida pelo modelo matemático apresentado na seção 3. Quando isto ocorre, visto que a exigência da quantidade de militares deve ser cumprida, a solução atualmente praticada é a de fazer um dos militares que deveria sair de serviço permanecer em plantão por mais um dia, conforme já comentado. Tal situação é extremamente desgastante para o militar que é retido para cobrir este serviço. A única compensação que o militar recebe é a de cumprir um dia a menos no mês seguinte.

Uma outra alteração possível de ocorrer é a falta de um militar por um longo período de tempo, provocada por afastamento para treinamento ou por motivo de doença. Quando isto ocorre, a solução atual adotada é a de refazer toda a escala, e, conseqüentemente muitos militares terão suas vidas "atrapalhadas", devido a outros compromissos assumidos, por esta alteração não prevista.

Para minimizar o número de alterações na escala de trabalho já definida (já otimizada pelo modelo matemático), uma possibilidade é a de resolver o modelo novamente considerando um número menor de militares, excluindo-se os ausentes por necessidade, somente para o período faltante. Os pesos atribuídos a cada militar seriam iguais, e para a escolha dos dias de preferência, seriam considerados os dias em que o militar foi indicado para trabalhar e, como dias de não escolha, os dias marcados na determinação do problema original (antes da alteração).

Com o objetivo de facilitar o gerenciamento de faltas de pessoal, pode-se adotar uma estratégia diferenciada para a obtenção das escalas de serviço da forma apresentada a seguir: a cada dia do período a ser atendido, a demanda seria aumentada em um valor ej (inteiro), desde que este valor possa ser viável para cobrir o serviço de plantão com os militares disponíveis. O militar que fica a disposição para cobrir esta demanda é dito de sobreaviso.

O problema seria resolvido para esta nova demanda diária (dj + ej), existindo então a possibilidade de uma cobertura extra de militares, caso alguém faltasse. No caso de uma falta individual por um único dia, o militar mais novo em sobreaviso seria chamado. No caso de falta prolongada, o militar faltante é coberto pelo militar mais novo de sobreaviso no dia.

O militar que está de sobreaviso naquele dia não ganha a vantagem de não trabalhar o horário administrativo do dia seguinte, sendo que só terá direito à dispensa de fato, se efetivamente trabalhar em plantão, ao cobrir um faltante. Desta forma, o modelo apresentado na seção 3 pode ser adaptado para atender a este tipo de alteração, conforme apresentado a seguir.

As variáveis de decisão para esta variação do problema podem ser definidas através das variáveis binárias:

As restrições de oferta podem ser escritas como em (11), analogamente a (1), com as características do problema de sobreaviso.

onde ri é a oferta extra incluída para cada militar i, para poder ser possível atender às novas demandas de sobreaviso. As restrições de demanda podem ser escritas como em (12) de forma análoga a (2).

Nas restrições que garantem que a escala será obedecida, deve-se incluir as variáveis de sobreaviso as apresentadas em (3), conforme a inequação (13).

De forma análoga para as expressões (4) e (5), o militar i só pode trabalhar nsab sábados e ndom domingos no mês, então:

Também se tem a expressão (16) a seguir, correspondente a (6), sendo nfim o número máximo de finais de semana que o militar i pode trabalhar no mês.

Quanto às restrições que evitam o trabalho em finais de semana consecutivos, tem-se em (17) a expressão que substitui (7).

Para a obtenção das restrições que vinculam o mês atual ao mês anterior substitui-se (8) por (18).

e se o militar i trabalhou no último final de semana do mês anterior, substitui-se a equação (9) por (19).

Para a função objetivo são considerados os mesmos pesos individuais associados a cada militar e o mesmo critério de escolha conforme apresentado na seção 3 adicionando-se a seguinte parcela:

yij · pi·

que representará um nível de escolha do militar i em relação ao dia j considerando sua hierarquia dentro da estrutura, onde em tem-se as preferências dos militares com relação aos dias de sobreaviso.

Como o objetivo do problema é maximizar este nível de escolha, a função objetivo para o problema fica definida como em (20).

Poder-se-ia estabelecer novos critérios para a escolha para estes dias de sobreaviso, porém nas simulações executadas na seção 5, os valores considerados foram os mesmos (nij= ) .

Assim sendo, tem-se que o modelo matemático para o problema, que prevê possíveis alterações no decorrer do período, é dado pelo conjunto de restrições (11) a (19) desta seção 4, além das restrições (1) e (2), e função objetivo dada por (20). Tem-se, desta forma, (2nd . nm) variáveis de decisão e um número de restrições no mínimo igual a:

[2nm + 2nd + (nd – nd1 + 1) nm + 3nm (nfs)].

5. Simulações e Resultados

Para avaliar o modelo matemático completo apresentado na seção 4 deste artigo, foi desenvolvido um programa computacional que permite estabelecer as regras e parâmetros para o problema através de uma interface com o usuário. Após estas definições preliminares, o programa utiliza o software LINGO 6.0 que resolve o modelo matemático. Obtida a solução para o modelo, o programa registra as respostas em um arquivo, no formato solicitado, para uma melhor análise dos resultados.

Fazendo-se uso do referido programa, foram efetuadas simulações alterando-se a quantidade de militares, as demandas diárias, os tipos de escalas e outros dados. Para que as simulações ficassem próximas da situação real, foi solicitado para que os militares preenchessem uma lista indicando alguns dias (3, nas simulações 1, 2 e 3) nos quais prefeririam trabalhar no plantão e alguns dias (6, nas simulações 1, 2 e 3) nos quais sua escolha seria a de não trabalhar no plantão. Para a escolha dos dias de trabalho, a única condição imposta foi que os mesmos tivessem entre eles, uma diferença de, no mínimo, 5 dias. Nenhuma restrição foi imposta para os dias escolhidos para não trabalhar.

Para as tabelas apresentadas no decorrer desta seção 5, tem-se os seguintes termos e seus significados:

• FSS (S/N) = permite ou não o trabalho em Finais de Semanas Seguidos (Sim/Não);

• Erro 1 = informa a quantidade de não indicações para trabalho no plantão em dias escolhidos para trabalho pelos militares;

• Erro 2 = informa a quantidade de indicações para trabalho no plantão em dias escolhidos para não serem trabalhados pelos militares;

• Atend. 1 = informa o percentual de atendimento aos dias escolhidos para plantão;

• Atend. 2 = informa o percentual de atendimento (não indicação) aos dias não escolhidos para plantão.

Simulação 1 (com dados levantados junto aos militares)

Considerando os seguintes dados: quantidade de militares disponíveis nm = 90; quantidade de dias trabalhados pelo militar i, qi = 30; demanda de militares no dia j, dj = 19; máximo de finais de semana trabalhados no período, nfim = 2; tem-se que o total de variáveis binárias para o problema é de (2 . 700); o total de escolhas para trabalhar no plantão é de (3 . 90) = 270 alternativas e o total de escolhas para não trabalhar no plantão é de (6 . 90) = 540 alternativas.

As escolhas dos militares e respostas obtidas através do modelo matemático para a escala 24/72 (24 em trabalho e 72 horas em descanso), podem ser analisadas na Tabela A em Anexo.

A Tabela 2 a seguir mostra uma síntese dos resultados obtidos para esta simulação 1, considerando vários tipos de escalas.

Nos resultados contidos nesta Tabela 2 tem-se na 6ª linha, por exemplo, que em uma escala 24/72 na qual não fosse permitido trabalhar finais de semana seguidos (FSS = N), o tempo de execução do modelo foi de aproximadamente 7 minutos. Nesta simulação não houve a indicação para trabalho em 42 dias selecionados como preferenciais pelos militares (erro 1), sendo que tal situação é mostrada pelas células da Tabela A contendo apenas "*" ; além disso, ocorreram 11 indicações para trabalho em dias escolhidos pelos militares para não trabalhar (erro 2), representadas pelas células contendo "X-" na Tabela A. Desta forma, em Atend. 1 para esta simulação tem-se que dos 270 dias escolhidos para trabalhar, 228 (=270-42) foram escolhidos pelo modelo, o que fornece um percentual de atendimento de 84,44% (228/270) aos dias escolhidos para plantão. Já em Atend. 2 tem-se que dos 540 dias escolhidos para não trabalhar, 529 (=540-11) foram escolhidos pelo modelo, o que fornece um percentual de atendimento de 97,96% (534/540) aos dias não escolhidos para plantão. Da mesma forma tem-se o entendimento para as demais tabelas.

Simulação 2 (com grande quantidade de militares)

Nesta simulação, considerou-se nm = 1.000 militares disponíveis, sendo a demanda diária de dj = 212 militares para um período de qi = 30 dias. Ainda foi permitido o trabalho em finais de semanas seguidos, e foram aceitos, no máximo, trabalho em 2 finais de semana no período. A escala indicada foi de 24/72 horas.

Após 1:45h de processamento, o software LINGO obteve a factibilidade, porém ainda não tinha sido alcançada a otimalidade, e a resolução foi interrompida. A resposta obtida indicava um erro do tipo 1 de 64 unidades e nenhum erro do tipo 2. Isto significa um índice de atendimento do tipo 1 de 97,87% e um índice do tipo 2 de 100%, já bastante satisfatório.

Simulação 3 (com alteração da escala e da demanda – Sobreaviso)

Foram considerados nesta simulação nm = 75 militares para um período qi = 30 dias, sendo a demanda de militares dj variável assim como as escalas conforme apresentados na Tabela 3 a seguir. Nesta simulação os militares não podem trabalhar finais de semana consecutivos, sendo que podem trabalhar, no máximo, 2 finais de semana no mês de 30 dias; além disso, o peso do militar mais graduado é igual a 10 e do menos graduado é igual a 1.

Simulação 4 (com alteração de pesos)

Com a finalidade de avaliar o impacto que a variação dos pesos causa nos erros (tipos 1 e 2) foram desenvolvidos vários exemplos apresentados a seguir. Em todas as simulações considerou-se nm = 90 militares cujas demandas diárias djestão indicadas nas próprias tabelas referentes aos exemplos que deverão trabalhar qi = 30 dias. Cada militar pôde escolher 5 dias para trabalhar e 15 dias para não trabalhar no plantão. A grande quantidade de escolhas é para que permitir que ocorram muitos erros, possibilitando uma melhor análise.

A análise de um exemplo com demanda diária de dj = 20 militares com escala de 24/72 é apresentada na Tabela 4 a seguir.

A mesma análise foi efetuada considerando a necessidade de ej = 2 militares de sobreaviso e demanda diária de dj = 18 militares (totalizando assim 20 militares). Os resultados para esta simulação estão apresentados na Tabela 5.

Uma nova análise considerando uma demanda de dj = 21 militares sem sobreaviso e uma demanda de dj = 19 militares com a adição de ej = 2 militares de sobreaviso (totalizando 21 militares), apresentou os resultados contidos nas Tabelas 6 e 7 a seguir.

6. Conclusões

Neste artigo é apresentado um modelo matemático de PLIB que permite a obtenção de escalas de trabalho para o serviço de guarda de militares, com o objetivo de definir os dias de serviço de guarda de cada militar, considerando as suas preferências (dias de trabalho e dias de descanso), obedecendo às leis da hierarquia militar. Várias simulações são apresentadas variando-se a quantidade de militares, as demandas diárias, os pesos aos militares de acordo com a antigüidade (hierarquia), os tipos de escalas e a colocação de militares de sobreaviso (ou não). Através destes testes obteve-se a validação do modelo matemático comparando-se as escalas otimizadas com as escalas em uso por ocasião da pesquisa.

Vale salientar que nas simulações que envolveram variações nos pesos, as mesmas só se tornaram significativas quando a quantidade de dias para escolha de cada militar é próxima da demanda necessária; caso contrário, os pesos praticamente não apresentam influência no modelo. Além disso, quando o número de militares disponíveis é muito pequeno, a idéia de se ter militares de sobreaviso para cobrir as faltas torna-se inviável, conforme esperado, pois não existe folga suficiente para o atendimento da demanda criada. Nesta situação, a solução do problema deve ser obtida pelo modelo sem sobreaviso (apresentado na seção 3) e, no caso destas faltas ocorrerem de fato, o modelo deve ser executado novamente para o período restante. Testes executados para estes casos (mas não apresentados neste artigo) forneceram resultados não tão bons, pelo fato das alterações dos dias de trabalho em relação aos dias originalmente indicados de muitos militares serem muito grandes (erros 1 e 2). Com um número suficiente de militares, porém, o sobreaviso mostrou-se extremamente interessante para o gerenciamento do pessoal, evitando-se atropelos de chamada de novos militares nos dias de faltas.

O serviço de guarda influencia diretamente na vida do soldado, pois dias inteiros são dedicados ao serviço militar. Com a possibilidade de escolha dos dias de serviço e a grande chance de que estes dias sejam efetivamente os de plantão, o soldado poderá programar melhor a sua vida pessoal, apresentando maior satisfação e maior produtividade em seu trabalho. Como a confecção destas escalas de plantão para militares é feita, em geral, de forma manual, a utilização de técnicas da Pesquisa Operacional vem facilitar e melhorar esta tarefa, fornecendo a solução ótima, de forma automática, rápida e eficiente.

Agradecimentos

À Força Aérea Brasileira pelo fornecimento dos dados necessários ao desenvolvimento do trabalho.

Recebido em 04/2003; aceito em 08/2004 após 1 revisão

Received April 2003; accepted August 2004 after one revision

Anexo

  • (1) Barboza, A.O.; Carnieri, C.; Steiner, M.T.A. & Siqueira, P.H. (2003). Técnicas da Pesquisa Operacional na Otimização de Atendentes em Centrais Telefônicas. Gestão e Produção, 10, 109-127.
  • (2) Bianco, L.; Bielli, M.; Mingozzi, A.; Ricciardelli, S. & Spadoni, M.A. (1992). Heuristic Procedure for the Crew Rostering Problem. European Journal of Operational Research, 58, 272-283.
  • (3) BRASIL. Lei n. 6880, de 9 de dezembro de 1980. Dispõe sobre o Estatuto dos Militares. Disponível em: <http://www.soleis.adv.br/>. Acesso em fevereiro de 2002.
  • (4) Caprara, A.; Toth, P.; Vigo, D. & Fischetti, M. (1998). Modeling and Solving the Crew Rostering Problem. Operations Research, 46(6), 820-830.
  • (5) Constantino, A.A. (1997). Otimização de Escala de Trabalho para Condutores de Trem: Sequenciamento de Tarefas e Alocação Baseada em Preferência Declarada. Tese de Doutorado, UFSC, Florianópolis.
  • (6) Kusumoto, S. (1996). Nurse Scheduling System Using ILOG Solver. In: Proceedings of the Second ILOG Solver and Scheduler Users Conference, ILOG, Paris.
  • (7) Lau, H.C. & Lua, S.C. (1997). Efficient Multi-Skill Crew Rostering via Constrained Sets. In: Proceedings of the Second ILOG Solver and Scheduler Users Conference, ILOG, Paris.
  • (8) Mason, A.J. & Nielsen, D. Petra. (1999). A Programmable Optimisation Engine and Toolbox for Personnel Rostering Applications. In: 15th Triennial International Federation of Operational Research Societies Conference, 16-20.
  • (9) Popova, E. & Morton, D. (1998). Adaptive stochastic manpower scheduling. In: Proceedings of the 1998 Winter Simulation Conference, 661-668.
  • (10) Silva, T.C.L. (2002). O Problema de Programação de Horários de Trabalho considerando Preferências e Hierarquia: Aplicação a uma Escala de Plantão de Militares. Dissertação de Mestrado, UFPR, Curitiba.
  • (11) Siqueira, P.H.; Carnieri, C.; Steiner, M.T.A.; Barboza, A.O.; Adamowicz, E.C.; Sampaio, M.E.C.S. & Tambosi, M. (2000). Aplicação do Algoritmo do Matching no Problema da Construção de Escalas de Motoristas e Cobradores de Ônibus. In: X Congreso Latino Iberoamericano de Investigación de Operaciones y Sistemas, México.
  • *
    Corresponding author / autor para quem as correspondências devem ser encaminhadas
  • Datas de Publicação

    • Publicação nesta coleção
      10 Fev 2005
    • Data do Fascículo
      Dez 2004

    Histórico

    • Aceito
      Ago 2004
    • Recebido
      Abr 2003
    Sociedade Brasileira de Pesquisa Operacional Rua Mayrink Veiga, 32 - sala 601 - Centro, 20090-050 Rio de Janeiro RJ - Brasil, Tel.: +55 21 2263-0499, Fax: +55 21 2263-0501 - Rio de Janeiro - RJ - Brazil
    E-mail: sobrapo@sobrapo.org.br