APLICAÇÃO DE TÉCNICAS DE LOCALIZAÇÃO EM BASES DE DISTRIBUIÇÃO DE UMA EMPRESA COMERCIALIZADORA DE DERIVADOS DE PETRÓLEO Mariane Lima Torres Sangineto Engenharia de Produção / COPPE Universidade Federal do Rio de Janeiro (UFRJ) Rio de Janeiro-RJ marianesangineto@ig.com.br Tania M. Querido CEFET-RJ Rio de Janeiro-RJ tania.querido@att.net Resumo Este trabalho apresenta uma avaliação da atual configuração das bases de distribuição de uma empresa comercializadora de derivados de petróleo localizadas nos estados do Rio de Janeiro e Espírito Santo e propõe uma nova configuração cujo objetivo é minimizar as distâncias entre bases e municípios. O problema de localização das bases de distribuição será modelado com base no problema das p- medianas. Para a resolução de tal problema propõe-se a utilização do Algoritmo Genético, também utilizado para a validacão da solucão encontrada e do Algoritmo de Teitz e Bart, com a geração de diversas simulações, sempre com as bases de distribuição atuais. Foram analisadas as eliminações de uma ou duas bases de distribuição e as diferentes opções de combinação. Em seguida, foi utilizado Clustering para determinar a alocação de quais municípios serão abastecidos por cada centro. Palavras-Chaves: Bases de Distribuição; Problema das p-medianas; Algoritmo Genético; Clustering Abstract In this work an evaluation of the actual configuration of fuel distribution centers of a company in the states of Rio de Janeiro and Espírito Santo is presented, generating a decisive support which objetive is to minimize the distances between the centers and countries. The assigning of distribution centers problem will be modeled based on the p-medians problem. In order to solve this problem, the use of Genetic and Teitz and Bart Algorithms are proposed. For this last one, several simulations were done, always considering the current centers of distribution. The elimination of one and two distribution centers and the different options of combinations were analyzed. After that, Clustering was used to find the best allocation among countries and bases. Keywords: Center of Distribution; p-median problem; Genetic Algorithm; Clustering 1. INTRODUÇÃO A complexidade e o destaque dado à produção e distribuição de petróleo no continente foram os principais motivadores para a elaboração deste artigo. A importância conquistada por tal empresa deve-se à forma integrada de atuação em toda a cadeia de suprimentos.
A proposta deste artigo é avaliar a atual configuração das bases de distribuição desta empresa localizadas nos estados do Rio de Janeiro e Espírito Santo. O objetivo principal é minimizar as distâncias percorridas entre as bases e os municípios pertencentes à região objeto do estudo, visando otimizar a distribuição do principal produto da empresa, através da utilização de algumas técnicas de Pesquisa Operacional. Neste artigo, são focados somente os estados do Rio de Janeiro e Espírito Santo podendo representar uma limitação à implementação do trabalho. Naturalmente, a extensão a todos os estados do Brasil geraria as localizações e alocações diferenciadas. Por exemplo, um município do Espírito Santo talvez não fosse atendido por uma base localizada neste estado e sim por uma situada no Estado de Minas Gerais, que estivesse mais próxima e mais adequada ao atendimento do município em questão. Outro fator limitante é referente aos dados utilizados na implementação computacional. Alguns foram fornecidos pela empresa em questão, outros de fontes diversas e alguns são estimados, pois são tidos como informações empresariais de caráter sigiloso para a Companhia. O presente artigo está organizado da seguinte forma. Na Seção 2 são apresentados os fatores relevantes no levantamento de dados do problema. Na Seção 3 são discutidas as implementações dos algorítmos de Teitz e Bart e também do Algoritmo Genético. A busca de clusterings foi discutida na Seção 4 e finalmente, na Seção 5 foram apresentadas as conclusões. 2. LEVANTAMENTO E SELEÇÃO DE DADOS O processo de levantamento de dados levou inicialmente em consideração as variáveis que a empresa pôde disponibilizar para a resolução do problema proposto. Os dados fornecidos foram a demanda do principal produto e a distância entre os municípios dos estados do Rio de Janeiro e Espírito Santo. Sendo assim, consideramos a distância entre as bases de distribuição e os municípios abastecidos como o primeiro conjunto de dados relevante. A estrutura da rede de distribuição de derivados do petróleo funciona basicamente da seguinte forma: as refinarias abastecem as bases primárias, estas por sua vez suprem as bases de distribuição secundárias, que são responsáveis pelo abastecimento dos postos de combustível pertencentes à empresa em questão. No problema que é tratado neste artigo, existe a base de Duque de Caxias, que devido a sua importância é uma base de distribuição primária e secundária, responsável pelo abastecimento das outras três bases secundárias localizadas em Campos dos Goytacazes, Volta Redonda e Vitória. O segundo dado considerado foi a demanda mensal do produto em cada município. Como os números fornecidos diziam respeito a todo o mercado, foram considerados somente 20% das vendas, parcela do mercado atendida pela empresa. Para melhor adequar a demanda à realidade do transporte das bases a cada cidade, esta foi dividida por 30, que é a capacidade média de um caminhão. Desta forma o número de transferência é o produto das distâncias pelo número de viagens necessárias para suprir a demanda. 3. IMPLEMENTAÇÕES PARA O PROBLEMA DAS P-MEDIANAS Considerado como um problema clássico de localização de facilidades o problema das p-medianas consiste em localizar em uma rede p bases (medianas) visando a minimização da soma de todas as distâncias de cada ponto de demanda à sua mediana mais próxima (Christofides e Beasley, 1982). Sendo assim, focou-se o trabalho em duas proposições: Analisar e comparar a atual disposição das bases e distribuição com a solução encontrada pelo Algoritmo Genético e simular a possibilidade de 2085
reduzir o número de bases existentes na região objeto do estudo, tendo como respaldo os resultados encontrados pela utilização do Algoritmo de Teitz e Bart (Teitz e Bart, 1968). 3.1. Algoritmo de Teitz e Bart Por tratar-se de um problema de natureza combinatória pouco complexa foram feitas simulações embasadas no Algoritmo de Teitz e Bart (Teitz e Bart, 1968). Foram analisadas as eliminações de um ou duas bases de distribuição e as diferentes opções de combinação. Em seguida foi utilizado o método de Clustering (Mulvey e Beck, 1984) para determinar a alocação de quais municípios serão abastecidos por cada base. A princípio utilizou-se o algoritmo das p-medianas proposto por Teitz e Bart em 1968 (Teitz e Bart, 1968) calculou-se inicialmente o número de transferência de cada uma das bases existentes na configuração atual da empresa. As simulações foram feitas combinando as quatro bases entre si com a única restrição de que a de Duque de Caxias, por ser o centro principal, estivesse presente em todas elas. Para melhor compreensão da aplicação do algoritmo de Teitz e Bart ao problema, foi feita a primeira simulação eliminando-se uma base de distribuição. As bases de Duque de Caxias, Vitória e Volta Redonda foram utilizadas como uma possível solução para o problema das p-medianas. Campos dos Goytacazes será o vértice v i. V p Assim, foram calculados os números de transmissão para cada conjunto, como sendo a soma das menores distâncias existentes entre o vértice v i e todos os demais vértices em questão. Por exemplo, o σ ( V ) numero de transmissão inicial é p =896114, substituindo Campos dos Goytacazes por Vitória σ ( Vp { vi} { v j} ) temos =742716 e substituindo Campos dos Goytacazes por Volta Redonda, σ ( Vp { vi} { v j} ) Δij = σ ( Vp ) σ ( Vp { vi} { v j} ) =925007. Em seguida obtivemos as diferenças, Δ 1 ij = Δ 2 ij = 153398 e -28893. Se o máximo entre elas (Δij_ máximo) fosse menor do que zero o vértice v i (Campos dos Goytacazes) seria rotulado como analisado e o algoritmo deveria apresentar o Vp conjunto inicial como possível solução. Como não foi o que aconteceu (Δij_ máximo=153398 > 0), Vitória foi rotulado analisado e substituído por Campos dos Goytacazes sendo apresentado o novo V p (Duque de Caxias, Campos dos Goytacazes e Volta Redonda). É interessante observar que por esta condição o algoritmo deveria realizar mais uma iteração, mas todos os vértices não pertencentes ao V conjunto solução estão rotulados como analisados e p, portanto, é a possível solução para o problema. As simulações feitas para a eliminação de uma base de distribuição sugerem que o município de Vitória seja excluido. Já para a proposta de eliminação de duas bases a melhor solução foi a retirada das bases de Vitória e Campos dos Goytacazes. 3.2. Algoritmo Genético Por tratar-se de um problema de natureza combinatória mais complexa, uma vez que qualquer município candidatado poderia ser selecionado como centro, foram feitas simulações embasadas no Algoritmo Genético (Corrêa, 2000). Toda a implementação computacional foi feita utilizando a linguagem de programação Delphi. A solução gerada pelo Algoritmo Genético (AG) possibilitou que fossem feitas analises e comparações das atuais disposições das bases de distribuição e dos municípios atendidos, com a indicação das possíveis melhorias. 2086
De posse da matriz distância e da demanda mensal iniciou-se a implementação computacional do algoritmo para localizar as bases de distribuição. Dando início ao processo de desenvolvimento do Algoritmo Genético, definimos a população inicial. Foram considerados na seleção das p-bases de distribuição, o total do número de município n= 169 e optou-se pela utilização de p=4, que é o número de bases de distribuição existentes atualmente nas regiões do Rio de Janeiro e Espírito Santo. Também foram feitas simulações com p= 2 e 3 com o intuito de comparar os resultados obtidos com o Algoritmo de Teitz e Bart. Para melhor compreensão da aplicação e do desenvolvimento do AG ao problema proposto, as simulações apresentadas para localização se limitam a quatro bases de distribuição (p =4), 500 indivíduos (m) e 1500 iterações. Após definirmos os valores de p (bases de distribuição) e n (total de municípios existentes na região do RJ e ES), foi gerado computacionalmente um algoritmo que fez a combinação dos n elementos agrupados p a p. Estas combinações representam as possíveis soluções para o problema de localização das bases de distribuição. Cada combinação foi realizada até um total de m (conjunto de bases selecionadas aleatoriamente) combinações as quais foi definido como sendo 1500 e 3000. É importante lembra que quanto maior for o tamanho da população inicial, maior a possibilidade de encontrar uma melhor resposta, devido ao aumento do espaço amostral das possíveis soluções. Após gerar a população inicial, o próximo passo feito pelo algoritmo foi verificar a aptidão de cada indivíduo pertencente à população. Calculou-se a função de fitness (adaptabilidade do indivíduo) para cada indivíduo gerado. Esta função determina a capacidade de uma base suprir a demanda dos municípios designados para o mesmo, levando em consideração o somatório da demanda requerida e a mínima distância do centro ao município. Calculada a aptidão de cada indivíduo, estes foram ordenados crescentemente segundo o valor de fitness encontrado. Foram feitas simulações com 800, 1500, 5000 e 10000 iterações (k). Estes valores determinaram o número de vezes que os indivíduos foram selecionados e reproduzidos até encontrar a solução mais próxima da solução ótima para o problema. Naturalmente, quanto maior for o valor de k, o resultado estará mais próximo da solução ótima. A seleção dos dois indivíduos que serão cruzados foi feita aleatoriamente e segundo SMIDERLE (2001), provavelmente serão os indivíduos de melhor fitness. Após selecionarmos os dois indivíduos foi feito o processo de cruzamento ou crossover a fim de se obter dois novos indivíduos. O processo de crossover adotado começa com a escolha aleatória de um número entre 1 e p (total de medianas). Esse número representa o total de elementos que serão trocados entre os indivíduos. Concluído o crossover entre os indivíduos, é feita uma análise dos novos indivíduos para saber se eles são viáveis ou não. Um indivíduo será considerado viável (Figura 1(a)) se, após o crossover, não existir nenhum elemento repetido. Caso contrário, o indivíduo será não-viável (Figura 1(b)). Um indivíduo também será considerado não-viável caso, após o crossover, ele seja igual a um dos indivíduos que o geraram. RJ VAS CF VAL REZ SG SG VI SER CAR REZ SG SG VI SER CAR ALF PIU (a) VI VAS VI VAL ALF PIU (b) Figura 1 Exemplo de indivíduos viáveis(a) e não-viáveis(b) Se os dois novos indivíduos forem viáveis, é calculado o fitness de cada um. Dentre os dois é escolhido o indivíduo com o melhor fitness (o de menor valor). O novo indivíduo escolhido é 2087
comparado ao último indivíduo da população, ou seja, aquele de pior fitness. No caso do fitness do novo indivíduo for melhor que o fitness do pior indivíduo da lista, troca-se um pelo outro e a população é novamente ordenada. Caso contrário, a população permanece inalterada. Se apenas um dos dois novos indivíduos for viável, calcula-se o fitness somente do indivíduo viável. Esse indivíduo é comparado ao pior indivíduo da população e, se ele possuir um melhor fitness, ele passa a fazer parte da população no lugar do último indivíduo. Sendo assim a população é novamente ordenada. Se nenhum dos novos indivíduos for viável, é realizada a mutação de um dos indivíduos. Feita a mutação, é calculado o valor de fitness do novo indivíduo e este é comparado ao pior indivíduo da população. Se o novo indivíduo for superior ao pior indivíduo, eles são então trocados um pelo outro. No processo de mutação, escolhe-se um número aleatoriamente entre 1 e p. Esse número representa o total de municípios que serão trocados no indivíduo. Os municípios a serem trocados são selecionados da esquerda para a direita no indivíduo e selecionados, aleatoriamente, dentre os municípios que não fazem parte do indivíduo em questão. Ao término do número de iterações definidos pelo usuário, o programa indica as p-medianas ou as bases onde serão localizadas (R1), finalizando assim o Algoritmo Genético (figura 2). Figura 3 Ordenação das novas bases de distribuição de acordo com a função de aptidão 4. IMPLEMENTAÇÃO DO ALGORITMO PARA CLUSTERING 4.1 Aplicado a Teitz e Bart Para alocação dos municípios as bases mais convenientes, segundo suas distâncias, foi utilizado o Algoritmo de Clustering. Na análise da configuração atual das bases, pela já citada característica de pequeno número de combinações possíveis, todas elas foram calculadas. O objetivo foi comparar os resultados obtidos pelo Algoritmo de Teitz e Bart com a solução ótima dada por Clustering. As soluções foram diferentes por um principal motivo, enquanto Clustering leva em consideração somente as distâncias efetivamente percorridas, Teitz e Bart compara as somas de cada base a todas as cidades da amostra. Por exemplo, se uma determinada cidade foi alocada a base de Vitória, não faz sentido considerar sua distância ao de Volta Redonda, já que este trajeto não será feito. Por este motivo a solução obtida por Clustering é considerada ótima com as informações disponíveis. Para a configuração de apenas três bases em funcionamento Teitz e Bart propôs a eliminação da de Vitória, enquanto que Clustering sugere a de Volta Redonda. Quando analisada a eliminação de duas bases Teitz e Bart sugere que as de Campos dos Goytacazes e Vitória o sejam. Por outro lado a 2088
solução ótima obtida por Clustering é que deveriam ser desativadas as de Campos dos Goytacazes e de Volta Redonda (tabela 1). Tabela 1 Soluções obtidas utilizando Clustering As soluções ótimas são, portanto, para as duas alternativas: Duque de Caxias, Campos dos Goytacazes e Vitória. Duque de Caxias e Vitória Figura 3 Configurações de três e duas bases respectivamente Inicialmente levantou-se a hipótese de problemas de capacidade de atendimento das bases. Esta hipótese foi depois descartada uma vez que as bases são atualmente super dimensionados e não há problemas de abastecimento dos mesmos segundo informações da empresa. De qualquer maneira foi testado o giro de estoque mínimo necessário para suprir as demandas de cada município. Este cálculo foi feito utilizando a condição de capacidade do algoritmo de Clustering, que funciona da seguinte maneira. Cada vez que um município vai ser alocado a uma base é primeiro checada a demanda total alocada a esta. Se esta alocação não exceder a capacidade máxima desta base o município será atendido por ela, caso contrário será avaliado a segunda base mais próxima e assim por diante. 2089
Com um giro maior ou igual a três os resultados não se mofidificam. Sendo assim, o mínimo necessário para garantir o abastecimento é um giro de três vezes ao mês. Na tabela 2 está demonstrado a analise referente ao giro de estoque. Tabela 2 Giro de Estoque 4.2. Aplicado ao Algoritmo Genético O objetivo de utilizar o Algoritmo Genético é encontrar a melhor solução de localização de bases se estes fossem ser instalados hoje tendo como opção todos os municípios dos estados do RJ e ES. Esta solução foi comparada com a solução atual e com as opções de eliminação de uma e duas bases. Como pode ser visto na comparação entre as tabelas 1 e 3 a distância total percorrida nas soluções propostas pelo algoritmo genético é sempre menor do que as percorridas na melhor das soluções possíveis na configuração atual, embora com uma diferença menor do que a esperada. Isto demonstra que a localização atual das bases nestes estados é satisfatória, segundo o critério de distância percorrida. Por ser uma busca aleatória, o AG não garante solução otima. Às vezes um problema com menor número de combinações gera um melhor resultado, como pode ser visto para o caso de quatro e três bases. Um algoritmo de busca exaustiva ou um número maior de combinações e iterações provavelmente daria melhores resultados, mas isto requereria um esforço computacional superior. Para se ter uma idéia, a opção de quatro bases, com M=3000 e I=10000 levou cerca de três horas para rodar o algoritmo em um AMD Athlon 1.3GHz com 156 Mb de memória. Tabela 3 Soluções obtidas utilizando Algoritmo Genético 2090
5. CONCLUSÃO Para cada uma das opções de número de bases o Algoritmo Genético obteve melhores soluções do que com as atuais bases. Este resultado era esperado dado o número de opções possíveis para este algoritmo. Já o algoritmo de Teitz e Bart não forneceu uma boa solução para o problema proposto devido ao critério de julgamento ser diferente do utilizado por Clustering, considerada de melhor qualidade. Esta constatação foi possível devido ao pequeno número de soluções possibilitar a verificação da solução ótima através do algoritmo de Clustering. O critério utilizado neste trabalho foi o de menor custo de transporte, assumindo que este é proporcional à distância total percorrida para o abastecimento dos municípios. Um caminhão atenderia somente a um município e, portanto, poderia fazer a viagem apenas com uma fração da sua capacidade completa. Muitos outros critérios são considerados na hora da real escolha de localização das bases, como qualidade das estradas, pedágio, serras eventualmente no caminho (existem duas grandes na área considerada), possibilidade de haver um compartilhamento de caminhões entre duas ou mais cidades com pequena demanda, ICMS diferente nos estados, incentivos fiscais municipais e estaduais, terrenos adequados (qualidade do solo, risco ambiental, etc), infra-estrutura de transporte, disponibilidade de mão-de-obra especializada ou não, possibilidade de um centro em outro estado que não os considerados suprir alguns dos municípios, fatores políticos, entre muitos outros. Como a maioria destes fatores não foi computacionalmente avaliada, a solução aqui proposta não define a localização ou a eliminação de alguma base. É apenas uma ferramenta utilizada para o apoio na decisão, podendo ser adaptado a novos parametros e expandido a uma rede maior. Neste caso, a utilização de outros algoritmos, como por exemplo, algoritmo genético que gere Clustering a cada iteração obtendo desta forma a melhor solução entre as analisadas. 2091
4. REFERÊNCIAS BIBLIOGRÁFICAS (1) TEITZ, M. B.; BART, P., Heuristics methods for estimating the generalized vertex median of a weighted graph. Operations Research, 16, p. 955-961, 1968 (2) ALMEIDA, M. R., Programação automática da produção em refinarias de petróleo utilizando algoritmos genéticos. Dissertação de M. Sc., PUC-RIO, Rio de Janeiro, RJ, Brasil, 2001. (3) MULVEY, J.M.; BECK, M.P.: "Solving capacitated clustering problems". European Journal of Operational Research. v 18, p. 339-348,1984 (4) ARAKAKI, R.G.I., Heurística de Localização Alocação para problemas de localização de bases. Dissertação de D. Sc. INPE, São José dos Campos, 2002. (5) CHRISTOFIDES, N.; BEASLEY, J. E., A tree search algorithm for the p-median problem. European Journal of Operational Research, 10, pp. 196-204, 1982. (6) CORRÊA, E. S., Algoritmos Genéticos e Busca Tabu aplicados ao Problema das P-Medianas. Dissertação de M. Sc., UFPR, Curitiba, PR, Brasil, 2000. (7) COSTA, D. M. B., Aplicação de algumas técnicas da pesquisa operacional na otimização dos serviços postais. Dissertação de M. Sc., UFPR, Curitiba, PR, Brasil, 1997. (8) CUNHA, A. S.; PINTO, R. L. U. F., Uma técnica para ajuste dos parâmetros de um algoritmo genético. In: XXXIII - Simpósio Brasileiro de Pesquisa Operacional A pesquisa Operacional e o Meio Ambiente, pp. 1105-1116, Campos do Jordão, SP, Nov., 2001. (9) DASKIN, M. Network and Discrete Location: Models, Algorithms, and Applications. Wiley Interscience, New York, 1995. (10) DREZNER, Z. Facility Location: A Survey of Applications and Methods. Springer-Verlag, New York, 1995. (11) GAREY, M. R.; JOHNSON, D. S., Computers and Intractability. A Guide to the Theory of NP-Completeness. W. H. Freeman and Company, 1979. (12) GOLDBARG, M. C.; LUNA, H. P. L., Otimização Combinatória e Programação Linear Modelos e Algoritmos. Rio de Janeiro, Ed. Campus, 2000. (13) HAKIMI, S. L., Optimum location of switching centers and the absolute centers and the medians of a graph. Operations Research, 12, pp. 450-459, 1964. (14) HAKIMI, S. L., Optimum distribution of switching centers in a communication network and some related graph theoretic problems. Operations Research, 13, pp. 462-475, 1965. (15) JARVINEN, P. J.; RAJALA, J., A branch and bound algorithm for seeking the p-median. Operations Research, 20, pp. 173-178, 1972. (16) LACHTERMACHER, G., Pesquisa Operacional na tomada de decisões. Rio de Janeiro, Editora Campus, 2002. (17) LIMOEIRO, C. D. P.; SILVA, N. M.; PEREIRA, L. R., Modelo de determinação dos parâmetros de estoques em bases de distribuição de combustíveis. In: XXXIII Simpósio Brasileiro de Pesquisa Operacional A pesquisa Operacional e o Meio Ambiente, pp. 1528-1534, Campos do Jordão, SP, Nov., 2001. (18) LORENA, L. A. N., Análise Espacial de Redes com Aplicações em Sistemas de Informações Geográficas. INPE, São José dos Campos, 2000. (19) RASMUSSEN, E Clustering Algorithms, In: Baeza-Yates, Ricardo; Frakes, William B. Information Retrieval Data Structures & Algorithms. Rio de Janeiro, Prentice-Hall do Brasil. pág. 419-442, 1992. 2092
(20) LORENA, L. A. N.; SENNE, E. L. F. et al., Integração de modelos de localização a sistemas de informações geográficas. INPE, São José dos Campos, 2000. (21) MARANZANA, F. E. On the Location of Supply Points to Minimize Transport Costs. Operational Research Quarterly, 15, 261-270, 1964. (22) NEEBE, A. W., A branch and bound algorithm for the p-median transportation problem. Journal of the Operational Research Society, 29, pp. 989-995, 1978. (23) NOVAES, A. G. N.; ALVARENGA, A. C., Logística Aplicada Suprimento e Distribuição Física. 2ª Edição, Editora Pioneira, São Paulo, 1994. (24) NUNES, L. F., Algoritmos Genéticos Aplicados na Abordagem de um Problema Real de Roteirização de Veículos. Dissertação de M. Sc., UFPR, Curitiba, PR, Brasil, 1998. (25) REVELLE, C. S.; SWAIN, R. W., Central facilities Location. Geographical Analysis, 2, pp. 30-42, 1970. (26) RODRIGUES, A. M.; SALIBY, E., Aplicação da simulação no dimensionamento de bases de distribuição de combustíveis. Artigos CEL-COPPEAD, Rio de Janeiro, 1998. (27) ROSÁRIO, R. R. L.; CARNIERI, C.; STEINER, M. T. A. et al, Aplicação do Problema das P-Medianas para Determinar a Localização de Unidades de Saúde 24 Horas. In: XXXIII - Simpósio Brasileiro de Pesquisa Operacional A pesquisa Operacional e o Meio Ambiente, pp. 1155-1166, Campos do Jordão, SP, Nov. 2001. (28) SMIDERLE, A., Técnicas da Pesquisa Operacional Aplicadas a um Problema de Cobertura de Arcos. Dissertação de M. Sc., UFPR, Curitiba, PR, Brasil, 2001. (29) TEITZ, M. B.; BART, P., Heuristic Concentration: Two-Stage Solution Construction. Operational Research Society, London, 16, 955-961, 1968. (30) ZAMITH, R., A indústria para-petroleira nacional. Ed. AnnaBlume, Rio de Janeiro, 2001. 2093