análise e modelagem de processos prof. bruno samways dos santos [email protected]

23
Análise e Modelagem de Processos Prof. Bruno Samways dos Santos [email protected] du.br

Upload: internet

Post on 17-Apr-2015

108 views

Category:

Documents


2 download

TRANSCRIPT

Page 1: Análise e Modelagem de Processos Prof. Bruno Samways dos Santos prof_brunosantos@camporeal.edu.br

Análise e Modelagem de ProcessosProf. Bruno Samways dos [email protected]

Page 2: Análise e Modelagem de Processos Prof. Bruno Samways dos Santos prof_brunosantos@camporeal.edu.br

Análise e Modelagem de Processos

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.)

Page 3: Análise e Modelagem de Processos Prof. Bruno Samways dos Santos prof_brunosantos@camporeal.edu.br

Análise e Modelagem de Processos

Estrutura do modelo

•Modelo composto por duas seções: função objetivo e restrições.

MODEL:

SETS:…;

ENDSETS

DATA:…;

ENDDATA

Função objetivo e restrições

END

definições

dados

modelo

Page 4: Análise e Modelagem de Processos Prof. Bruno Samways dos Santos prof_brunosantos@camporeal.edu.br

Análise e Modelagem de Processos

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.

Page 5: Análise e Modelagem de Processos Prof. Bruno Samways dos Santos prof_brunosantos@camporeal.edu.br

Análise e Modelagem de Processos

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.

Page 6: Análise e Modelagem de Processos Prof. Bruno Samways dos Santos prof_brunosantos@camporeal.edu.br

Análise e Modelagem de Processos

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

Page 7: Análise e Modelagem de Processos Prof. Bruno Samways dos Santos prof_brunosantos@camporeal.edu.br

Análise e Modelagem de Processos

Exemplos• Depósitos de uma empresa:DEPOSITOS/D1,D2,D3/:CAPACIDADE;Conjunto: DEPOSITOSMembros: D1, D2, D3Atributos: CAPACIDADE

• Frotas de caminhões de uma empresa.FROTA/FORD,VOLVO,MERCEDES,DODGE/: CAPACIDADE,CUSTO;Conjunto: FROTAMembros: FORD, VOLVO, MERCEDES, DODGEAtributos: CAPACIDADE, CUSTO

Page 8: Análise e Modelagem de Processos Prof. Bruno Samways dos Santos prof_brunosantos@camporeal.edu.br

Análise e Modelagem de Processos

Tipos de conjuntos• Sintaxe de conjunto derivado:“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: ROTASConjuntos formadores: DEPOSITOS,CLIENTESMembros: X11, X12, X21, X22Atributos: CAPACIDADE

• Exemplo: Nutrientes encontrados em porções de alimentos.COMP(NUTRIENTES,ALIMENTOS):QUANT;Conjunto derivado: COMPConjuntos formadores: NUTRIENTES, ALIMENTOSMembros: ---Atributos: QUANT

OPCIONAL

Page 9: Análise e Modelagem de Processos Prof. Bruno Samways dos Santos prof_brunosantos@camporeal.edu.br

Análise e Modelagem de Processos

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.

Page 10: Análise e Modelagem de Processos Prof. Bruno Samways dos Santos prof_brunosantos@camporeal.edu.br

Análise e Modelagem de Processos

ExemplosSETS:ALIMENTOS/ARROZ,MACARRAO,FEIJAO/:VIT_A,CARBOIDRATO;ENDSETSConjunto: ALIMENTOSMembros: ARROZ, MACARRAO, FEIJAOAtributos: VIT_A, CARBOIDRATO

DATA:VIT_A = 0.35, 0.55, 1.2;CARBOIDRATO = 2.75, 8.50, 3.75ENDDATA

Lista_de_objetos (atributo): VIT_ALista_de_valores (valores): 0.35, 0.55, 1.2

Lista_de_objetos (atributo): CARBOIDRATOLista_de_valores (valores): 2.75, 8.50, 3.45

Page 11: Análise e Modelagem de Processos Prof. Bruno Samways dos Santos prof_brunosantos@camporeal.edu.br

Análise e Modelagem de Processos

Detalhe!• A lista de membros pode ser incluídas diretamente no

“DATA”, por exemplo:SETS:ALIMENTOS/ARROZ,MACARRAO,FEIJAO/:VIT_A,CARBOIDRATO;ENDSETSDATA:VIT_A = 0.35, 0.55, 1.2;CARBOIDRATO = 2.75, 8.50, 3.75ENDDATAOUSETS:ALIMENTOS:VIT_A,CARBOIDRATO;ENDSETSDATA:ALIMENTOS=ARROZ,MACARRAOM,FEIJAO;VIT_A = 0.35, 0.55, 1.2;CARBOIDRATO = 2.75, 8.50, 3.75ENDDATA

Page 12: Análise e Modelagem de Processos Prof. Bruno Samways dos Santos prof_brunosantos@camporeal.edu.br

Análise e Modelagem de Processos

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)

Page 13: Análise e Modelagem de Processos Prof. Bruno Samways dos Santos prof_brunosantos@camporeal.edu.br

Análise e Modelagem de Processos

FUNÇÃO OBJETIVOExemplo: minimizar o custo da mistura (porção) entre o conjunto de alimentos...

MIN = 0.14*X1 + 0.09*X2 + 0.12*X3;

Se C = custo, então pode ser lido da seguinte forma:

MIN = @SUM(ALIMENTOS(J):CUSTO(J)*X(J));

NUTRIENTE 1 2 3A 7 4 2 20B 8 12 18 32C 5 7 2 12

CUSTO (R$ por porção)

0,14 0,09 0,12

ALIMENTOS QUANT. MÍNIMA DIÁRIA

Colunas j

Lin

has

i

1 1 2 2 3 3

n

j jj

Z C X C X C X C X

Page 14: Análise e Modelagem de Processos Prof. Bruno Samways dos Santos prof_brunosantos@camporeal.edu.br

Análise e Modelagem de Processos

Restrições NUTRIENTE 1 2 3A 7 4 2 20B 8 12 18 32C 5 7 2 12

CUSTO (R$ por porção)

0,14 0,09 0,12

ALIMENTOS QUANT. MÍNIMA DIÁRIA

Colunas j

Lin

has

i

1 2 3

1 2 3

1 2 3

7 4 2 20

8 12 18 32

5 7 2 12

X X X

X X X

X X X

Colunas j

Lin

has

i

1

n

ij j ij

a X b

i

Onde: ija = composição linha i (nutrientes) com

coluna j (alimentos)

3

1 1 11 1 12 2 13 3 1 1 2 31

3

2 2 21 1 22 2 23 3 2 1 2 31

3

3 3 31 1 32 2 33 3 3 1 2 31

1: ( ) ( ) (7 4 2 20)

2 : ( ) ( ) (8 12 18 32)

3: ( ) ( ) (5 7 2 12)

j jj

j jj

j jj

i a X b a X a X a X b X X X

i a X b a X a X a X b X X X

i a X b a X a X a X b X X X

ib = Mínimo diário requerido (atributo do conjunto nutrientes) para cada nutriente.

Page 15: Análise e Modelagem de Processos Prof. Bruno Samways dos Santos prof_brunosantos@camporeal.edu.br

Análise e Modelagem de Processos

EXERCÍCIO - EXEMPLO

NUTRIENTE 1 2 3A 7 4 2 20B 8 12 18 32C 5 7 2 12

CUSTO (R$ por porção)

0,14 0,09 0,12

ALIMENTOS QUANT. MÍNIMA DIÁRIA

CONJUNTOS:ALIMENTOS:

Membros: 1, 2, 3Atributos: CUSTO, X

NUTRIENTES:Membros: A, B, CAtributos: MINIMO

COMP(ALIMENTOS,NUTRIENTES):Atributos: VAL

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

Page 16: Análise e Modelagem de Processos Prof. Bruno Samways dos Santos prof_brunosantos@camporeal.edu.br

Análise e Modelagem de Processos

EXERCÍCIO - EXEMPLO

NUTRIENTE 1 2 3A 7 4 2 20B 8 12 18 32C 5 7 2 12

CUSTO (R$ por porção)

0,14 0,09 0,12

ALIMENTOS QUANT. MÍNIMA DIÁRIA

DADOS:

CUSTO = 0.14, 0.09, 0.12MINIMO = 20, 32 12;VAL = 7, 4, 2,

8, 12, 185, 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

Page 17: Análise e Modelagem de Processos Prof. Bruno Samways dos Santos prof_brunosantos@camporeal.edu.br

Análise e Modelagem de Processos

EXERCÍCIO - EXEMPLO

NUTRIENTE 1 2 3A 7 4 2 20B 8 12 18 32C 5 7 2 12

CUSTO (R$ por porção)

0,14 0,09 0,12

ALIMENTOS QUANT. MÍNIMA DIÁRIA

MINIMIZAR Z;

Z = 0,14X1 + 0,09X2 + 0,12

!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 = @SUM(ALIMENTOS(J):CUSTO(J)*X(J));

@SUM(nome_conjunto(índice):lista_expressão)

Page 18: Análise e Modelagem de Processos Prof. Bruno Samways dos Santos prof_brunosantos@camporeal.edu.br

Análise e Modelagem de Processos

EXERCÍCIO - EXEMPLO

NUTRIENTE 1 2 3A 7 4 2 20B 8 12 18 32C 5 7 2 12

CUSTO (R$ por porção)

0,14 0,09 0,12

ALIMENTOS QUANT. MÍNIMA DIÁRIA

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));

Page 19: Análise e Modelagem de Processos Prof. Bruno Samways dos Santos prof_brunosantos@camporeal.edu.br

Análise e Modelagem de Processos

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 = @SUM(ALIMENTOS(J):CUSTO(J)*X(J));

@FOR(NUTRIENTES(I):

@SUM(ALIMENTOS(J):VAL(I,J)*X(J)) >= MINIMO(I));

END

Page 20: Análise e Modelagem de Processos Prof. Bruno Samways dos Santos prof_brunosantos@camporeal.edu.br

Análise e Modelagem de Processos

Exercício antigoUma 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?

Page 21: Análise e Modelagem de Processos Prof. Bruno Samways dos Santos prof_brunosantos@camporeal.edu.br

Análise e Modelagem de Processos

Problema de transportes

FÁBRICA 1

FÁBRICA 2

CLIENTE 1

CLIENTE 2

CLIENTE 3

400

500

300

200

400

600

800

700

400

900

600

CAPACIDADE DE FABRICAÇÃO

DEMANDA POR PRODUTOSCUSTOS (R$/PRODUTO)

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

Page 22: Análise e Modelagem de Processos Prof. Bruno Samways dos Santos prof_brunosantos@camporeal.edu.br

Análise e Modelagem de Processos

Problema de transportesTrê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

2 3 2 5 2

3 4 1 2 3

Page 23: Análise e Modelagem de Processos Prof. Bruno Samways dos Santos prof_brunosantos@camporeal.edu.br

Análise e Modelagem de Processos

Problema de designaçãoUma 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 1 3 X

B 3 1 4 3

C 3 3 4 2