A apresentação está carregando. Por favor, espere

A apresentação está carregando. Por favor, espere

Análise e Modelagem de Processos

Apresentações semelhantes


Apresentação em tema: "Análise e Modelagem de Processos"— Transcrição da apresentação:

1 Análise e Modelagem de Processos
Prof. Bruno Samways dos Santos

2 Linguagem de programação
A linguagem de programação do LINGO permite a formulação de modelos com muitas variáveis e restrições, a utilização de funções pré-definidas e o interfaceamento com outros programas (excel, bancos de dados, C/C++, Java, VB.net, Delphi, etc.)

3 Estrutura do modelo Modelo composto por duas seções: função objetivo e restrições. definições dados modelo

4 SETS É a seção de definição das variáveis e constantes do modelo;
Set (conjunto) = grupo de objetos similares ordenados que apresentam mesmo(s) atributo(s) (ou características(s)); Exemplo: Conjuntos: lista de produtos, veículos, funcionários, etc. Atributos: peso, preço unitário, demanda Todos os membros de um conjunto possuem os mesmos atributos.

5 Tipos de Conjuntos Primitivo: conjunto formado por objetos básicos que não podem ser decompostos. Derivado: conjunto definido a partir de um ou mais conjuntos por meio de duas operações.

6 “nome_conjunto/membro_1,membro_2,…,membro_n/:lista_de_atributos”
Exemplos Conjunto primitivo: DEPOSITOS(membros: relação de depósitos), CLIENTES (membros: relação de clientes) Conjunto derivado: ROTAS (membros: todas as possíveis combinações de DEPOSITOS e CLIENTES) Sintaxe de conjunto primitivo “nome_conjunto/membro_1,membro_2,…,membro_n/:lista_de_atributos” OPCIONAL

7 Exemplos Depósitos de uma empresa: DEPOSITOS/D1,D2,D3/:CAPACIDADE;
Conjunto: DEPOSITOS Membros: D1, D2, D3 Atributos: CAPACIDADE Frotas de caminhões de uma empresa. FROTA/FORD,VOLVO,MERCEDES,DODGE/: CAPACIDADE,CUSTO; Conjunto: FROTA Membros: FORD, VOLVO, MERCEDES, DODGE Atributos: CAPACIDADE, CUSTO

8 Tipos de conjuntos Sintaxe de conjunto derivado: OPCIONAL
“Nome_conjunto(lista_conjuntos)/lista_de_membros/:lista_de_atributos;” Exemplo: Rotas de transporte de depósitos (2) para clientes (2). ROTAS(DEPOSITOS,CLIENTES)/X11,X12,X21,X22/:CUSTO,VOLUME; Conjunto derivado: ROTAS Conjuntos formadores: DEPOSITOS,CLIENTES Membros: X11, X12, X21, X22 Atributos: CAPACIDADE Exemplo: Nutrientes encontrados em porções de alimentos. COMP(NUTRIENTES,ALIMENTOS):QUANT; Conjunto derivado: COMP Conjuntos formadores: NUTRIENTES, ALIMENTOS Membros: --- Atributos: QUANT OPCIONAL

9 “lista_de_objetos=lista_de_valores;”
DATA Atribui valores aos membros e/ou atributos dos conjuntos Sintaxe: “lista_de_objetos=lista_de_valores;” lista_de_objetos = compreende o nome de um (ou mais) conjunto ou atributo(s) a serem inicializados. lista_de_valores = contém os valores ou definições atribuídos ao objetos relacionados na lista_de_objetos.

10 Exemplos SETS: ALIMENTOS/ARROZ,MACARRAO,FEIJAO/:VIT_A,CARBOIDRATO; ENDSETS Conjunto: ALIMENTOS Membros: ARROZ, MACARRAO, FEIJAO Atributos: VIT_A, CARBOIDRATO DATA: VIT_A = 0.35, 0.55, 1.2; CARBOIDRATO = 2.75, 8.50, 3.75 ENDDATA Lista_de_objetos (atributo): VIT_A Lista_de_valores (valores): 0.35, 0.55, 1.2 Lista_de_objetos (atributo): CARBOIDRATO Lista_de_valores (valores): 2.75, 8.50, 3.45

11 Detalhe! A lista de membros pode ser incluídas diretamente no “DATA”, por exemplo: SETS: ALIMENTOS/ARROZ,MACARRAO,FEIJAO/:VIT_A,CARBOIDRATO; ENDSETS DATA: VIT_A = 0.35, 0.55, 1.2; CARBOIDRATO = 2.75, 8.50, 3.75 ENDDATA OU ALIMENTOS:VIT_A,CARBOIDRATO; ALIMENTOS=ARROZ,MACARRAOM,FEIJAO;

12 FUNÇÕES DE LAÇO Utilizam-se as chamadas funções de laço para identificar as restrições e função objetivo do problema; @SUM – Retorna o somatório de expressões operadas sobre um conjunto. @SUM(nome_conjunto(índice):lista_expressão) @FOR – Gera expressão(ões) contida na lista_expressões para todos os membros do conjunto em um laço (utiliza-se para definir restrições!). @FOR(nome_conjunto(índice):lista_expressão)

13 FUNÇÃO OBJETIVO Exemplo: minimizar o custo da mistura (porção) entre o conjunto de alimentos... MIN = 0.14*X *X *X3; Se C = custo, então pode ser lido da seguinte forma: MIN Colunas j Linhas i

14 Restrições Colunas j Linhas i Colunas j Linhas i Onde:
= composição linha i (nutrientes) com coluna j (alimentos) = Mínimo diário requerido (atributo do conjunto nutrientes) para cada nutriente.

15 EXERCÍCIO - EXEMPLO CONJUNTOS: ALIMENTOS: Membros: 1, 2, 3
Atributos: CUSTO, X MODEL: SETS: !CONJUNTOS PRIMITIVOS: !CONJUNTO DERIVADO (NESTE CASO, É A MATRIZ Aij, POIS SE FOR INSERIDO OU RETIRADO UM ALIMENTO OU NUTRIENTE,O TAMANHO DESTE CONJUNTO É MUDADO); NUTRIENTES/A,B,C/:MINIMO; ALIMENTOS/1,2,3/:CUSTO,X; COMP(NUTRIENTES,ALIMENTOS):VAL; ENDSETS NUTRIENTES: Membros: A, B, C Atributos: MINIMO COMP(ALIMENTOS,NUTRIENTES): Atributos: VAL

16 EXERCÍCIO - EXEMPLO DADOS: DATA: MINIMO=20,32,12;
CUSTO = 0.14, 0.09, 0.12 MINIMO = 20, 32 12; VAL = 7, 4, 2, 8, 12, 18 5, 7, 2; DATA: MINIMO=20,32,12; CUSTO=0.14,0.09,0.12; VAL= 7,4,2, 8,12,18, 5,7,2; ENDDATA

17 EXERCÍCIO - EXEMPLO MINIMIZAR Z; Z = 0,14X1 + 0,09X2 + 0,12
@SUM(nome_conjunto(índice):lista_expressão) !FUNÇÃO OBJETIVO É IGUAL AO SOMATÓRIO DAS COLUNAS "j" ATÉ "n" QUE É O NÚMERO DE COLUNAS DA MULTIPLICAÇÃO CjXj. fica: SOMATÓRIO DE CjXj, com J VARIANDO DE 1 ATÉ 3.; MIN

18 EXERCÍCIO - EXEMPLO A MATRIZ Aij é definida pela composição dos nutrientes (i) nos alimentos (j). Os valores são representados por “VAL”, como definido nos conjuntos. Para todas as linhas de nutrientes i, faz-se a somatória do produto entre os coeficientes dentro da matriz Aij (“VAL”) e as variáveis Xj, referentes à quantidade da porção a ser adquirida de cada alimento. Esta somatória deve ser maior ou igual quantidade mínima diária bi(“MINIMO”) @FOR(NUTRIENTES(I): @SUM(ALIMENTOS(J):VAL(I,J)*X(J)) >= MINIMO(I));

19 Modelo completo !EXEMPLO 1 - PROBLEMA DE DIETA; MODEL: SETS:
!CONJUNTOS PRIMITIVOS: !CONJUNTO DERIVADO (NESTE CASO, É A MATRIZ Aij, POIS SE FOR INSERIDO OU RETIRADO UM ALIMENTO OU NUTRIENTE, O TAMANHO DESTE CONJUNTO É MUDADO); NUTRIENTES/A,B,C/:MINIMO; ALIMENTOS/1,2,3/:CUSTO,X; COMP(NUTRIENTES,ALIMENTOS):VAL; ENDSETS DATA: MINIMO=20,32,12; CUSTO=0.14,0.09,0.12; VAL= 7,4,2, 8,12,18, 5,7,2; ENDDATA MIN @FOR(NUTRIENTES(I): @SUM(ALIMENTOS(J):VAL(I,J)*X(J)) >= MINIMO(I)); END

20 Exercício antigo Uma fundição planeja produzir em uma semana conexões T modelos T500 e T1000 com o objetivo de maximizar os lucros da empresa. As conexões T500 e T1000 retornam um lucro de R$ 54,00 e R$ 78,00 por unidade vendida, respectivamente. Para a fabricação de uma conexão T500 são necessários 1,5kg de cobre, 0,5kg de zinco e 0,2kg de níquel. As conexões T1000 utilizam 2,5kg de cobre e 1 kg de zinco por unidade. A fundição pode receber semanalmente 500kg de cobre, 200kg de zinco e 35kg de níquel. Nestas condições, qual deve ser a quantidade de conexões T500 e T1000 que devem ser produzidos de modo a maximizar o lucro da empresa?

21 Problema de transportes
Encontre o menor custo de envio de produtos das fábricas para os clientes

22 Problema de transportes
Três reservatórios com capacidades diárias de 15,20 e 25 milhões de litros de água, abastecem 4 cidades com consumos diários de 8, 10, 12 e 15 milhões de litros de água. O custo de abastecimento, por milhão de litros, é apresentado na abaixo. Determine a política de abastecimento ótima, ou seja, aquela com menor custo. RESERVATÓRIOS CIDADES A B C D 1 2 3 4 5

23 Problema de designação
Uma fábrica possui quatro locais: 1, 2, 3 e 4 para receber três máquinas novas (A,B,C). O local 4 é demasiado pequeno para conter a máquina A. O custo da manipulação dos materiais que são processados nas máquinas, em centenas de R$/hora, envolvendo cada máquina com as respectivas posições, é o seguinte: Pretende-se determinar que local ocupará cada uma das novas máquinas, com o objetivo de minimizar o custo total de manipulação dos materiais. 1 2 3 4 A 5 X B C


Carregar ppt "Análise e Modelagem de Processos"

Apresentações semelhantes


Anúncios Google