1. Prova de Mestrado em Engenharia Informática
Pedro Ricardo da Nova Valente
Licenciado em Eng. Da Comunicação, vertente
Sistemas de Informação
Orientação:
Prof. Doutor Luís Paulo Reis
Mestre António Pereira
Porto, Segunda-Feira, 16 de Março, 2009
MEI-
MEI- Mestrado em Engenharia Informática– Pedro Valente
Informática– 1
2. Tavira-Clube Naval
Agenda
Olhão
Faro-Harbour Fuzeta-Canal
Tavira-Cabanas
Ancão
Olhão –
Faro – Canal de Marim
main channel
1) Introdução Flood Flood
2) Simulação Ecológica
-1
m s-1
3) Métodos de Optimização
4) Simulador EcoSimNet
5) Projecto Agente Calibrador
6) Experiências
7) Conclusões e Perspectivas Futuras
m s-1 mg m-3
MEI-
MEI- Mestrado em Engenharia Informática– Pedro Valente
Informática– 2
3. Introdução
Introdução
Simulação Ecológica
Métodos de Optimização
Simulador EcoSimNet
Projecto Agente Calibrador
Experiências
Conclusões e Perspectivas Futuras
Problema Motivação Objectivos
MEI-
MEI- Mestrado em Engenharia Informática– Pedro Valente
Informática– 3
4. Introdução
Problema
Simulação Ecológica
Métodos de Optimização
Simulador EcoSimNet
Projecto Agente Calibrador
Experiências
Conclusões e Perspectivas Futuras
• Simulação de Modelos Ecológicos Aquáticos
Domínio:
• A calibração de modelos é uma fase crucial e dispendiosa
na modelação de modelos. Normalmente realizada por
Problema: peritos no modelo, com tentativa-erro.
• Dotar o Simulador de uma ferramenta capaz de calibrar
modelos ecológicos, de forma semi-automática,
Solução diminuindo o tempo consumido no processo de calibração.
MEI-
MEI- Mestrado em Engenharia Informática– Pedro Valente
Informática– 4
5. Introdução
Objectivos
Simulação Ecológica
Métodos de Optimização
Simulador EcoSimNet
Projecto Agente Calibrador
Experiências
Conclusões e Perspectivas Futuras
Estudar como podem Algoritmos de Optimização conhecidos
ser usados no processo de calibração de modelos ecológicos;
Definir processo de Calibração Genérico para modelos
ecológicos;
Dotar o Sistema de Simulação EcoSymNet de uma ferramenta
de Calibração Automática.
Criar uma plataforma de calibração capaz de testar novos
algoritmos de Calibração
Objectivos Secundários:
• Generalização do Sistema;
• Extensibilidade dos métodos de optimização;
• Optimização do processo de análise;
MEI-
MEI- Mestrado em Engenharia Informática– Pedro Valente
Informática– 5
6. Introdução
Motivação
Simulação Ecológica
Métodos de Optimização
Simulador EcoSimNet
Projecto Agente Calibrador
Experiências
Conclusões e Perspectivas Futuras
Utilização da Simulação como ferramenta de suporte a
decisão;
Maior parte dos Simuladores ecológicos não possui
mecanismos automáticos de calibração de modelos;
Simulações são consideradas ferramentas importantes
no estudo de como um dado sistema reage à mudança
de parâmetros;
Utilização do Simulador EcoSimNet – projecto
FEUP/UFP;
MEI-
MEI- Mestrado em Engenharia Informática– Pedro Valente
Informática– 6
7. Introdução
Simulação Ecológica
Simulação Ecológica
Métodos de Optimização
Simulador EcoSimNet
Projecto Agente Calibrador
Experiências
Conclusões e Perspectivas Futuras
Simuladores
Simulação de Simulação
Ecológicos
Modelos Hidrodinâmica
Aquáticos
MEI-
MEI- Mestrado em Engenharia Informática– Pedro Valente
Informática– 7
8. Introdução
Simulação de Modelos
Simulação Ecológica
Métodos de Optimização
Simulador EcoSimNet
Projecto Agente Calibrador
Experiências
Conclusões e Perspectivas Futuras
Modelo: Representação abstracta da realidade;
Sistema: colecção de entidades, que actuam e interagem
conjuntamente para realização de algo lógico;
Simulação: permite a geração de cenários apartir de um
dado modelo;
O modelo pode ser constituído por formulação matemática
que assenta em 5 componentes:
• Variáveis externas ou funções fixas,
• Variáveis de Sistema,
• Equações Matemáticas,
• Parâmetros,
• Constantes.
MEI-
MEI- Mestrado em Engenharia Informática– Pedro Valente
Informática– 8
9. Introdução
Simulação de Modelos(1)
Simulação Ecológica
Métodos de Optimização
Simulador EcoSimNet
Projecto Agente Calibrador
Experiências
Conclusões e Perspectivas Futuras
Os Modelos podem ser classificados de diversas formas:
Estáticos ou
Dinâmicos
Classificação
de Modelos
Contínuos ou Determinísticos
Discretos ou Estocásticos
MEI-
MEI- Mestrado em Engenharia Informática– Pedro Valente
Informática– 9
10. Introdução
Simulação Hidrodinâmica
Simulação Ecológica
Métodos de Optimização
Simulador EcoSimNet
Projecto Agente Calibrador
Experiências
Conclusões e Perspectivas Futuras
A hidrodinâmica é uma parte da Mecânica dos fluidos
que estuda o escoamento dos fluidos.
Fomenta a optimização da gestão de ecossistemas
aquáticos;
A optimização deve assentar num sistema de
monitorização:
• Medidas,
• Modelação,
• Partilha de dados/resultados.
MEI-
MEI- Mestrado em Engenharia Informática– Pedro Valente
Informática– 10
11. Simuladores Ecológicos Introdução
Simulação Ecológica
Métodos de Optimização
Simulador EcoSimNet
Aquáticos
Projecto Agente Calibrador
Experiências
Conclusões e Perspectivas Futuras
Servem de SAD para um desenvolvimento sustentado
dos ecossistemas;
Simulam processos Bioquímicos
• Por exemplo: fotossíntese, ciclo de nutrientes
Devido a sua complexidade de representação, muitos
modelos são simplificações implícitas ou ambíguas;
Normalmente os Simuladores estão dependentes do
modelo. Um modelo = Um Simulador
m s-1 mg m-3
MEI-
MEI- Mestrado em Engenharia Informática– Pedro Valente
Informática– 11
12. Introdução
Métodos de Optimização
Simulação Ecológica
Métodos de Optimização
Simulador EcoSimNet
Projecto Agente Calibrador
Experiências
Conclusões e Perspectivas Futuras
Calibração: encontrar o conjunto de valores de
parâmetros indicados de forma a representar a
realidade;
Subida de Colina (Hill-Climbing)
• Método de pesquisa local;
Arrefecimento Simulado (Simulated annealing)
• Método de pesquisa local, recorrendo a analogia com a
termodinâmica
Algoritmos Genéticos
• Algoritmo evolutivo;
• Faz uso da teoria da evolução das espécies;
MEI-
MEI- Mestrado em Engenharia Informática– Pedro Valente
Informática– 12
13. Introdução
Simulador EcoSimNet
Simulação Ecológica
Métodos de Optimização
Simulador EcoSimNet
Projecto Agente Calibrador
Experiências
Conclusões e Perspectivas Futuras
Ecolang
Arquitectura Simulador
Definição •Linguagem de
Sistema EcoDynamo
Comunicação
Tavira-Clube Naval
Olhão
Faro-Harbour Fuzeta-Canal
Tavira-Cabanas
Ancão
Olhão –
Faro – Canal de Marim
main channel
Flood Flood
-1
m s-1
MEI-
MEI- Mestrado em Engenharia Informática– Pedro Valente
Informática– 13
14. Introdução
EcoSimNet
Simulação Ecológica
Métodos de Optimização
Simulador EcoSimNet
Projecto Agente Calibrador
Experiências
Conclusões e Perspectivas Futuras
EcoSimNet é acrónimo para Ecologic Simulator
Network;
Sistema Multi-Agente para Simulações Ecológicas
Integrado no projecto ABSES: Agent Based Simulation of
Ecological Systems (FCT/POSC/EIA/57671/2004);
Associado a um projecto europeu (DITTY) como
Sistemas de Apoio à Decisão (SAD) para a gestão de
ecossistemas costeiros
Dotar o Simulador da capacidade de representação de
influências externas no desenvolvimento
MEI-
MEI- Mestrado em Engenharia Informática– Pedro Valente
Informática– 14
15. Introdução
Arquitectura Sistema
Simulação Ecológica
Métodos de Optimização
Simulador EcoSimNet
Projecto Agente Calibrador
Experiências
Conclusões e Perspectivas Futuras
MEI-
MEI- Mestrado em Engenharia Informática– Pedro Valente
Informática– 15
16. Introdução
Simulador EcoDynamo
Simulação Ecológica
Métodos de Optimização
Simulador EcoSimNet
Projecto Agente Calibrador
Experiências
Conclusões e Perspectivas Futuras
Núcleo de toda a plataforma;
Capacidade de modelação para ecossistemas aquáticos;
Consegue simular componentes físicas e biológicas dos
modelos ao longo do tempo;
MEI-
MEI- Mestrado em Engenharia Informática– Pedro Valente
Informática– 16
17. Introdução
ECOLANG
Simulação Ecológica
Métodos de Optimização
Simulador EcoSimNet
Projecto Agente Calibrador
ExperiênciasConclusões e
Perspectivas Futuras
Linguagem de comunicação que permite a troca de
informações entre a aplicação de simulação ecológicas
e os agentes externos;
Baseado no trabalho de Reis e Lau (2002), a COACH
UNILANG;
linguagem de alto nível com capacidade de descrição
do sistema ecológico: Execução
• características regionais,
• percepções dos agentes e suas acções. Eventos Configuração
Tipos de
Acções
Ecolang
Exemplo Mensagem ECOLANG
Estatísticas Definições
MEI-
MEI- Mestrado em Engenharia Informática– Pedro Valente
Informática– 17
18. Introdução
Projecto Agente Calibrador
Simulação Ecológica
Métodos de Optimização
Simulador EcoSimNet
Projecto Agente Calibrador
Experiências
Conclusões e Perspectivas Futuras
Algoritmos
Arquitectura Função de
Definição Módulos de
Sistema Avaliação
Optimização
MEI-
MEI- Mestrado em Engenharia Informática– Pedro Valente
Informática– 18
19. Introdução
Projecto Agente Calibrador
Simulação Ecológica
Métodos de Optimização
Simulador EcoSimNet
Projecto Agente Calibrador
Experiências
Conclusões e Perspectivas Futuras
Desenvolvido em linguagem C++;
Comunica com o Simulador através do protocolo de
simulação EcoLang;
MEI-
MEI- Mestrado em Engenharia Informática– Pedro Valente
Informática– 19
20. Introdução
Arquitectura Sistema
Simulação Ecológica
Métodos de Optimização
Simulador EcoSimNet
Projecto Agente Calibrador
Experiências
Conclusões e Perspectivas Futuras
MEI-
MEI- Mestrado em Engenharia Informática– Pedro Valente
Informática– 20
21. Introdução
Módulos
Simulação Ecológica
Métodos de Optimização
Simulador EcoSimNet
Projecto Agente Calibrador
Experiências
Conclusões e Perspectivas Futuras
Data Manipulation: definição das estruturas de
armazenamento de dados provenientes do Simulador;
Generic Function: funções genéricas usadas por todo o
agente calibrador;
Calibration Module: funções genéricas usadas pelos
algoritmos de optimização;
Calibration Windows Form: responsável pela definição
da interface gráfica com o utilizador.
MEI-
MEI- Mestrado em Engenharia Informática– Pedro Valente
Informática– 21
22. Introdução
Módulos(1)
Simulação Ecológica
Métodos de Optimização
Simulador EcoSimNet
Projecto Agente Calibrador
Experiências
Conclusões e Perspectivas Futuras
Generic Functions
(Class)
Data
Manipulation
structures
(Classes)
Calibration Class Calibration
Windows
Forms
Simulated Genetic
Hill Climbing …
Annealing Algorithm
MEI-
MEI- Mestrado em Engenharia Informática– Pedro Valente
Informática– 22
23. Introdução
Função de Avaliação
Simulação Ecológica
Métodos de Optimização
Simulador EcoSimNet
Projecto Agente Calibrador
Experiências
Conclusões e Perspectivas Futuras
Responsável pela determinação da proximidade ou não,
da solução criada com a que pretendemos criar (grau
de confiança);
ƒ(χ) = ∑ weight * (Moriginal – Msimulated);
Weight = peso a atribuir a cada variavel em análise;
Os dados originais podem ser:
• Lidos apartir de uma base de dados com dados reais
observados;
• Tendo como base o primeiro resultado de simulação com os
parâmetros definidos por defeito pelo modelador.
MEI-
MEI- Mestrado em Engenharia Informática– Pedro Valente
Informática– 23
24. Introdução
Algoritmos de Optimização
Simulação Ecológica
Métodos de Optimização
Simulador EcoSimNet
Projecto Agente Calibrador
Experiências
Conclusões e Perspectivas Futuras
Hill-Climbing
Início
s = GerarSolucaoInicial;
T = Tinicial;
Enquanto condição de fim fazer
Se aleatorio() Entao
s’ = NovaSolucao2(N(s,1));
Senao
s’ = NovaSolucao2(N(s,2));
Se Avaliacao(s’) < Avaliacao(s) Entao
s = s’;
Fim
MEI-
MEI- Mestrado em Engenharia Informática– Pedro Valente
Informática– 24
25. Introdução
Algoritmos de Optimização
Simulação Ecológica
Métodos de Optimização
Simulador EcoSimNet
Projecto Agente Calibrador
Experiências
Conclusões e Perspectivas Futuras
Simulated Annealing
Início
s = GerarSolucaoInicial;
T = Tinicial;
Enquanto condição de fim fazer
Se aleatorio() Entao
s’ = NovaSolucao
NovaSolucao(N(s,1));
Senao
s’ = NovaSolucao(N(s,2));
Se Avaliacao(s’) < Avaliacao(s)Entao
s = s’;
Senao
s = CriterioAceitacao(s,s’,T);
ActualizarTemperatura(T);
Fim
MEI-
MEI- Mestrado em Engenharia Informática– Pedro Valente
Informática– 25
26. Introdução
Algoritmos de Optimização
Simulação Ecológica
Métodos de Optimização
Simulador EcoSimNet
Projecto Agente Calibrador
Experiências
Conclusões e Perspectivas Futuras
Genetic Algorithm
Início
P = GerarPopulacaoInicial;
Avaliar(P);
Enquanto condição de fim fazer
P’ = Recombinar(P);
P” = Mutacao(P’);
Avaliar(P”);
P = Escolha(P” U P);
Fim
Mutação com
Mutação aleatória
pequena alteração
• Valor do • Valor do
parâmetro base parâmetro base
alterado +/- com alterado
o valor do step aleatóriamente
MEI-
MEI- Mestrado em Engenharia Informática– Pedro Valente
Informática– 26
27. Introdução
Experiências
Simulação Ecológica
Métodos de Optimização
Simulador EcoSimNet
Projecto Agente Calibrador
Experiências
Conclusões e Perspectivas Futuras
Modelo Modelo
Predador- Baía de
Definição Presa Sangoo
• Resultados • Resultados
MEI-
MEI- Mestrado em Engenharia Informática– Pedro Valente
Informática– 27
28. Introdução
Definição Experiências
Simulação Ecológica
Métodos de Optimização
Simulador EcoSimNet
Projecto Agente Calibrador
Experiências
Conclusões e Perspectivas Futuras
Foram realizadas 2 experiências:
• Modelo Predador-Presa
• Modelo Baía de Sangoo
Cada experiência é constituída 10 Calibrações para cada
Algoritmo de optimização, nas mesmas condições de
simulação;
É registado as primeiras 50 soluções encontradas;
MEI-
MEI- Mestrado em Engenharia Informática– Pedro Valente
Informática– 28
29. Introdução
Modelo Predador-Presa
Simulação Ecológica
Métodos de Optimização
Simulador EcoSimNet
Projecto Agente Calibrador
Experiências
Conclusões e Perspectivas Futuras
As equações de Lotka-Volterra são um par equações
diferenciais, não lineares e de primeira ordem,
frequentemente utilizadas para descrever dinâmica nos
sistemas biológicos, especialmente quando duas espécies
interagem: uma como presa o outra como predadora.
Estas equações foram propostas independentemente por
Alfred J. Lotka em 1925 e Vito Volterra em 1926.
onde x(t) representa o número de presas no instante t,
y(t) representa o número de predadores no instante t, e
a, b, c, e d são números reais positivos.
Algumas conclusões que se retiram:
•na ausência de predadores a população de presas
cresce indefinidamente,
•na ausência de presas as espécies de predadores
tendem a extinguir-se, Classes do Modelo Parâmetros Valores
•Tendo como ponto de partida a existência de x presas e TPrey IntrinsicRateOfIncrease 0.3
y predadores, e excluindo um ponto de equilíbrio, a TPredator FoodAbsorption 0.01
solução correspondente é periódica, isto é, ao fim de um TPredator FeedRate 0.1
certo tempo T, e apesar da interacção entre eles, volta- TPredator DeathRate 0.1
se a obter uma população constituída por x presas e y Lista de Classes e Parâmetros do Modelo Predador-Presa
predadores (solução periódica de período T).
MEI-
MEI- Mestrado em Engenharia Informática– Pedro Valente
Informática– 29
31. Introdução
Modelo Predador-Presa(2)
Simulação Ecológica
Métodos de Optimização
Simulador EcoSimNet
Projecto Agente Calibrador
Experiências
Conclusões e Perspectivas Futuras
Calibração Modelo Predador - Presa
60
50
40
Taxa de Erro
Hill-Climbing
30
Arrefecimento Simulado
20 Algoritmo Genético - Pequenas mutações
Algoritmo Genético - Mutações Aleatórias
10
0
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44
Iterações/Gerações
Apesar do Hill-Climbing e Solução Erro
Arrefecimento Simulado Solução Inicial [0.3][0.01][0.1][0.1] ------
convergirem para a solução Hill-Climbing [0.3][0.01][0.1][0.1] 0.00
inicial, o algoritmo genético Arrefecimento Simulado [0.3][0.01][0.1][0.1] 0.00
convergiu para a taxa de erro Algoritmo Genético -Pequenas mutações [0.3][0.02][0.1][0.1] 0.17
em todas as simulações. Algoritmo Genético - mutações aleatórias [0.3][0.06][0.1][0.2] 0.91
MEI-
MEI- Mestrado em Engenharia Informática– Pedro Valente
Informática– 31
32. Introdução
Modelo Baía de Sangoo
Simulação Ecológica
Métodos de Optimização
Simulador EcoSimNet
Projecto Agente Calibrador
Experiências
Conclusões e Perspectivas Futuras
Representa a Baía de Sangoo, na província Shangong da
Republica Popular da China;
Características:
• Area: 180 km2;
• Profundidade max: 20 metros;
• Tem sido utilizada para produção de vieiras e ostras;
16 km
Modelo possui: 122º25’E 37º10’N
• 9 classes;
• 146 parâmetros;
17.5 km
37º00’N 122º35’E
MEI-
MEI- Mestrado em Engenharia Informática– Pedro Valente
Informática– 32
34. Conclusões e Perspectivas futuras
Calibração de modelos é realizada através da
comparação dos valores observados com os simulados,
sendo uma fase crucial no processo de modelação;
Em cada simulação, o perito (ou modelador) analisa o
resultado, realizando as alterações nos valores dos
parâmetros, tentando convergir os resultados;
A simulação de modelos ecológicos é um processo
moroso e complexo, devido a lidar com propriedades
físicas, químicas e processos biológicos;
Para optimizar o processo de calibração de modelos, é
necessário ter conhecimento da gama de valores
aceitáveis dos parâmetros;
MEI-
MEI- Mestrado em Engenharia Informática– Pedro Valente
Informática– 34
35. Conclusões e Perspectivas futuras(1)
A análise de sensibilidade dos valores de parâmetros é
crucial para o processo de calibração;
O processo de calibração de modelos ecológicos tem de
ser processo iterativo, com a ajuda de um perito no
modelo;
A função objectivo deve ser adaptado a cada modelo
ecológico em simulação, devido aos relacionamento
entre as variaveis com diferentes graus de importância
e granaluridade;
Modelos utilizados pelo EcoSimNet são determinísticos,
não sendo necessário a alteração dinâmica dos valores
de parâmetros ao longo do tempo;
MEI-
MEI- Mestrado em Engenharia Informática– Pedro Valente
Informática– 35
36. Conclusões e Perspectivas futuras(2)
Em modelos ecológicos mais complexos o processo de
calibração deve ser divididos em sub-modelos;
A Utilização de algoritmos de optimização de busca
local revelou-se serem um bom ponto de partida para a
calibração, com as devidas melhorias;
Perspectivas futuras:
• Implementação de novos métodos de optimização e seu teste
no âmbito do agente de calibração implementado;
• Inclusão de potencialidades de selecção automática do método
de calibração no agente desenvolvido;
• Realização de um conjunto mais alargado de experiências
utilizando outros modelos ecológicos.
MEI-
MEI- Mestrado em Engenharia Informática– Pedro Valente
Informática– 36