GLPK Delphi Interface

October 17th, 2009 Leave a comment Go to comments

Em um recente trabalho no mestrado necessitei apresentar uma solução para um problema de Otimização Combinatória: Escalonamento de Enfermeiras.

A biblioteca GLPK (GNU Linear Programming Kit) é uma das que podem ser utilizadas para resolver este tipo de problema. Procurei por uma unit com a tradução das funções da dll para Delphi. Consegui encontrar referência para uma interface, chamada DELI, que foi feita no ano de 2003. Porém a mesma já muito defasada e sem atualização, além de não conter mapeamento para as funções que eu necessitava. Na época havia referências que ela seria distribuída juntamente com a distribuição oficial do GLPK. Não é o que se vê hoje, no repositório.

Dado estes fatos, resolvi criar uma interface para Delphi atualizada. O link abaixos dão acesso a interface.

Para usar e distribuir o software, você precisa adicionar a unit glpk.pas no seu projeto no Delphi e distribuir a glpk.dll.

Existe um projeto que distribui a glpk.dll, mas a última atualização foi para a versão 4.34. Esta distribuição da dll também depende de duas outras, libltdl3.dll e zlib1.dll.

Percebi que compilando os fontes atuais com Visual Studio a dll gerada não necessita mais destas bibliotecas. Então deixo o link para ela também. A versão compilada é a 4.39 obtida diretamente do site da fundação GNU.

O arquivo acompanha um pequeno exemplo, carregando um modelo em MathProg e exibindo a solução.

GLPK Interface for Delphi

  1. No comments yet.
  1. No trackbacks yet.