O desenvolvimento de modelos com o RepastPy é simples e rápido, mesmo para quem não esteja dentro da linguagem Java. A utilização do RepastPy para desenvolver modelos de base mostra a potencialidade desta ferramenta permitindo implementar um modelo em relativamente pouco tempo, exportando posteriormente para ficheiros de Java que podem ser importados noutros projectos.
Para ilustrar a utilização do RepastPy criei uma pequena simulação onde se ilustram alguns conceitos do RepastPy. Neste modelo temos um espaço bidimensional (100×100) completamente preenchido por agentes (células). As regras desta simulação são explicadas seguidamente:
Células:
- Cada célula em cada geração é de um determinado tipo.
- A sua representação na grelha é feita numa escala de cinzento, sendo que cada cinzento representa um tipo de célula diferente.
- As células não nascem nem morrem. Apenas mudam de tipo a cada iteração.
Espaço:
- O espaço (100×100) está completamente preenchido por células distribuídas aleatoriamente.
- Inicialmente o tipo de cada célula é definido aleatoriamente a partir de um conjunto de valores possíveis definidos por dois parâmetros.
Evolução:
- A cada passo (step) do modelo, cada célula vai mudar de tipo, seleccionando uma célula da sua vizinhança de Moore (8 células vizinhas) e copiando para si o tipo da célula escolhida.
- Existe um parâmetro de mutação (probabilidade) que permite definir se a célula vai sofrer uma mutação nessa geração. Caso assim seja, a célula em vez de copiar um tipo de uma célula vizinha, vai aleatoriamente mutar para um qualquer tipo do intervalo de tipos possíveis definido no arranque do modelo.
Como experimentar o modelo:
Pré-requisitos:
- Ter o Java instalado no seu computador – Pode fazer download do Java a partir do site da Sun.
- Caso seja utilizador windows, deve ter também o .NET Framework 1.1 instalado.
Instalação:
- A partir do site do Repast, faça download do Repast 3.1 e instale-o.
Correr o modelo:
- Abra o RepastPy e abra o modelo cell_mutation. Compile (bandeira azul do menu) e Corra (bandeira verde do menu) o modelo.
Exemplo:
- Se tudo correr bem deve ter um modelo que se comporte de forma semelhante à imagem seguinte que mostra o início e o estado da simulação ao fim de aproximadamente 1000 iterações.