Equação Logística

Descobri esta função matemática no momento em que estudava teoria do caos, muito interessante e me deu vários momentos de pura excitação. O biólogos a usam para estudar a evolução de espécies, mas além disso fazer um simple programa que mostre as caracteristicas desta função cai como uma luva para o nosso propósito.

Na matemática temos duas facetas, as equaçõe lineares e as não-lineares, e do outro lado temos os físicos. Estes por sua vez adoram os sistemas lineares e fogem do sistema não-lineares como o diabo corre da cruz, porque isso ? É simples de explicar, os sistemas não-lineares geralmente não tem solução algébrica e somente é possivel trabalhar soluções numéricas (ae entra os computadores), além disso caso você tenha uma série matemática como solução (caso existe uma solução algébrica), você não poderá usufruir da propriedade de que a somatória do termos de uma série também é solução, isso só procede para sistema lineares. Por ironia do destino, quase tudo na natureza se comporta e muito mais fácil de ser descrita usando sistema não-lineares, até o pêndulo que é representado como algo preciso e periódico, tem na sua equação um sistema não linear, que é brutalmente cancelado com "aproximações", será sorte ou azar do pêndulo?.

As equações não-lineares são caçadas até ao extremos e afugentadas , pois só trazem dificuldades no momento da abordagem, sendo assim, os sistemas ideais ou proximo do ideal, descritos sempre que possível tem na sua, essência o ato de expurgar e arrancar de uma vez por todas qualquer resquicios de não-linearidade de uma equação. Hoje em dia tanto os físicos como os matemáticos estão perdendo este medo e encarando de frente,pois fica cade vez mais claro que para termos uma abordagem realmente adequada de um problema físico não devemos abrir mão desse tipo de equações, somente neste século é que conseguimos recursos adequados para analizar e técnicas mais apuradas para trabalhar este classe de equaçoes, partindo to estudos de poincaré. Tendo isso em mente, voltamos e olhamos para tras e vemos que aqueles mais simples problemas de física que esta totalmente revirado, que não podia trazer mais nada de novo, volta com novas abordagens, dessa forma temos algo no mínimo cômico, do lado de artigos de fisica nuclear, plasma e coisas mais avançadas, uma descrição de processos caóticos gerado por um função intriseca de natureza não-linear no simples gotejar de uma toneira ou quicar de uma bola. Uma goteira, ainda hoje guarda seu segredos! Porque não uma simples equação diferencial, é isto que veremos agora, eis que apresendo uma simples equacao do segundo grau de nome até invocado, senhores, eis a equação logistica.

f(x)=xk(1-x)


O segredo pra se observar um comportamento caótico nesta função matemática é simples, basta alimenta-la com os próprios valores gerados, apartir de uma semente, em outras palavras, digamos que eu escolhe um valor inicial para x= 0.3, com este valor, teremos um valor para f(x), que é a imagem da função, alimente a função com a sua própria imagem, o processo é simples assim. Se a constante k assumir valores menores que k=3.9 teremos uma convergência para um valor especifico, que se trata da rais da função matemática, mas caso o valor de K seja, maior ou igual a $k=3.9$, teremos um comportamento caótico, os valores gerados serão aleatórios e nao convergira jamais para um ponto ou um valor específico.

O algoritmo

Pra visualizarmos o gráfico caótico da função lógistica que adoro enfatizar se tratar de uma função simples do segundo grau, basta duas abordagens. Ou você olha a evolução para vários valores de k, testando um por um, ou elabora um gráfico que mostre a evolucão do valores de f(x) em função de k, que é muito mais promissor e didático. O processo é jogar começar com um valor de k pequeno, entrar com uma semente e rodar várias iterações, logo em seguida acrecentar um incremento a k e executar o processo de iteração novamente, assim sucesivamente.

O Código

Bem, depois que visualizamos e motamos como seria aproximadamente o algoritmo para visualizar os dados, partimos para a parte mais braçakm que é escrever os códigos. Embaixo temos o programa funcionando perfeitamente, escrito em python

Python


x =  input("entre com a semente\n-->")
incremento =  input("entre com o incremento\n-->")
arq = open("dados.txt", 'w')  
k=2
i=1
print "gravando..."	
while k <= 4:
	i=0
	while i<=50:
		x = k*x*(1-x)
		coletando =  "%f %f\n" %(x,k)
		arq.write(coletando)
		i=i+1
	k=k+incremento
arq.close()
print "\tconcluido..."




Este programa está completo, apesar de demorar alguns segundos a mais para gerar um arquivo de texto com o valores da equação logística, isso deve ao falto de se tratar de uma linguagem interpretada. O similar em C apesar de feio e incompleto segue abaixo:

C


main(){
	
float x,k=2,i=1,incremento;
printf("Entre com a semente:\n-->");
scanf("%f",&x);
printf("Entre com incremento:\n-->");
scanf("%f",&incremento);
	
while(k<=4){
i=0;
	while (i<=10){
		x = k*x*(1-x);
		printf("%f %f\n",x,k);
		i++;
		}
	k+=incremento;
	}
}





Ambos fazem a mesma coisa, só que está escrito em C e outro em Python, o segundo está bem mais completo, até hoje não aprendi a exportar para um arquivos os dados gerados por um programa escrito em C (tenho que aprender ponteiro), no caso do programa em C, é necessário fazer um redirecionamento para um arquivo usando conceitos muito simples de shell script.

Visualizando os dados

Mais uma vez fiz uso do programa gnuplot pra visualizar os dados, com o arquivo em mão gerados pelo programa acima, basta carregar o gnuplot na pasta corrente e digitar o seguinte comando:

$ gnuplot > plot 'dados.txt' u 2:1 with dots





No gráfico fica claro que para valores menores que 3.9 temos uma convergencia para um valor ou outro valores, mas acima desse intervalo, os valores nao convergem mais, se tornando caótico. Caso se interesse pelos dados baixados, voce pode pega-lo aqui (dados.txt), caso queira se aventurar pelos programinhas descritos acima, sugira que use várias combinações de sementes e incrementos para conseguir um gráfico mais elaborado.

Na verdade existe toda um embasamento filosófico e teórico, sobre teoria do caos, que podemos muito bem demostrar partindo deste exemplos simples, mas foge o que pretendia mostrar aqui, de qualquer forma acho que isso seja util para alguem. valeu !



Franklin Anderson de Oliveira Souza <[email protected]> - Merovigiam

É garantida a permissão para copiar, distribuir e/ou modificar este documento sobre os termos da GNU Free Documentation Licence. 2004


Hosted by www.Geocities.ws

1