Resumos
Na programação de operações de movimentação de petróleo em complexos portuários contendo navios, píeres, tanques e oleodutos, um modelo de otimização das operações é frequentemente utilizado. Entretanto, devido à complexidade do problema, o tempo computacional é um fator limitante. Neste artigo, estuda-se a aplicação de um modelo de programação linear inteira mista (PLIM) existente na literatura e propõe-se uma etapa de pré-processamento, baseada na teoria das restrições (TOC), com o objetivo de reduzir o tempo computacional. A partir da identificação do gargalo do problema, determinadas restrições são retiradas do modelo numa etapa de pré-processamento. Para verificar a escolha das restrições críticas no pré-processamento, uma análise baseada na noção de preço dual do LP é apresentada. Embora a otimalidade da solução não seja garantida, os resultados mostram uma pequena deterioração da solução em relação à ótima. Porém, com o tempo computacional significativamente reduzido.
programação linear inteira mista; pré-processamento; teoria das restrições; indústria do petróleo
In the scheduling of oil transfer operations for harbor plants containing ships, piers, tanks and pipelines, an optimization model is frequently used. However, due to the complexity involved, computational time is a real concern. In this paper, a mixed integer linear programming model (MILP) found in the literature is studied and a preprocessing procedure is proposed. This procedure is based on the Theory of Constraints (TOC), which is used to reduce the model compilation time. Since the problem bottleneck is identified, the corresponding constraints are not considered in the preprocessing step. An analysis based on LP dual price is also carried out to verify actions taken in the preprocessing step. Although optimality cannot be assured, the results obtained show a minor deviation from the optimal solution but with a significant computational time gain.
mixed integer linear programming; preprocessing; theory of constraints; oil industry
Um modelo de otimização da operação de terminais petrolíferos usando a teoria das restrições como pré-processamento
Suelen Neves Boschetto; Ricardo Lüders* * Corresponding author / autor para quem as correspondências devem ser encaminhadas ; Flávio Neves Jr.; Lúcia Valéria Ramos de Arruda
Prog. de Pós-grad. em Eng. Elétrica e Informática Industrial (CPGEI), Universidade Tecnológica Federal do Paraná (UTFPR), Curitiba PR, suelen@cpgei.ct.utfpr.edu.br, luders@utfpr.edu.br, eves@utfpr.edu.br, lvarruda@utfpr.edu.br
RESUMO
Na programação de operações de movimentação de petróleo em complexos portuários contendo navios, píeres, tanques e oleodutos, um modelo de otimização das operações é frequentemente utilizado. Entretanto, devido à complexidade do problema, o tempo computacional é um fator limitante. Neste artigo, estuda-se a aplicação de um modelo de programação linear inteira mista (PLIM) existente na literatura e propõe-se uma etapa de pré-processamento, baseada na teoria das restrições (TOC), com o objetivo de reduzir o tempo computacional. A partir da identificação do gargalo do problema, determinadas restrições são retiradas do modelo numa etapa de pré-processamento. Para verificar a escolha das restrições críticas no pré-processamento, uma análise baseada na noção de preço dual do LP é apresentada. Embora a otimalidade da solução não seja garantida, os resultados mostram uma pequena deterioração da solução em relação à ótima. Porém, com o tempo computacional significativamente reduzido.
Palavras-chave: programação linear inteira mista; pré-processamento; teoria das restrições; indústria do petróleo.
ABSTRACT
In the scheduling of oil transfer operations for harbor plants containing ships, piers, tanks and pipelines, an optimization model is frequently used. However, due to the complexity involved, computational time is a real concern. In this paper, a mixed integer linear programming model (MILP) found in the literature is studied and a preprocessing procedure is proposed. This procedure is based on the Theory of Constraints (TOC), which is used to reduce the model compilation time. Since the problem bottleneck is identified, the corresponding constraints are not considered in the preprocessing step. An analysis based on LP dual price is also carried out to verify actions taken in the preprocessing step. Although optimality cannot be assured, the results obtained show a minor deviation from the optimal solution but with a significant computational time gain.
Keywords: mixed integer linear programming; preprocessing; theory of constraints; oil industry.
1. Introdução
Um dos grandes obstáculos à adoção de modelos de otimização em plantas industriais é o elevado tempo computacional necessário à solução de problemas de grande e média complexidade. Nesta categoria enquadram-se os problemas de scheduling de curto prazo de operações de transporte de produtos e materiais. Por exemplo, em refinarias e portos há uma preocupação em dispor de um modelo que otimize as operações de transferência de petróleo e/ou derivados, obtendo soluções factíveis em escala de tempo compatível com as operações da refinaria. Diversos trabalhos são encontrados na literatura sobre problemas de transferência e estocagem de produtos. Magatão et al. (2004) desenvolveram um modelo PLIM (Programação Linear Inteira Mista) com discretização uniforme do tempo para a transferência de diferentes derivados de petróleo entre uma refinaria e um porto. Rejowski & Pinto (2003) desenvolveram um modelo para um sistema composto por uma refinaria e vários mercados consumidores, o qual é generalizado e melhorado mais tarde por Rejowski & Pinto (2004). Já Cafaro & Cerdá (2004) desenvolveram um modelo PLIM em tempo contínuo considerando uma refinaria e vários pontos de armazenamento. Estes trabalhos apresentam soluções ótimas, porém o tempo computacional é elevado. Assim, frequentemente é adotada uma divisão do problema para diminuir o elevado tempo computacional necessário para a obtenção da solução ótima. Isso é feito em Magatão et al. (2004).
Em especial, Más (2001) desenvolveu um modelo PLIM, denominado Modelo do Porto, com o objetivo de abordar problemas de programação de suprimento de petróleo. Esse modelo otimiza, sob o critério de maximização do lucro, operações de transferência e estocagem de diversas classes de óleo cru para a programação de descarregamentos de navios, utilização dos píers, tanques e oleodutos, assim como a alocação das cargas de óleos crus nas refinarias provenientes dos navios petroleiros. O modelo deve respeitar as restrições impostas pelo processo de transferência, uma vez que atrasos e demora na transferência de produtos geram elevados custos operacionais para as refinarias e portos. Apesar de a solução obtida melhorar essa transferência, sob o aspecto dos custos gerados devido à demora, o tempo para a obtenção da solução é elevado (da ordem de horas) comparado às rápidas decisões que precisam ser tomadas diariamente no terminal portuário num período de poucas horas ou mesmo minutos.
A partir deste Modelo do Porto (Más, 2001), propõe-se nesse artigo uma metodologia de pré-processamento baseada na teoria das restrições (TOC Theory of Constraints) com o objetivo de reduzir o tempo computacional, como apresentado em Boschetto et al. (2006). A TOC é muito utilizada na área administrativa tendo evoluído dos sistemas OPT (Optimized Production Timetables) os quais são mais conhecidos comercialmente como uma tecnologia de otimização da produção (OPT® Optimized Production Technology) (Rahman, 1998). Além da TOC, serão aplicadas algumas metas para pré-processamento propostas por Mészáros & Suhl (2003). Essas metas são ações sugeridas para a diminuição do tempo computacional para um modelo de programação linear, tais como: eliminação de restrições redundantes ou transformação/fixação de variáveis.
Normalmente, a TOC é usada como guia de ação para o planejamento em uma organização, ou seja, sugere etapas a serem seguidas para o planejamento de atividades gerenciais. Porém, a TOC tem bases semelhantes à programação linear (PL), como por exemplo, o preço dual. O princípio da TOC de que uma hora ganha em um gargalo é uma hora ganha para o sistema total é similar à noção do preço dual em LP. O preço dual em LP reflete o fato que uma melhoria na função objetivo é somente possível se uma unidade adicional de recursos obrigatórios for disponibilizada (Rahman, 1998).
Luebbe & Finch (1992) comparam TOC e programação linear (PL) propondo um método de análise unitária $retorno/restrição, criado com base nas cinco etapas de melhoria da TOC (essas etapas serão apresentadas na seção seguinte) que é comparado à noção de preço dual em LP. Como conclusão, ambas as metodologias buscam identificar a solução ótima de um modelo de programação linear. Porém, Balahrishnan & Cheng (2000) mostram que algumas das conclusões feitas por Luebbe & Finch (1992) não podem ser generalizadas. A análise unitária $retorno/restrição pode resultar em valores subótimos quando os cenários usados são ligeiramente modificados. Os trabalhos acima comparam métodos propostos para as etapas da TOC com a noção de preço dual da PL, ressaltando o melhor desempenho da análise unitária $retorno/restrição. Porém, os autores afirmam que essa heurística não pode ser generalizada.
Neste trabalho, o uso da TOC, juntamente com as metas propostas por Mézáros & Sulh (2003), é feito de forma auxiliar à PL, sendo utilizado em uma etapa de pré-processamento. Em particular, este pré-processamento é aplicado ao modelo PLIM para a programação de suprimento de petróleo proposto em Más (2001), tendo como objetivo a redução do tempo computacional para a obtenção de soluções factíveis que possam ser implementadas em tempo compatível com as necessidades operacionais do complexo portuário envolvido. O modelo foi programado utilizando o pacote de otimização ILOG (ILOG, 2002a; ILOG, 2002b).
A heurística aqui proposta é similar ao método proposto em Wolsey (1998), denominado relax-and-fix. Nesta heurística, primeiramente o problema é modelado de forma relaxada e, a partir dos resultados obtidos, as variáveis consideradas mais importantes são fixadas na forma de restrições e adicionadas ao modelo original. Porém, nenhuma consideração é feita sobre como identificar as variáveis importantes. De maneira semelhante, o pré-processamento proposto neste trabalho acrescenta restrições ao modelo original (fixando variáveis), mas fornece também um procedimento adequado para avaliar estas restrições usando a TOC.
Este artigo está organizado como segue. A seção 2 apresenta um resumo da Teoria das Restrições e sua aplicação em problemas de tomada de decisão. A seção 3 contextualiza o problema de programação de suprimento de petróleo, conforme desenvolvido em Más (2001) e traz uma descrição matemática detalhada do Modelo do Porto. Baseado em considerações das seções 2 e 3, propõe-se na seção 4 um modelo de pré-processamento que identifica e elimina um determinado conjunto de restrições do Modelo do Porto. Na seção 5, resultados de simulação apontam para uma significativa redução do tempo computacional obtido na solução do modelo PLIM com a inclusão da etapa de pré-processamento. Na seção 6, uma análise baseada nas variáveis duais do modelo é apresentada com o objetivo de avaliar quantitativamente a influência de determinadas restrições na melhoria da função de custo. Finalmente, a seção 7 apresenta as conclusões do trabalho.
2. Teoria das Restrições
A Teoria das Restrições (Theory of Constraints TOC) surgiu no início da década de 80 como uma evolução dos sistemas OPT (Optimized Production Timetables) (Goldratt & Cox, 2002). Resumidamente, como menciona Troutt et al. (2001), pode-se dizer que a TOC produziu um conjunto de princípios e métodos para melhorar o fluxo de atividades em sistemas com restrições. A primeira aplicação da TOC, a qual serviu para estabelecer estes princípios e métodos, ocorreu em um sistema logístico para controle do fluxo de material chamado drum-buffer-rope (DBR).
O DBR reúne importantes conceitos que auxiliam companhias a criar programações de produção protegidas de possíveis efeitos adversos. Essa proteção é feita usando pulmões de tempo para amortecer ocorrências, tais como pedidos de último minuto de um cliente, vendedores que não sejam de confiança ou empregados ausentes. O sistema trabalha para assegurar que o fim de um projeto, ou o término de um produto, ocorra no tempo previsto. O DBR é um método para regular o fluxo de trabalho próximo ao limite da capacidade de um recurso mais escasso na corrente da manufatura (INFOR, 2006). Para executar eficazmente o processo de melhoria no sistema de manufatura, uma aproximação genérica para investigar, analisar e resolver problemas complexos é proposta em Goldratt & Fox (1996).
A teoria das restrições é baseada nos seguintes paradigmas:
(a) Cada sistema deve ter ao menos uma restrição. Caso contrário, uma empresa, por exemplo, poderia ter lucro ilimitado (o que não acontece na prática);
(b) Ao contrário do usual, TOC enxerga restrições como sendo algo positivo em um sistema, pois elas delimitam o desempenho do sistema, visto que é impossível obter um lucro ilimitado. Assim, uma relaxação gradual das restrições do sistema leva a uma melhoria no desempenho.
A filosofia de trabalho da TOC tem como foco um processo cíclico de melhoria, que consiste de cinco etapas, descritas a seguir:
1. Identifique a restrição do sistema. A restrição pode ser física (como materiais, máquinas, demanda) ou gerencial. Geralmente, grande parte das restrições de uma empresa são gerenciais. Ao identificar cada restrição é necessário priorizá-la de acordo com seu impacto no objetivo a ser alcançado;
2. Decida como explorar a restrição do sistema. Se a restrição for física, o objetivo é fazê-la tão eficaz quanto possível. Já a restrição gerencial deve ser eliminada e substituída por uma outra que viabilize o processo;
3. Subordine tudo à decisão acima. Cada componente do sistema deve ser ajustado para suportar a eficácia máxima da restrição;
4. Eleve (melhore) a restrição do sistema. Se a restrição existente for ainda mais crítica no sistema, os esforços de melhoria nessa restrição melhorarão seu desempenho. Ou seja, o processo de elevação da restrição corresponde à sua melhoria no sistema, que pode ser feita relaxando a restrição, ou ainda eliminando-a.
5. Volte para a etapa 1 se alguma das etapas precedentes for interrompida. Isto equivale ao conceito de superar a inércia, ou seja, a TOC é um processo iterativo que deve ser sempre refinado de acordo com as mudanças existentes no sistema.
A execução das cinco etapas de forma iterativa em um sistema de produção pode render rapidamente melhorias substanciais. Entretanto, as restrições gerenciais são geralmente difíceis de identificar e avaliar, e requerem frequentemente a participação e a cooperação das diversas áreas envolvidas (Rahman, 1998). Com o intuito de criar soluções para descoberta das restrições gerenciais, Goldratt citado por Rahman (1998) p.336 desenvolveu um método genérico para dirigir-se à restrição usando o conhecimento intuitivo e a lógica. Este conhecimento é chamado de Processo Pensar (TP Thinking Process).
Ao tratar restrições, o TP baseia-se em três decisões genéricas que devem ser tomadas. Decida o quê mudar, decida para o quê mudar, e decida como causar a mudança. Responder à primeira pergunta ("o quê mudar") identifica o núcleo da mudança. Uma vez que o núcleo foi identificado, a decisão a ser tomada passa a ser "para o quê mudar", onde a finalidade é desenvolver soluções simples e práticas. Respondida esta questão, a última pergunta a ser feita é "como mudar" (ou "como fazer"), isto é, como as soluções serão implementadas.
Embora a TOC apresente uma metodologia baseada numa avaliação qualitativa e fortemente dependente do problema a ser tratado, o conhecimento qualitativo gerado pode ser usado para direcionar a solução de um modelo matemático preciso. Essa ideia é explorada no modelo de programação de suprimento de petróleo a ser detalhado na Seção 4.
3. Modelo do Porto
Nesta seção é descrito o problema de programação de suprimento de petróleo em complexos contendo portos, refinarias e uma infraestrutura de oleodutos. Esse problema foi tratado por Más (2001), onde é feita a decomposição do problema em dois subproblemas: um envolvendo portos e o outro envolvendo subestações. Nesta seção é apresentada a modelagem do primeiro subproblema, denominada Modelo do Porto. Esse modelo fornece como solução: a alocação dos navios aos píeres; o início das operações de descarregamento dos navios para os tanques e o início das operações de descarregamento dos tanques para envio pelos oleodutos.
A principal restrição física desse subproblema está ligada ao estoque de petróleo. Apesar de existirem 42 tipos de óleos crus, alguns tipos não podem ser misturados com outros. Por isso, os óleos crus são divididos em classes que podem ser armazenadas em diferentes tanques. Além disso, uma simplificação é feita em relação à velocidade de escoamento do petróleo: todos os tipos de petróleo devem ser escoados com os mesmos limites de vazão. De fato, diferentes tipos de petróleo apresentam vazões diferentes quando bombeados. Porém o cálculo exato da vazão é complexo e envolveria uma modelagem fluidodinâmica do escoamento de petróleo. Assim, a adoção de intervalos para as vazões permite simplificar os cálculos, embora introduza imprecisões. Uma outra restrição importante no problema é que um tanque não pode ser carregado e descarregado ao mesmo tempo. Além disso, após carregado, deve-se aguardar um período mínimo de 24 horas para decantação, que é o período em que o óleo cru deve repousar para se separar da salmoura. Como os tanques operam pelo sistema de teto flutuante, ao descarregar o petróleo, deve ficar no tanque o equivalente a 15% de sua capacidade (altura mínima de óleo cru no tanque), chamado lastro. O modelo deve ainda penalizar atrasos operacionais. Assim, os custos de sobre-estadia são incluídos na função objetivo. Além disso, custos de interface também são considerados, pois quando duas classes de óleo cru distintas entram em contato no oleoduto, pode haver degradação dos produtos na interface.
A seguir é apresentado o Modelo PLIM do Porto, o qual contempla as restrições acima mencionadas. O modelo foi implementado considerando tempo contínuo. Quando a representação contínua do tempo é utilizada, o horizonte de tempo considerado é dividido em intervalos de tempo de duração variável. Normalmente, determina-se o número máximo de eventos que podem ocorrer em cada entidade do modelo e, para cada evento, variáveis contínuas descrevem o comportamento do sistema entre os instantes inicial e final do evento. Neste modelo, os eventos correspondem às movimentações de óleo (carregamento ou descarregamento). Assim, a temporização do modelo é representada por variáveis contínuas e restrições relativas à temporização devem ser adicionadas para estabelecer diferentes relações de ordem entre as variáveis, conforme será descrito adiante. O modelo desenvolvido por Más (2001) é apresentado a seguir, utilizando a nomenclatura abaixo nas expressões (1) a (37).
Índices:
n
navio (n = 1, 2, ..., N);
p
píer (p = 1, 2, ..., P);
c
tipo de óleo cru (c = 1, 2, ..., C);
t
tanque (t = 1, 2, ..., T);
r
refinaria (r = 1, 2, ..., R);
o
oleoduto (o = 1, 2, ..., O);
cl
classe de óleo cru (cl = 1, 2, ..., CL);
e
evento (e = 1, 2, ..., E).
Conjuntos:
PNn
Conjunto de píeres nos quais o navio n pode atracar;
NPp
Conjunto de navios que podem atracar no píer p;
NCc
Conjunto de navios que armazenam o tipo de óleo cru c;
NTt
Conjunto de navios que podem carregar o tanque t;
CNn
Conjunto de tipos de óleo cru que estão armazenados no navio n;
CTt
Conjunto de tipos de óleo cruque podem ser armazenados no tanque t;
ORr
Conjunto de oleodutos que abastecem a refinaria r;
OTt
Conjunto de oleodutos em que o tanque t poderá descarregar;
TOo
Conjunto de tanques que podem descarregar no oleoduto o;
TCc
Conjunto de tanques que podem armazenar o tipo de óleo cru c;
TNn
Conjunto de tanques que podem ser carregados pelo navio n;
TCLcl
Conjunto de tanques que armazenam óleo cru da classe cl;
CLRr
Conjunto de classes de óleo cru que abastecem a refinaria r;
CLOo
Conjunto de classes de óleo cru que são transportados pelo oleoduto o;
CLTt
Conjunto de classes de óleo cru que são armazenados no tanque t.
Parâmetros:
Cn,c
Carga de óleo cru c do navio n [1000m3];
Consumo médio de óleo cru da refinaria r [1000m3/h];
Custo do tipo de óleo cru c nos navios [$/1000m3];
Custo de interface entre as classes cl e cl' [$];
Custo de utilização do píer p [$/h];
Custo de sobre-estadia do navio n [$/h];
Tempo mínimo de decantação do tanque t [h];
Tempo mínimo de decantação necessário para descarregamento do tanque t, a partir do início do horizonte de planejamento [h];
Horizonte de planejamento [h];
Vazão volumétrica máxima de transporte da classe cl no oleoduto o [1000m3/h];
Vazão volumétrica mínima e máxima de descarregamento do navio n [1000m3/h];
Receita da classe cl no porto [$/1000m3];
Receita da classe cl na refinaria r [$/1000m3];
Capacidade de estoque mínima e máxima da refinaria r [1000m3];
Quantidade inicial de óleo na refinaria r [1000m3];
Instante de chegada do navio n nas proximidades do porto [h];
Instante máximo de saída do navio n sem ocasionar custos de sobre-estadia [h];
Intervalo de tempo necessário para entrada do navio n no píer p [h];
Intervalo de tempo necessário de saída do navio n no píer p [h];
Capacidade de estoque mínimo e máximo do tanque t [1000m3];
Quantidade inicial de óleo no tanque t [1000m3].
Variáveis:
An,p
Variável binária (An,p = 1 quando o navio n é alocado ao píer p);
LTn,t,e
Variável binária (LTn,t,e = 1 quando o navio n carrega o tanque t no evento e);
UTt,o,e
Variável binária (UTt,o,e = 1 quando o tanque t é descarregado para o oleoduto o no evento e);
INTcl,cl',o,e
Indica se houve ou não interface entre classes de óleo cru cl e cl' no oleoduto o entre o evento e e o evento e+1 (devido à sua característica, INTcl,cl',o,e é declarada como variável contínua, porém, assume valor binário);
QUNc,n,t,e
Quantidade descarregada de óleo cru do tipo c do navio n para o tanque t no evento e [1000m3];
QUTt,o,e
Quantidade descarregada de óleo do tanque t no oleoduto o no evento e [1000m3];
RSTr,e
Volume de óleo na refinaria r após o evento e [1000m3];
Tempo de sobre-estadia do navio n [h];
Instante de entrada do navio n no píer p [h];
Instante de saída do navio n no píer p [h];
Instante de início do evento e no oleoduto o [h];
Instante de fim do evento e no oleoduto o [h];
Instante de início do evento e no navio n [h];
Instante de fim do evento e no navio n [h];
Instante de início do evento e no tanque t [h];
Instante de fim do evento e no tanque t [h];
Volume do tanque t no evento e [1000m3].
Função Objetivo:
A equação (1) representa a função objetivo utilizada para a maximização do lucro. O lucro é obtido pelas receitas oriundas dos estoques de óleo nas refinarias e no porto menos os custos envolvidos no recebimento e transporte do óleo: custos de óleo que permaneceram nos navios petroleiros, custo de utilização dos píeres e de sobre-estadia dos navios petroleiros, e custos de interface de diferentes classes de óleos crus nos dutos.
O último conjunto de somatórios descrito na função acima se refere ao custo de interface, o qual é gerado quando óleos crus de classes diferentes entram em contato dentro do oleoduto. A região do oleoduto onde ocorre a mistura dos óleos gera um produto degradado que normalmente é armazenado para posterior reprocessamento. Um modo de evitar a geração desses custos é enviar grandes quantidades de petróleo de uma mesma classe, reduzindo a fração de óleo degradado na interface em relação ao volume total transferido.
Restrições:
O modelo matemático apresentado está sujeito a uma série de restrições indicadas pelas expressões (2) a (28). A equação (2) indica que cada navio pode atracar em um único píer.
A equação (3) indica que a quantidade de óleo cru a ser descarregada pelo navio deve ser igual a carga total de óleo que o navio possui. Ou seja, o navio deve ser totalmente descarregado.
A inequação (4) indica que um tanque não pode ser carregado e descarregado simultaneamente.
A inequação (5) estabelece que somente um tanque pode descarregar no oleoduto e a inequação (6) que cada navio pode estar conectado a um único tanque.
As equações (7) e (8) dizem respeito ao balanço de material no tanque. No instante inicial do horizonte, o volume do tanque será igual ao volume inicial. Para os demais, é levado em consideração o volume do evento anterior e as quantidades de óleo carregado e descarregado no tanque.
Analogamente, as equações (9) e (10) dizem respeito ao balanço de material na refinaria. No instante inicial do horizonte, a quantidade de óleo da refinaria será igual à inicial. Para os demais, a quantidade de óleo será igual à inicial somada à quantidade enviada pelo duto, subtraída do consumo na refinaria.
As inequações (11) e (12) estabelecem que a quantidade de óleo descarregada do navio em um determinado período deve estar entre os limites de vazão multiplicada pelo tempo de duração do evento.
A inequação (13) indica que a quantidade a ser carregada pelo tanque não pode ser maior que sua capacidade naquele evento.
As inequações (14) e (15) estabelecem a quantidade de óleo a ser descarregada no duto. Deve respeitar a vazão do duto e não pode ser maior do que a capacidade do tanque naquele período.
As inequações (16) e (17) determinam que o volume, tanto dos tanques quanto das refinarias deve estar dentro dos limites máximos e mínimos de estocagem.
A inequação (18) determina a existência de interface entre duas classes de óleo cru.
A inequação (19) indica que o instante final de saída do navio no píer p deve se dar antes do final do horizonte H.
A inequação (20) estabelece que o instante de saída do navio n é sempre maior que seu instante de entrada somado ao tempo mínimo de descarregamento.
A inequação (21) indica que o instante de chegada do navio n no píer é maior ou igual ao instante de chegada deste navio nas proximidades do porto.
A inequação (22) indica que a entrada de um navio a ser descarregado deve levar em conta a saída do navio anterior.
A inequação (23) permite o cálculo do tempo de sobre-estadia.
Além das restrições operacionais acima, a modelagem por eventos inclui restrições adicionais, que estabelecem relações de precedência temporal entre as variáveis. As operações de transferência são divididas em eventos, pois estas podem ocorrer várias vezes dentro do horizonte. O cálculo das variáveis temporais é descrito pelas inequações (24) a (37). A inequação (24) estabelece que o descarregamento de um navio deve considerar seus tempos de chegada e entrada no porto.
A inequação (25) indica que as datas de término de descarregamento ocorrem antes da data de saída do navio do porto.
As restrições em (26) e (27) determinam que, após um tanque ter sido carregado, deve-se respeitar seu tempo de decantação para que possa ser descarregado.
O conjunto de restrições dado pela equação (28) e inequações (29) a (33) indicam a temporização dos navios, tanques e oleoduto.
O conjunto de restrições dado pelas inequações (34) a (37) indicam a vinculação entre as variáveis de temporização, entre oleoduto e tanques e entre navios e tanques. A restrição (36) indica que instante de início do evento e no tanque t deve ser igual ao instante de início do evento e no navio n se, no evento e, houver descarregamento do navio n para o tanque t (LTn,t,e=1). Para as demais inequações o raciocínio é análogo.
Embora o modelo PLIM descrito pelas expressões (1) a (37) tenha sido originalmente proposto por Más (2001), a seção seguinte apresenta uma metodologia de pré-processamento que será aplicada sobre o Modelo do Porto com o objetivo de diminuir o tempo computacional de solução
4. Pré-Processamento
A aplicação do pré-processamento foi elaborada com base nos conceitos operacionais da TOC fazendo, ainda, uso de algumas metas propostas por Mészàros & Suhl (2003). De acordo com o Processo Pensar da TOC, as restrições gerenciais do sistema são identificadas respondendo às três perguntas abaixo:
O quê mudar: identifica o núcleo da mudança. Neste caso, é o conjunto de restrições que caracterizam o gargalo do problema. Para o modelo do Porto, o gargalo é considerado o tempo de decantação dos tanques, pois é uma decisão gerencial (embora operacional) que tem grande impacto na solução do problema, mesmo quando há folga nos recursos físicos (píeres, tanques, dutos);
Para o quê mudar: propõe soluções simples e práticas. No caso de restrições gerenciais, a solução é eliminá-las;
Como mudar: ao eliminar essa restrição, ajustes no modelo são necessários. Assim, o tempo de decantação não será atendido pela eliminação das restrições (26) e (27) do modelo.
Uma vez identificadas as diretrizes gerais da mudança, podem ser aplicadas as cinco etapas da TOC descritas na Seção 2:
1. Identificar a restrição: a partir do procedimento acima, o conjunto de restrições referentes ao tempo de decantação do petróleo (conjunto de restrições (26) e (27) do modelo matemático) foram identificadas como restrições gerenciais. Neste trabalho, processos ou elementos concretos são considerados restrições físicas. Por exemplo, a quantidade de tanques, píeres e dutos são restrições físicas que também podem ser relaxadas, mas apenas ao custo de novos investimentos. Este não é o caso de uma restrição gerencial. Por exemplo, uma restrição de horo-sazonalidade, ou seja, se um produto deve ser transferido e existem todos os recursos necessários para sua transferência e estocagem no destino, essa transferência somente não ocorrerá se o horário não permitir.
2. Decidir como explorar a restrição: como essa restrição é gerencial, deverá ser eliminada;
3. Subordinar tudo à decisão acima: ajustar as demais restrições para que o modelo de pré-processamento resulte numa solução coerente. Como a eliminação da restrição referente ao tempo de decantação dos tanques não tem impacto nas outras restrições, não há necessidade de fazer outras modificações. O modelo sem a restrição de decantação é resolvido e os resultados usados na próxima etapa.
4. Melhorar a restrição do sistema: Dentro desta etapa são estabelecidas as ações a serem realizadas pelo pré-processamento. Assim, as metas descritas por Mészáros & Suhl (2001) foram utilizadas. Dentre elas:
Eliminar restrições redundantes;
Fixar variáveis;
Reduzir variáveis e restrições por eliminação.
Portanto, neste pré-processamento são fixadas algumas variáveis para o Modelo do Porto, e eliminadas as restrições redundantes:
-
a partir dos resultados apresentados pelo modelo de pré-processamento, as seguintes variáveis foram fixadas:
An,p (variável binária que determina a atracação do navio n ao píer p). Ou seja, o pré-processamento fornece qual navio atraca em qual píer;
= 0 ∀n não alocado no píer p (instante de entrada do navio n no píer p). Se o navio não irá entrar no píer p, esta variável é fixada com valor 0;
= 0 ∀n não alocado no píer p (instante de saída do navio n no píer p). Se o navio não irá sair do píer p, esta variável é fixada com valor 0;
LTn,t,e para e = 1, 2; apenas para navio n alocado a algum píer no início do horizonte (variável binária que determina o carregamento do tanque t pelo navio n). Para o início do horizonte, é aproveitada a informação do pré-processamento de que o navio n irá descarregar em um determinado tanque t, aproveitando que a restrição de decantação não poderá ser violada nesse período ao ser reinserida;
UTt,o,e para e = 1, 2; apenas para tanques t que descarregam no oleoduto o no início do horizonte (variável binária que determina o descarregamento do tanque t para o oleoduto o). Assim como para a variável LTn,t,e, a informação obtida pelo pré-processamento será aproveitada, pois no início do horizonte a decantação do óleo não pode ser violada.
-
a restrição (2) foi eliminada, pois passou a ser redundante, já que as variáveis An,p foram fixadas.
Dessa forma, a etapa de pré-processamento consiste em retirar a restrição "gargalo" do Modelo do Porto para obter resultados que possam ser utilizados no Modelo do Porto Modificado. Assim, as restrições descritas pelas equações (26) e (27) foram retiradas. Após a etapa de pré-processamento, um novo modelo (Modelo do Porto Modificado) é obtido, reinserindo a restrição referente à decantação do óleo. Porém, as informações resultantes do pré-processamento só são válidas para o início do horizonte, pois não é necessário parar a operação nos tanques para decantação do óleo nesse período. A Figura 1 apresenta um esquema descrevendo os passos seguidos para a obtenção da solução final.
5. Estudo de Caso
Os modelos de otimização descritos nas seções anteriores (Modelo do Porto, Modelo de Pré-processamento e Modelo do Porto Modificado) foram implementados utilizando o pacote ILOG OPL Studio (2001a) e (2001b), tendo como dados de entrada: 3 navios, 4 tipos de óleo, 5 tanques, 1 oleoduto e 9 eventos (intervalos de tempo de duração variável para cada operação de carregamento/descarregamento). O modelo foi compilado em um computador AMD Athlon 64/2GHz com 1GB de memória RAM.
O cenário em estudo pode ser descrito como segue. Três navios chegam carregados de óleo cru em horários preestabelecidos. O segundo navio chega carregado com dois tipos distintos de óleo cru em seu inventário e os outros dois com um único tipo. Os navios podem ser atracados em dois píeres de diferentes capacidades e custos operacionais. Os navios podem permanecer atracados nos píeres durante dois dias. Após esse período, é cobrado um custo de sobre-estadia. Cinco tanques podem receber o petróleo, sendo que cada tanque armazena uma única classe de óleo (as classes são formadas por grupos de óleo cru que podem ser armazenados em um mesmo tanque). Após carregado, o tanque deve permanecer indisponível durante um período de 24 horas para o processo de decantação. Finalmente, o inventário recebido deve ser transportado por um oleoduto para uma refinaria, que contém uma capacidade mínima e máxima de armazenagem, além de um consumo médio dado em milhares de m3/hora.
O resultado da programação ótima usando o Modelo do Porto pode ser visto na Figura 2, sendo que os produtos movimentados estão identificados na legenda da Figura 3. O navio 1 é o primeiro a descarregar no píer 2, utilizando os tanques 1 (5,639 mil m3), 5 (37,986 mil m3) e 4 (62,375 mil m3). Em seguida, descarrega o navio 2 também no píer 2, utilizando os tanques 3 (38 mil m3) e 2 (20 mil m3) e, finalmente, descarrega o navio 3 no píer 2, utilizando o tanque 5 (30 mil m3). Além disso, os tempos de decantação dos tanques são atendidos, pois respeitam o tempo mínimo de 24h dentro do período de repouso (entre movimentações). Esta solução foi obtida em 3h 47min 8s. Note que o píer 1 não foi utilizado.
Para o Modelo de Pré-processamento, foi retirada a restrição que impõe que o tanque deva ficar parado após o carregamento pelo período correspondente à decantação. O resultado da programação ótima usando este modelo pode ser visto na Figura 3.
Claramente, o tempo de decantação não é mais satisfeito. Pode-se perceber que, assim como o diagrama de Gantt apresentado pela Figura 2, a solução do pré-processamento indica que os navios devem atracar no píer 2, o tanque 4 deve ser o primeiro a descarregar óleo cru no duto e há descarregamento de óleo cru do navio 1 para o tanque 4 (43,625 mil m3 e 62,375 mil m3). Como a restrição de decantação é considerada gerencial e foi eliminada, a solução ótima deste modelo está limitada apenas pelos recursos físicos da planta. Esta solução foi obtida em 7min 40s. Assim, diversas informações já podem ser obtidas apenas considerando os recursos físicos envolvidos. Por exemplo, é possível atracar todos os três navios em um único píer (o de menor de custo). Essa informação, além de outras, será usada para fixar variáveis no Modelo do Porto Modificado, cuja solução ótima é apresentada na Figura 4.
Para o Modelo do Porto Modificado, a restrição de decantação foi reinserida e as seguintes variáveis foram fixadas com os valores obtidos da solução do pré-processamento: todos os navios devem atracar no píer 2, o tanque 4 deve ser o primeiro a descarregar óleo cru no oleoduto e o navio 1 deve descarregar no tanque 4 (62,375 mil m3). Esta fixação de variáveis é natural, uma vez que não há restrição física que impeça o uso do mesmo píer e supõe-se que o conteúdo inicial dos tanques já esteja decantado. Note que as demais variáveis do modelo são obtidas pela solução ótima deste modelo, incluindo as temporizações de cada evento. Esta solução foi obtida em 4min 44s.
Comparando-se as Figuras 2 e 4, pode-se notar as seguintes diferenças: os navios 2 e 3 são atracados mais tarde no porto na solução da Figura 4, o navio 1 passa a descarregar no tanque 3 a quantidade de óleo que antes descarregava no tanque 1 (5,639 mil m3), a ordem de descarregamento de óleo do navio 2 para os tanques 2 e 3, e o descarregamento dos tanques 1 e 3 para o duto, estão invertidas na solução da Figura 4.
Na Tabela 1 são apresentadas algumas características das soluções obtidas com os diversos modelos.
Para o estudo de caso apresentado, a redução do tempo computacional foi de 94% pois, para obter a solução do modelo completo, o tempo de execução é próximo de 4 horas, sendo que a etapa de pré-processamento juntamente com a solução do Modelo do Porto modificado apresenta uma solução em menos de 13 minutos (Tabela 1). Apesar da grande diminuição no tempo computacional, o impacto gerado no valor da função objetivo (lucro) é de apenas 0,21% em relação à solução do Modelo do Porto apresentado por Más (2001). Ou seja, o lucro de $ 5.287,52 teve uma pequena redução para $ 5.276,22 (Tabela 1).
6. Análise de Sensibilidade
A metodologia de pré-processamento proposta na seção 4 é baseada numa análise qualitativa do modelo, identificando as denominadas restrições gerenciais. Nesta seção, uma análise baseada nas variáveis duais do modelo é apresentada com o objetivo de avaliar quantitativamente a influência de determinadas restrições na melhoria da função de custo.
Goldbard & Luna (2000) afirmam que o valor da unidade marginal de um fator de produção é igual ao máximo valor da produção que poderia ser obtida usando essa unidade do fator. Essa afirmação é feita em respeito à interpretação econômica da análise baseada nas variáveis duais de um modelo matemático. Isto é, a cada restrição do modelo matemático é associada uma variável dual que informará o valor do lucro adicional que pode ser obtido caso os recursos necessários aumentem em uma unidade. Sendo assim, pode-se verificar o impacto da retirada de restrições do modelo na função objetivo através das variáveis duais associadas.
A Tabela 2 apresenta as variáveis duais para as restrições descritas na seção 3 (Modelo do Porto). Além dos valores das variáveis associadas às restrições que são eliminadas no modelo de pré-processamento (restrições (26), (27) e (2)), são apresentados os valores para variáveis associadas a outros três conjuntos de restrições (restrições (3), (7) e (8)). Estas restrições possuem grande impacto no lucro e estão relacionadas à quantidade de produto descarregado e transferido pelo terminal petrolífero.
Pela Tabela 2, todas as variáveis duais associadas às restrições (26) e (27) apresentam o valor zero. Para as variáveis duais associadas às restrições (3), (7) e (8), ao ser adicionada uma unidade nas restrições, o lucro da função objetivo tende a aumentar consideravelmente. Isso ocorre, pois essas restrições são relativas à quantidade de óleo cru que chega nos tanques do porto e seguirão para a refinaria. Assim, um aumento de 1.000m³ no descarregamento de óleo pode aumentar o lucro em aproximadamente 135 unidades. Em geral, a solução não é alterada sob a hipótese de que incrementos sejam feitos nos termos independentes das restrições dentro de alguns limites permitidos (Goldbard & Luna, 2000).
Assim, das seis restrições analisadas, apenas as restrições (3), (7) e (8) possuem grande impacto no valor da função objetivo. Isso acontece porque essas restrições estão relacionadas à quantidade de óleo cru que chega nos tanques do porto e que é bombeada para a refinaria. As restrições (7) e (8) fazem o balanço de massa do tanque calculando o volume de óleo que permanece no tanque após ser carregado ou descarregado. A restrição (3) fixa que a quantidade de óleo cru a ser descarregada do navio deve ser igual à sua carga, ou seja, o navio é completamente descarregado. Entretanto, estas restrições são físicas e estão em seu limite operacional. Portanto, não possuem margem para variação. Já as restrições (2), (26) e (27) não apresentam impacto no valor da função objetivo pois, de acordo com as variáveis duais, podem estar inativas em certos casos. Apesar de não afetarem significativamente a função objetivo, essas restrições possuem folga para alterar o tempo total de movimentação de óleo, dado que as restrições (26) e (27) correspondem à decantação do óleo cru no tanque. Esta folga pode ser explorada para reduzir o tempo de processamento. Conforme sugerido pela TOC, estas restrições são retiradas no pré-processamento.
Dessa forma, pode-se concluir que as restrições gerenciais utilizadas para fixação de variáveis (restrições de decantação) podem ser retiradas num primeiro momento (pré-processamento), pois a solução é conduzida predominantemente pelas restrições de balanço de massa (identificadas como restrições físicas na TOC). Neste caso, o tempo computacional é consideravelmente reduzido, sendo que a reinserção das restrições no modelo modificado não deve alterar em muito o valor do lucro da solução ótima, mas pode alterar a temporização das atividades. Entretanto, cabe ressaltar que esse estudo tornou-se viável porque o modelo PLIM completo foi utilizado. Foram necessárias mais de 3h para a compilação deste estudo, conforme apresentado na Tabela 1 (Tempo de Execução do Modelo do Porto).
7. Conclusões
O modelo matemático proposto por Más (2001), embora contemple a maior parte das condições operacionais para a solução do problema do Porto, exige um tempo computacional inadequado às condições operacionais do dia-a-dia, que requerem um menor tempo de resposta. Visando solucionar essa preocupação nos terminais petrolíferos, um estudo com base na Teoria das Restrições foi apresentado, sintetizando uma metodologia de pré-processamento. Basicamente, a metodologia procura identificar restrições gerenciais que possam ser eliminadas numa primeira etapa (a etapa de pré-processamento). Com isso, a solução ótima obtida é limitada apenas pelos recursos físicos da planta. Posteriormente, valores obtidos pelo pré-processamento podem ser usados para fixar variáveis no modelo que gera a solução final, reinserindo as restrições gerenciais. Com a análise baseada nas variáveis duais do modelo, pôde-se verificar que a interpretação dada às restrições, segundo a TOC, é coerente com os efeitos esperados na função objetivo e na folga das variáveis. Com essa técnica, o tempo computacional é reduzido, embora não se garanta a otimalidade da solução (em relação à obtida sem o uso do pré-processamento). Além disso, as soluções obtidas guardam certa relação entre si, pois estão relacionadas aos limites físicos da planta, sendo soluções ótimas para cada modelo separadamente. Embora a identificação de restrições e gargalos seja uma tarefa dependente do problema e do modelo utilizado, a metodologia pode ser vista como uma forma de incorporar conhecimento qualitativo sobre o problema tratado numa técnica exata de otimização, diferentemente de outras abordagens que se utilizam da TOC como técnica direta de otimização conforme proposto em Rahman (1998). Entretanto, a generalização do pré-processamento apresentado requer uma validação estatística dos resultados, a ser tratada futuramente.
Agradecimentos
Este trabalho recebeu o apoio financeiro da Agência Nacional do Petróleo (ANP) e do CTPetro/Financiadora de Estudos e Projetos através do programa de desenvolvimento de recursos humanos para o setor de petróleo e gás natural UTFPR/PRH10.
Recebido em 07/2007; aceito em 01/2009 após 1 revisão
Received July 2007; accepted January 2009 after one revision
Anexo 1 Dados para o Modelo do Porto
Esse anexo reúne os demais dados utilizados no Modelo do Porto. Esses dados são apresentados em forma de tabelas, complementando as informações apresentadas na seção 5. O número de eventos utilizados no modelo é E = 9.
- (1) Balahrishnan, J. & Cheng, C. (2000). Theory of constraints and linear programming: a re-examination. International Journal of Production Research, 38, 1459-1463.
- (2) Boschetto, S.N.; Lüders, R.; Neves Jr, F. & Arruda, L.V.R. (2006). Um modelo MILP com pré-processamento para a programação de operações em terminais petrolíferos. XXXVIII Simpósio Brasileiro de Pesquisa Operacional, Anais do XXXVIII SBPO.
- (3) Cafaro, D. & Cerda, J. (2004). Advanced Optimal scheduling of multiproduct pipeline systems using a non-discrete MILP formulation. Computers and Chemical Engineering, 28, 2053-2068.
- (4) Goldbarg, M.C. & Luna, H.P.L. (2000). Otimização Combinatória e Programação Linear: Modelos e Algoritmos Editora Campus, Rio de Janeiro.
- (5) Goldratt, E. & Cox, J. (2002). A meta: um processo de melhoria contínua 2Ş edn, Nobel, São Paulo.
- (6) Goldratt, E. & Fox, R. (1996). The Race North River Press.
- (7) ILOG (2002)a. ILOG OPL Studio 3.6.1: Language Manual ILOG Corporation, France.
- (8) ILOG (2002)b. ILOG OPL Studio 3.6.1: User's Manual. ILOG Corporation, France.
- (9) INFOR (2006). Infor. Disponível em: <http://www.lillysoftware.com/software_solution/ manufacturing/drum_buffer_rope_TOC.asp>. Acessado em 26/01/2007.
» link - (10) Luebbe, R. & Finch, B. (1992). Theory of constraints and linear programming. International Journal of Production Research, 30, 1471-1478.
- (11) Magatão, L.; Arruda, L.V.R. & Neves Jr, F. (2004). A mixed integer programming approach for scheduling commodities in a pipeline. Computers and Chemical Engineering, 28, 171-185.
- (12) Más, R. (2001). Otimização de Programação de Suprimento de Petróleo. Dissertação de Mestrado, USP, São Paulo.
- (13) Mészáros, C. & Suhl, U. (2003). Advanced preprocessing techniques for linear and quadratic programming. OR Spectrum, 25, 575-595.
- (14) Rahman, S. (1998). Theory of constraints: A review of the philosophy and its applications. International Journal of Operations & Production Management, 18, 336-355.
- (15) Rejowski Jr, R. & Pinto, J. (2003). Scheduling of a multiproduct pipeline system. Computers and Chemical Engineering, 27, 1229-1246.
- (16) Rejowski Jr, R. & Pinto, J. (2004). Efficient MILP formulations and valid cuts for multiproduct pipeline scheduling. Computers and Chemical Engineering, 28, 1511-1528.
- (17) Troutt, M.; White, G. & Tadisina, S. (2001). Maximal flow network modeling of production bottleneck problems. Journal of the Operational Research Society, 52, 182-187.
- (18) Wolsey, L.A. (1998). Integer Programming John Wiley & Sons, Inc.
Datas de Publicação
-
Publicação nesta coleção
28 Maio 2009 -
Data do Fascículo
Abr 2009
Histórico
-
Recebido
Jul 2007 -
Aceito
Jan 2009