• Nenhum resultado encontrado

ALGORITMO GENÉTICO PARA O PROBLEMA DE SCHEDULING DE PROJETOS COM RESTRIÇÃO DE RECURSO : UMA APLICAÇÃO EM OPERAÇÕES EM POÇOS DE PETRÓLEO

N/A
N/A
Protected

Academic year: 2022

Share "ALGORITMO GENÉTICO PARA O PROBLEMA DE SCHEDULING DE PROJETOS COM RESTRIÇÃO DE RECURSO : UMA APLICAÇÃO EM OPERAÇÕES EM POÇOS DE PETRÓLEO"

Copied!
8
0
0

Texto

(1)

ALGORITMO GENÉTICO PARA O PROBLEMA DE SCHEDULING DE PROJETOS COM RESTRIÇÃO DE RECURSO : UMA APLICAÇÃO EM

OPERAÇÕES EM POÇOS DE PETRÓLEO

Ricardo Vitor J.C. Vasconcellos1, Virgilio José Martins Ferreira Filho 2

1 Petrobras – Petróleo Brasileiro S.A, TI/TI-PEC/PO.

ricardovitor@petrobras.com.br,

2 UFRJ / COPPE / Programa de Engenharia de Produção virgilio@ufrj.br

Resumo

O problema do Scheduling de Projetos com Restrição de Recursos (Resource Constraint Project Scheduling Problem – RCPSP) consiste na determinação do sequenciamento das atividades de um projeto, minimizando o custo, duração total, ou maximizando índices de avaliação econômica de projetos, levando-se em conta restrições de precedência entre as atividades a serem executadas e restrições quanto aos recursos disponíveis para a execução de tais atividades. O objetivo deste trabalho é desenvolver um algoritmo genético para a resolução de um problema real de scheduling com restrições de precedência e de recursos, a serem executadas em um conjunto de 33 poços de petróleo, de um mesmo campo, desde a perfuração até a sua finalização, de forma que os poços entrem em produção no menor tempo possível. Os resultados obtidos, são comparados com àqueles encontrados utilizando-se o software MsProject e com os obtidos com o método atualmente utilizado, baseado em programação por restrições

Palavras-chaves: problemas de sequenciamento, restrições de recursos, poços de petróleo.

Área: Petróleo e Gás

Abstract

The Resource Constraint Project Scheduling Problem – RCPSP consists in the determination of the Scheduling of the activities of a project, minimizing the cost, total duration, or maximizing indexes of economical evaluation of projects, being taken into account precedence restrictions among the activities to be executed and restrictions for the available resources for the execution of such activities. The objective of this work is to develop a genetic algorithm for the resolution of a real problem of scheduling with precedence and resources restrictions, involving a set of 33 oil wells, of a same field, from the perforation to its completion, so that the wells enter in production in the smallest possible time. The obtained results are compared with the those found being used the software MsProject and with those obtained with the method now used, based on constrained programming.

Keywords: Scheduling Problem, Resource Constraint, oil wells.

(2)

I. INTRODUÇÃO

Atualmente, o conceito de projetos vem sendo utilizado pelas empresas de uma forma disseminada. Este enfoque de projetos implica na necessidade do desenvolvimento de ferramentas de tomada de decisão que auxiliem no gerenciamento dos projetos. Neste aspecto, a Pesquisa Operacional vêm apresentando soluções adequadas às necessidades das empresas (PMBOK, 2005).

Dentre os problemas que surgem, os relativos ao gerenciamento de projetos são atrativos porque os modelos contêm muitos aspectos operacionais (restrições técnicas, de recursos, processo, etc.) correlacionados e são, portanto, de difícil solução. Por exemplo, o problema de scheduling de projetos com recursos críticos é uma generalização do problema de job-shop scheduling - scheduling de tarefas utilizando-se de um dado número de máquinas - (vide, por exemplo, Abs, 2003 e Tavares, L.V, 2002).

Do ponto de vista empresarial, é de grande importância a definição de uma ferramenta de apoio à decisão que seja utilizada na definição de um scheduling das atividades que componham um projeto, e, que resulte ou no menor tempo de execução (makespan), ou com menor custo. O desenvolvimento desta ferramenta fundamenta-se na modelagem matemática de um projeto que se utiliza um modelo de grafos com uma rede acíclica e direta. Nessa rede as atividades são representadas nos nós e as relações de precedência entre as atividades (restrições tecnológicas) pelos arcos que interligam os nós. O problema tratado neste trabalho inclui a restrição adicional de que os recursos, para a execução das atividades, são não renováveis (o mesmo recurso é usado para todo o horizonte de planejamento) e limitados (recursos críticos). Na literatura pesquisada Ahm et al. (2001), existem registros de métodos exatos e heurísticos para a solução deste problema. Porém, sua natureza é combinatória e inteira, o que provoca uma explosão no número de variáveis quando da utilização de métodos exatos (por exemplo, Branch & Bound). Portanto, esta opção de solução é mais indicada para problemas com um pequeno número de variáveis. Isto implica que os métodos heurísticos se tornam uma opção mais atraente para os problemas reais.

Dentro das opções existentes para os métodos heurísticos os Algoritmos Genéticos, puros ou híbridos, registram resultados animadores, Ahm et al. (1998), justificando a sua escolha para a aplicação neste trabalho.

O problema a ser tratado neste artigo, enfoca a necessidade de definir um scheduling para as atividades a serem executadas em um conjunto de poços de produção de petróleo desde o momento de sua perfuração até o momento em que os poços estiverem prontos e disponíveis para a produção. No caso estudado, são programadas 137 atividades envolvendo 33 poços, de um mesmo campo produtor, localizados na plataforma continental. O objetivo a ser alcançado, é que todos estejam disponíveis para produção no menor prazo possível (makespan). As atividades são realizadas por um por um conjunto restrito de equipamentos.

Para a solução deste problema foi desenvolvido um algoritmo genético, utilizando o aplicativo Evolver (Add-ins do Excel), associado a um algoritmo para alocação dos recursos e função de avaliação (aptidão), desenvolvidos em VBA (Visual Base for Applications).

O artigo está estruturado de forma que uma descrição do problema real é apresentado no item II. O item III revisa os conceitos básicos de algoritmos genéticos e o item IV apresenta o modelo desenvolvido neste trabalho. Os itens V e VI apresentam os resultados alcançados e as conclusões, respectivamente.

(3)

II. PROGRAMAÇÃO DE OPERAÇÕES EM POÇOS DE PRODUÇÃO DE ÓLEO

Para a produção de petróleo é necessário perfurar poços e após a perfuração estes poços devem ser preparados para operar de forma segura e econômica, durante toda sua vida produtiva.

Ao conjunto de operações destinadas a equipar o poço para produzir óleo ou gás, denomina-se completação. Eventualmente estes poços poderão necessitar de intervenções de manutenção futuras, atividades estas denominadas de “workover”. Para a execução dessas atividades o principal recurso a ser utilizado é a sonda (de perfuração, ou de completação). Quando estas operações são realizadas em poços no mar são também utilizados barcos. Esses recursos possuem restrições tecnológicas e operacionais, principalmente quanto a lâmina d'água que eles operam e possuem também produtividade, normalmente definida em função do tempo de intervenção, diferentes para cada tipo de atividade em cada poço. Dentro do escopo do presente trabalho foram considerados dois tipos de sonda e de dois tipos de barco classificados de acordo com a capacidade de operarem em lâminas d’água de até 1000m e de até 2000m de profundidade.

Dentro de uma bacia exploratória existem diversos campos de petróleo em fases distintas do seu ciclo produtivo. Existem aqueles campos com alta atividade exploratória, onde as atividades de perfuração são predominantes, os campos em fase de desenvolvimento onde predominam atividades de perfuração e completação e por fim campos em estágios mais avançados de explotação onde predominam as atividades de manutenção. Todas estas atividades competem pelos recursos, barcos e sondas, que são caros e escassos. Por outro lado o benefício da realização destas atividades é grande, portanto quanto mais cedo elas forem realizadas maior será o benefício auferido pela companhia produtora. O presente trabalho aborda o problema de determinar o schedule otimizado das atividades a serem executadas em poços de petróleo no mar.

Com o objetivo de limitar o escopo do problema a ser abordado restringimo-nos a um único campo de petróleo em fase de desenvolvimento, a qual tem um horizonte de tempo determinado. .

Dadas às restrições tecnológicas e, portanto, as restrições de precedência das atividades , o número de recursos disponíveis e o tempo de intervenção de cada recurso em cada poço, objetiva-se determinar a seqüência de atividades tal que a duração total dos projetos seja mínima, ou seja o schedule de makespan mínimo

O conjunto de atividades a serem desenvolvidas nos projetos e os respectivos recursos necessários estão listados na Tabela I. Estas atividades se iniciam primeiro com a Perfuração do Poço, atividade onde o solo e as rochas são perfuradas até que atinja a profundidade objetivo do poço. Finda está etapa as atividades seguintes são genericamente denominadas de completação e podem ser executadas em fases. A segunda atividade envolve a instalação da Base Adaptadora de Produção (BAP) este equipamento localiza-se na cabeça do poço e tem por função acomodar Árvore de Natal Molhada e permitir sua interligação aos tubos de produção flexíveis. A terceira atividade é constituída da instalação dos equipamentos que ficarão no interior do poço, denominados coluna de produção. Esta coluna de produção termina com um equipamento denominado Suspensor de Coluna (TH – Tubing Hanger) que se assenta na cabeça do poço e sustenta a coluna de produção. A instalação deste equipamento marca o fim da terceira atividade.

A quarta atividade é a instalação da Árvore de Natal Molhada (ANM), conjunto de válvulas, instalado nos poços submarinos, que visa permitir o controle do fluxo de óleo oriundos dos poços e que será escoado por dutos até um ponto de concentração e controle de fluxo (Manifold). A quinta atividade se refere exatamente a instalação e ancoragem deste equipamento. Todas as atividade até aqui descritas são realizadas pelas sondas. As três atividades adicionas são realizadas por barcos lançadores de linhas (PLSV – Pipe Layer Suply Vessel) e são a interligação das árvores de natal aos manifoldes e destes as Unidade Estacionária de Produção ( UEP – plataformas). Os barcos lançadores de linhas são também utilizados para fazerem o lançamento

(4)

III. UM ALGORITMO GENÉTICO PARA O PROBLEMA DE SCHEDULING DE PROJETOS COM

RESTRIÇÃO DE RECURSO

O modelo básico adotado neste trabalho é o de um Algoritmo Genético Puro (vide Gen, Mitsuo, 2000), isto é, adota-se o procedimento básico apresentado no item anterior. Há de se ressaltar que se optou pela codificação indireta dos resultados (vide Michalewicz, Zbigniew, 1996) visto que, os resultados observados na literatura (ICA, 2005) para este tipo de aplicação, indicam ser essa conduta a mais eficiente. O processo de codificação é apresentado com mais detalhe a seguir. O passo inicial consistiu na preparação de uma listagem com as atividades a serem executadas em cada um dos 33 poços, totalizando 137 atividades. Atribuiu-se um identificador numérico a cada atividade (de 1 a 137), gerando como conseqüência um cromossomo com o formato de um vetor com 137 posições (genes) apresentado na Fig.1..

0 1 .... 136 137

Fig. 1 – Cromossomo utilizado

De forma a garantir a modelar as restrições de precedência existentes, definiu-se que um mesmo tipo de atividade realizada em poços distintos (por exemplo: perfuração) representam atividades distintas. Como a precedência tecnológica ocorre apenas nas atividades realizadas em um mesmo poço é preciso garantir externamente à representação do cromossomo estas restrições.

O fato dos recursos serem compartilhados também exige uma restrição que impeça a utilização de um mesmo recurso por dois poços distintos simultaneamente. Para tratar estas restrições foi desenvolvida uma heurística para a alocação dos recursos às atividades.

A próxima etapa foi dedicada ao desenvolvimento da função de avaliação. Cada solução gerada pelo algoritmo genético apresenta uma ordenação de atividades que respeita as restrições tecnológicas, a heurística de alocação dos recursos então avalia a disponibilidade de recursos e, em função desta disponibilidade, ajusta a duração das atividades e a ordem de execução das mesmas. Em seguida se calcula a duração total do projeto (makespan).

A dinâmica do funcionamento do modelo pode ser resumida nos seguintes passos:

1. Definição de todas as atividades;

TABELAI

ATIVIDADES DESENVOLVIDAS

Atividade Recurso Usado

Perfuração de poços Sonda

Completação BAP Sonda

Completação TH Sonda

Completação ANM Sonda

Instalação e Ancoragem Manifold Sonda Interligação ANM x Manifold Barco LSV Interligação Manifold X UEP Barco LSV Abandono de Linhas Barco LSV

(5)

2. Definição das restrições de precedência entre as atividades;

3. Atribuição dos recursos às atividades;

4. Definição da taxa de cruzamento;

5. Definição da taxa de mutação;

6. Definição do tamanho da população inicial;

7. Definição do mecanismo de parada do algoritmo.

A partir dessas definições pode-se iniciar a utilização do aplicativo desenvolvido para a solução do problema. Este aplicativo faz uso do software Evolver, o qual já disponibiliza um módulo para sequenciamento de projetos (project) onde é permitida a inserção de relações de precedência. Complementa o aplicativo a da heurística de alocação de recursos. O Evolver apresenta como resposta, um cromossomo de tamanho 137 contendo a ordem de execução das atividades, respeitando-se as restrições de precedência impostas. A heurística desenvolvida em VBA executa a leitura dessas atividades já ordenadas e faz o sequenciamento das atividades, respeitando as restrições quanto à quantidade de recursos disponíveis (algoritmo de alocação de recursos disponíveis às tarefas a serem executadas). Ao final, o aplicativo totaliza o tempo de duração, calculando assim o makespan a ser apresentado na célula definida no Evolver para esse fim. Esse procedimento se repete até o instante de definido para a parada do algoritmo genético (nesse caso, o número de tentativas). O melhor resultado é armazenado, o Schedule reproduzido em planilha anexa e o makespan apresentado.

IV. RESULTADOSOBTIDOS

Para o estudo de caso proposto, foram obtidas soluções através da metodologia proposta, do uso do software MsProject e da atual sistemática através de aplicativo baseado em Programação por Restrições. Neste item, os resultados são apresentados e fornecem uma base inicial de validação para o algoritmo desenvolvido neste trabalho.

A. MsProject – Resultados

A utilização do software MsProject consistiu na definição das atividades e suas relações de precedência em um gráfico de Gantt disponibilizado pela ferramenta e na utilização da opção de balanceamento dos recursos (alocação temporal dos recursos partilhados de maneira otimizada).

A duração total obtida por este método foi de 1352 dias.

B. Programação por Restrições

Considerando o mesmo cenário, o aplicativo atualmente em uso, com base em Programação por Restrições, desenvolvido em Java e usando software ILOG através de suas bibliotecas - ILOG Solver e ILOG Schedule) obteve-se o resultado de 1088 dias para o makespan.

C. Solução com a metodologia proposta usando algoritmos genéticos

Para a solução através do algoritmo genético, foram simuladas situações variando-se:

- Taxa de cruzamento: 0,1; 0,25 e 0,5;

- Taxa de Mutação: 0,05; 0,1 e 0,2;

(6)

- Número de tentativas: 100; 500; 1000 e 2000;

A tabela II abaixo resume os melhores valores encontrados com as combinações de dados de entrada. Pode-se observar que em praticamente todos os casos o valor do makespan convergiu para 1075 dias. A convergência que ocorreu em menor tempo foi para uma Taxa de cruzamento de 0,5; uma taxa de mutação de 0,05 e uma população de 100. A convergência ocorreu em 1:07 min com 500 tentativas.

TABELAII RESULTADOS –MELHORES MAKESPAN Taxa de

cruzamento Mutação Populaçã o

Geraçõe

s Tempo Makespan

0,1 0,05 50 1000 02:11 1076

100 1000 02:10 1079

150 1000 02:12 1077

0,1 50 1000 02:11 1076

100 1000 02:14 1076

150 1000 02:15 1076

0,2 50 1000 02:15 1079

100 1000 02:14 1077

150 1000 02:16 1078

0,25 0,05 50 1000 02:17 1076

100 1000 02:16 1077

150 1000 02:18 1075

0,1 50 1000 02:17 1076

100 1000 02:17 1077

150 1000 02:19 1078

0,2 50 1000 02:17 1076

100 1000 02:17 1078

150 1000 02:19 1076

0,5 0,05 50 1000 02:17 1077

100 1000 02:17 1076

150 1000 02:18 1075

0,1 50 1000 02:17 1076

100 1000 02:17 1076

150 1000 02:19 1077

0,2 50 1000 02:18 1079

100 1000 02:19 1078

150 1000 02:20 1076

Outro resultado importante é apresentado no gráfico I a seguir. Neste gráfico (com Taxa de Cruzamento 0,5 e População 100) pode-se observar que os resultados melhoram quando é aumentado o número de tentativas de 100 para 500 com um pequeno aumento no tempo de execução (00:13 para 01:07). Porém, ao aumentar-se o número de tentativas para 1000 ou 2000, o tempo de processamento cresce, mas os resultados obtidos permanecem praticamente inalterados a menos da taxa de mutação igual a 0,2.

(7)

GRÁFICO I-TAXA DE CRUZAMENTO 0,5–POPULAÇÃO

Tempo Processamento X Duração do Projeto

1320 1340 1360 1380 1400 1420

00:13

01:07

02:17

04:28 Tempo (min)

Duração (dias)

Mutação 0.01 Mutação 0,1 Mutação 0,2

100

500

1000

2000

V. CONCLUSÕES

O presente trabalho teve como objetivo principal desenvolver um algoritmo genético para a resolução de um problema de scheduling com restrições de precedência e de recursos, e comprovar sua aplicabilidade na solução de um problema real de programação de operações em poços de petróleo.

Os resultados obtidos, apresentados no item anterior, demonstram a convergência dos resultados independentemente dos valores assumidos para as Taxas de Cruzamento de Mutação, além da população. Estes resultados quando comparados com as soluções obtidas através de um software largamente utilizado como o MsProject e com a metodologia em uso pela Companhia que opera os poços, demonstram a competitividade da metodologia proposta.

Do ponto de vista operacional, a metodologia desenvolvida apresentou vantagens quanto a facilidade na entrada de dados e, da mesma forma que o MsProject, apresenta de forma gráfica o schedule de todas as atividades.

Por fim, pode-se comentar do aumento na complexidade operacional na metodologia baseada em Programação por Restrições quando se trata com problemas maiores. Nesta metodologia novas restrições deverão ser programadas. Neste caso, a solução via algoritmo genético se torna ainda mais adequada visto que se pode ajustar, com relativa facilidade, o aplicativo em VBA de maneira a traduzir a função de aptidão com confiabilidade.

REFERÊNCIAS BIBLIOGRÁFICAS

Abs, Andre; Otimização de Planejamento com Restrições de Precedência usando Algoritmos Genéticos e Co-Evolução Cooperativa – Tese - Pontifícia Universidade Católica RJ (www.ica.ele.puc-rio.br), fevereiro 2003

Ahn, Taeho; Erenguc, S.Selcuk, Conway, Daniel G.– The Resource Constrained Project Scheduling Problem With Multiple Crashable Modes: A Exact Solution Method, Naval

(8)

Ahn, Taeho; Erenguc, S.Selcuk – The Resource Constrained Project Scheduling Problem With Multiple Crashable Modes:A Heuristic Procedure, European Journal of Operational research 107 (1998) 250 – 259

Davis, Lawrence; Handbook of Genetic Algorithms; Library of Congress Cataloging-in- Publication Data; 1991.

Dias, João da Silva; Barreto, Jorge Muniz – Algoritmo Genético: Inspiração Biológica na Solução de Problemas – Uma Introdução; Revista Marítima Brasileira (Suplemento Especial); Número 11 – Out 1998.

Evolver – Manual, versão 4.0.2, Palisade Corporation, Maio 1998

Gen, Mitsuo; Cheng, Runwei – Genetic Algorithms & Engineering Optimization; John Wiley &

Sons – 2000

ICA – 2005, Notas de aula – Curso de Algoritmos Evolucionários - Laboratório de Inteligência Computacional Aplicada – Pontifícia Universidade Católica – RJ. (www.ica.ele.puc-rio.br) Michalewicz, Zbigniew – Genetic Algorithms + Data Structures = Evolution Programs, Springer

Verlag – 1996

PMBOK 2005 – Project Management Body of Knowledge – Project Management Institute – PMI – 2006.

Tavares, L.V, 2002 – A review of the contribution of Operational Research to Project Management. European of Operational Research 136, 1 -18.

Referências

Documentos relacionados

O canabidiol é um composto presente na planta Cannabis sativa, que promove diversos benefícios à saúde humana, como por exemplo sobre as doenças neurológicas como epilepsia,

c.4) Não ocorrerá o cancelamento do contrato de seguro cujo prêmio tenha sido pago a vista, mediante financiamento obtido junto a instituições financeiras, no

Local de realização da avaliação: Centro de Aperfeiçoamento dos Profissionais da Educação - EAPE , endereço : SGAS 907 - Brasília/DF. Estamos à disposição

As sementes tem dormência imposta pelo tegumento e para a superação é necessário submetê-las à embebição em água (24 a 48 horas), escarificação mecânica ou

2. Identifica as personagens do texto.. Indica o tempo da história. Indica o espaço da história. Classifica as palavras quanto ao número de sílabas. Copia do texto três

Em janeiro, o hemisfério sul recebe a radiação solar com menor inclinação e tem dias maiores que as noites, encontrando-se, assim, mais aquecido do que o hemisfério norte.. Em julho,

Classifica os verbos sublinhados na frase como transitivos ou intransitivos, transcrevendo- os para a coluna respetiva do quadro.. Frase: Escondi três livros na estante

a) AHP Priority Calculator: disponível de forma gratuita na web no endereço https://bpmsg.com/ahp/ahp-calc.php. Será utilizado para os cálculos do método AHP