1 operadores e funções do lingo prof. andré marcato livro texto: lingo – the modeling language...

Post on 17-Apr-2015

124 Views

Category:

Documents

4 Downloads

Preview:

Click to see full reader

TRANSCRIPT

1

Operadores e Funções do LINGO

Prof. André Marcato

Livro Texto: LINGO – The Modeling Language and Optimizer

Aula 4 2

Introdução

Operadores Padrões: Aritméticos, lógicos e relacionais Matemáticos Financeiros Probabilísticos Domínio Variável Manipulação de Conjuntos Laço de Conjunto Importação e Exportação Miscelânea

Aula 4 3

Operadores Padrões - Aritméticos

Aula 4 4

Operadores Padrões - Lógicos

Aula 4 5

Operadores Padrões - Lógicos

Aula 4 6

Operadores Padrões - Relacionais

São utilizados nas restrições do modelo.

O operador < é equivalente a <=. O operador > é equivalente >=. O LINGO não possui o operador estritamente menor que ou estritamente maior que.

Aula 4 7

Tabela de Prioridades de Operadores

Na ausência de parênteses todos os operadores de mesma prioridade são executados da esquerda para direita.

A melhor estratégia é a utilização de parênteses.

Aula 4 8

Funções Matemáticas (1)

Aula 4 9

Funções Matemáticas (2)

Aula 4 10

Funções Matemáticas (3)

Aula 4 11

Funções Matemáticas (4)

Aula 4 12

Funções Financeiras

FPA: Numa série de pagamentos fixos de R$ 1,00 que foram calculados a uma taxa I. Qual o valor presente do montante?

FPL: Numa série de N pagamentos fixos de R$ 1,00 que foram calculados a uma taxa I. Qual o valor presente da N-ésima

parcela?

Aula 4 13

Funções de Probabilidades

Aula 4 14

Funções de Probabilidades

Aula 4 15

Funções de Probabilidades

Funções de Probabilidade

@QRAND: Produz uma seqüência de números uniformente distribuídos no intervalo (0,1). Só pode ser utilizada na seção DATA.

Geralmente, será utilizada para preencher uma tabela de duas dimensões com m linhas e n variáveis. m representa o número de cenários e n o número de variáveis aleatórias em cada cenário. Entre linhas, os números são “super uniformente distribuídos”.

Exemplo: m = 4; n = 2. Para uma linha os números estarão no invervalo (0,0.5), para outra linha os números estarão no intervalo (0.5,1) e para as outras duas um número será menor que 0.5 e o outro maior que 0.5.

Se a semente não for especificada, será utilizado o clock do sistema para construir o valor da semente.

Aula 4 16

Aula 4 17

Funções de Probabilidades

Aula 4 18

Funções de Probabilidades

Aula 4 19

Funções de Domínio Variável

Aula 4 20

Funções de Manipulação de Conjunto

@IN: determina se um elemento de conjunto está contido em um conjunto.

@INDEX: retorna o índice de um elemento primitivo de conjunto dentro do seu conjunto.

@SIZE: retorna o número de elementos de um conjunto

@WRAP:

Aula 4 21

Funções de Manipulação de Conjunto - Exemplo

Aula 4 22

Funções de Manipulação de Conjunto - Exemplo

Aula 4 23

Funções de Laço de Conjunto

Aula 4 24

Funções de Interface

Permite que o usuário inclua dados de arquivo texto externos em qualquer posição do modelo.

Aula 4 25

Funções de Interface

Esta função é utilizada para estabelecer conexões com algum banco de dados

data_source: nome do banco de dados table_name: É o nome da tabela do banco de dados

que será estabelecida a conexão col_i: É a coluna (ou campo) do banco de dados que

será estabelecida a conexão

Aula 4 26

Funções de Interface

Cria uma interface com o excel que permite a importação e exportação de dados.

A transferência é feita diretamente através da memória sem necessidade de criação de arquivos intermediários

Aula 4 27

Funções de Interface

Esta função é para ser utilizada em conjunto com o LINGO DLL (Dynamic Link Library)

Permite a transferência de dados diretamente através de compartilhamento de memória.

Aula 4 28

Funções de Interface

É utilizada para exportar soluções para arquivos texto. ´a´: append.

Funções de Relatório

São usadas para gerar relatórios baseados nos resultados do modelo.

São válidas tanto para a Seção CALC como para a Seção DATA

Permite ao usuário exportar os relatórios para arquivos texto, planilhas, banco de dados ou aplicações chamadas pelo próprio usuário.

Aula 4 29

Funções de Relatório

Aula 4 30

@ DUAL: Imprime os valores duais de uma variável ou restrição.

Funções de Relatório

Aula 4 31

@FORMAT: Usada em conjunto com os comandos @WRITE e @WRITEFOR

Utiliza as convenções da linguagem C.

12.2f: 12 caracteres, sendo que destes os três últimos correspondem pontos e aos dígitos decimais

Funções de Relatório

Aula 4 32

Funções de Relatório

Aula 4 33

Plotando uma Função Normal Padrão

Aula 4 34

Plotando uma Função Normal Padrão

Aula 4 35

Plotando uma Função Normal Padrão

Aula 4 36

Plotando uma Função Normal Padrão

Aula 4 37

Funções de Relatório

Aula 4 38

@ITERS: Retorna o número total de iterações requeridas para resolver o modelo.

Funções de Relatório

Aula 4 39

@NAME: retorna o nome de uma variável ou linha como texto.

Funções de Relatório

Aula 4 40

@NEWLINE: Escreve n linhas no dispositivo de saída.

@OBJBNS: Retorna o limite sobre o valor objetivo.

@RANGED: Retorna o decremento possível de uma variável ou uma restrição.

@RANDEU: Retornoa o incremento possível de uma variável ou uma restrição

Funções de Relatório

Aula 4 41

Funções de Relatório

Aula 4 42

@STATUS: Retorna o status final do processo

Funções de Relatório

Aula 4 43

Funções de Relatório

Aula 4 44

@STRLEN: Retorna o comprimento de uma determinada string.

@TABLE: Imprime tanto um valor de atributo quanto os membros de um conjunto em formato tabulado.

Funções de Relatório

Aula 4 45

Funções de Relatório

Aula 4 46

Funções de Relatório

Aula 4 47

@TABLE

Funções de Relatório

Aula 4 48

@TIME: retorna o tempo total de execução, em segundos.

Funções de Relatório

Aula 4 49

@WRITE: retorna o valor de um ou mais objetos

@WRITEFOR: retorna o valor de um ou mais conjuntos ao longo SET.

Funções de Relatório

Aula 4 50

Funções de Relatório

Aula 4 51

Text Replication Operator (*): Pode ser usado tanto no write quanto no write for.

Funções de Relatório

Aula 4 52

Miscelânea

Aula 4 53

@IF: Avalia uma função lógica.

Funções de Relatório

Aula 4 54

@IF: Opções de linearização e otimização global desativadas.

Funções de Relatório

Aula 4 55

@IF com opção de linearização ativada ou global solver ativado:

Funções de Relatório

Aula 4 56

@WARN: Imprime uma mensagem se a condição lógica é atendida.

Funções de Relatório

Aula 4 57

top related