Escolar Documentos
Profissional Documentos
Cultura Documentos
sujeito às restrições :
10
Teorvi .qi
l min v l max v v = 1,...,4 (2)
i =1
10
i =1
qi
10
qi (Teorvi − l max v ) 0 v = 1,...,4 (3)
i =1
10
qi (Teorvi − l min v ) 0 v = 1,...,4 (4)
i =1
qi Massai i = 1,2,...,10 (5)
qi − Ni .Capc 0 i = 1,2,...,10 (6)
q 0 N i 0 i = 1,2,...,10 (7)
i
N i inteiro i = 1,2,...,10 (8)
Modelo matemático para o problema só com as pilhas 6 e 7
• Max q1+q2
• q1*(62.37-66)+q2*(63.72-66)<=0
• q1*(0.042-0.048)+q2*(0.052-0.048)<=0
• q1*(1.03-1.35)+q2*(1.16-1.35)<=0
• q1*(7.95-8.5)+q2*(5.17-8.5)<=0
• q1*(62.37-61)+q2*(63.72-61)>=0
• q1*(0.042-0.032)+q2*(0.052-0.032)>=0
• q1*(1.03-1.01)+q2*(1.16-1.01)>=0
• q1*(7.95-4.5)+q2*(5.17-4.5)>=0
• q1-N1*1200=0
• q2-N2*1200=0
• q1<=17560
• q2<=26800
• N1 e N2 inteiros
• q1, q2, N1 e N2 >=0
Modelo Lingo para o problema só com as pilhas 6 e 7
Set Derivado
matrix(pilha,sub):Teor;
Seção SETS
• Apenas os seguintes formatos são permitidos para lista implícita:
Seção DATA
DATA:
Lista de objetos = Lista de valores;
ENDDATA
setname: é o nome de um grupo (set) sobre cujos membros será aplicada a função
de repetição
set_index_list: é usado para se criar uma lista de índices associada aos membros do
grupo definido por setname. A função de repetição executará uma operação a
cada um dos membros referenciados pelos índices criados.
conditional qualifier: expressão que limita o escopo dos membros do setname sobre
os quais se aplicará a função de repetição. Para cada índice da lista de índices é
avaliada o conditional qualifier. Se a expressão for verdadeira, a função será
aplicada àquele membro.
expression_list: é uma lista de expressões que será aplicada a cada membro do
grupo identificado por setname. Para @FOR a lista de expressões pode conter
mais de uma expressão, enquanto que para as outras só é permitida uma. Esta
expressão pode conter inclusive outra função de repetição. Se set_index_list é
omitido, então a lista de expressão será aplicada a todos os membros do
setname.
Funções de repetição
[Funcao_Objetivo] Max = @SUM(pilha:q);
Função @TEXT
• Permite exportar soluções para arquivos do tipo texto.
• Podem ser enviados valores de variáveis, simplesmente textos,
valores de membros de grupos (sets) e de valores de variáveis ou
conjuntos associados a grupos definidos numa seção SETS.
• Sintaxe: @TEXT(‘filename’)
onde filename é o nome do arquivo para onde se fará a exportação
de informações.
• só pode aparecer do lado esquerdo de uma declaração ou
expressão dentro das seções DATA ou SETS
• o nome de arquivo filename na função @TEXT deve indicar o
caminho completo se o arquivo não estiver no mesmo diretório onde
se encontra o modelo.
DATA:
@text('resultados.txt')='Função Objetivo';
@text('resultados.txt')=FO;
@text('resultados.txt')='Massa a ser retirada de cada
pilha';
@text('resultados.txt')=pilha,q;
ENDDATA
Função de interface com o Excel
Função @OLE
• Para a utilização de uma planilha do Excel, devemos definir um nome para cada
conjunto de células referenciadas no modelo.
Outra ainda é:
1. selecionar a faixa de células arrastando-se o mouse com o botão esquerdo
pressionado;
2. soltar o botão esquerdo do mouse;
3. Ir no menu Fórmulas, depois clicar em Gerenciador de nomes e Novo;
4. Entrar com o nome desejado na caixa de diálogo Nome;
5. Clicar em Ok ou pressionar Enter
Para excluir um nome definido antes pode-se fazer o seguinte:
1. selecione o menu Inserir|Nome|Definir;
2. selecione o nome desejado;
3. clique no botão Excluir; e
4. clique no botão OK.
Ou então:
1. Ir no menu Fórmulas, depois clicar em Gerenciador de nomes;
2. Clique no nome que deseja alterar ou excluir;
3. Clique em editar e entre com o novo nome na caixa de diálogo
nome para alterar o nome ou simplesmente clique em Excluir;
4. Clicar em Ok ou pressionar Enter.
• As sintaxes da função @OLE para importação de dados e de saída
de resultados são respectivamente:
onde:
• lista_de_objetos é uma lista de nomes, separados por vírgula, de variáveis,
de grupos (sets) ou de conjuntos associados a sets a serem importados ou
exportados;
• arquivo de planilhas é um nome de um arquivo de planilha EXCEL de
onde serão importados ou para onde serão exportados os objetos da
lista_de_objetos;
• lista_de_faixas é uma lista de nomes, separados por vírgula, de faixas de
células da planilha de onde serão importados ou para onde serão
exportados os objetos da lista_de_objetos.
#NE# VERDADEIRO se operando da esquerda for diferente do operando da direita e FALSO em caso contrário.
#GT# VERDADEIRO se operando da esquerda for maior do que o operando da direita e FALSO em caso contrário.
#GE# VERDADEIRO se operando da esquerda for maior ou igual ao operando da direita e FALSO em caso contrário.
#LT# VERDADEIRO se operando da esquerda for menor do que o operando da direita e FALSO em caso contrário.
#LE# VERDADEIRO se operando da esquerda for menor ou igual ao operando da direita e FALSO em caso contrário.
#OR# VERDADEIRO se pelo menos um dos operandos forem verdadeiros e FALSO em caso contrário.
Para que @OLE funcione corretamente é necessário que o arquivo ’.xls’ utilizado esteja
aberto, a não ser quando objetos embutidos são utilizados.
Pode-se embutir uma planilha do Excel em um modelo do LINGO ou embutir um modelo do LINGO em
uma planilha do Excel.
Caixa diálogo do Lingo para inserir a planilha pilhas1.xls no modelo do LINGO salvo no arquivo
pilha4.lg4.
Este modelo foi salvo como modelo pilha9.lg4 e a figura mostra como fica o modelo após a
inserção da planilha no modelo.
A planilha embutida no LINGO aparece no topo do modelo lingo9.lg4. Para editar esta planilha,
basta dar um duplo-clique sobre o objeto.
Quando o modelo for resolvido, o LINGO enviará os resultados para o arquivo ’pilhas1.xls’
atualizando a planilha embutida.
Embutindo um modelo do Lingo em uma planilha do Excel.
O LINGO é capaz de funcionar como um servidor OLE. Isto significa que um modelo do LINGO
pode ser embutido em qualquer aplicação que funcione como cliente OLE como, por exemplo, o EXCEL. Embutir um
modelo no EXCEL é conveniente, pois o modelo estará sempre disponível sempre que o arquivo ’.xls’ for aberto, não
sendo necessário abrir o otimizador LINGO.
Janela do Lingo que aparece no arquivo pilhas1.xls após a inserção do modelo presente no arquivo
lingo4.lg4.