Ando a brincar com atractores no Matlab. Hoje explorei hoje o chamado atractor de Hénon (do trabalho de Michael Hénon) que pode ser descrito por:
O resultado deste atractor é que o pontos vão-se distribuindo aleatoriamente, até que se começa a perceber que essa distribuição afinal não é tão aleatória como isso e que se vai formando no ecrã uma linha (ou camadas de linhas quase sobrepostas). Levado ao infinito verifica-se que a linha funciona como atractor dos pontos que vão sendo gerados.
De facto, esta curva quando ampliada revela que se desdobra em duas e estas novamente ampliadas desdobram-se em mais duas, assim sucessivamente ad infinitum. O extraordinário é que quando se geram os pontos, eles parecem surgir aleatoriamente, não se sabendo onde surgirá o seguinte, apenas se sabendo que surgirá perto do atractor.
Um código simples para gerar estes atractores em Matlab segue abaixo:
henon.max=[];
ay=[];
for i=0:10000;
xplus=y+1-1.4x^2;
yplus=0.3x;
y=yplus;
x=xplus;
ax=[ax; x];
ay=[ay; y];
end
plot(ax, ay, '.');
Para correr este código basta definir um x e um y iniciais e depois chamar a ficheiro henon.m a partir da prompt do Matlab, gerando 10 000 pontos.
Nestes dias de “retiro”, uma curiosidade foi que os Macs estavam em igual número que os PCs… A família de portáteis da Apple estava toda representada. Desde os novos intel até alguns PowerBook.
Nos próximos dias vou estar nos “Encontros da Arrábida“. Para já não sei se vou ter internet por lá. Afinal a ideia é estar isolado do mundo a discutir complexidade nas ciências da vida, mas se houver net… “I’ll report back!”.
Para o trabalho final deste ano ando a perceber como é que posso integrar a complexidade da biologia num modelo, ou antes como desenhar um modelo de inspiração biológica que seja equilibrado entre o tempo que tenho para o fazer, a complexidade da biologia e a aproximação aos conceitos da complexidade. Ah! já agora dava jeito que fosse minimamente útil.
Andei a ler alguns papers sobre o desenvolvimento cancerígeno e decidi experimentar algumas ideias num modelo em NetLogo. O Boneco até que é engraçado, mas olhando para o que está por detrás do modelo… Aquilo afinal são umas regras muito básicas… e conseguir mapear aquilo com a realidade seria um esforço infrutífero. Em todo o caso se quiserem ver o modelo a funcionar podem ir ao seguinte link:
Simulation of Multicellular Tumor Spheroids Growth by Cellular Automata with Asynchronous Update. Branislav Brutovsky, Denis Horvath and Vladimir Lisy
The cellular automata with asynchronous update are used to generate the close-to-circular 2-dimensional objects revealing the desired features, such as the velocity of the growth and the fractal behavior of their contours. The approach enables to reproduce and analyze some of the recent findings in morphometric analysis of real tumors with the possible implications for cancer research. The technique is based on cellular automata paradigm with the transition rules searched for by genetic algorithms.
Anda tudo parado pelo meu lado do mestrado. Embora tenha um caminho pela frente que mais ou menos vou vislumbrando, tudo o resto parece estar preso a um chão demasiado firme… Tenho que me soltar…
Embora seja o melhor sistema operativo do planeta, a percepção que se tem da utilização e da procura do linux nem sempre é compreendida. O site distrowatch.com possui um ranking das várias distribuições de linux que permite ao utilizador perceber o “momentum” que cada distro vive.
Este ranking é baseado no número de Page Hits e embora não sendo rigoroso quanto à penetração no mercado das várias distros, permite ter uma ideia geral sobre o assunto. Tendo andado a brincar recentemente com leis de escala e leis sem escala, decidi olhar para estes rankings sob a perspectiva da matemática.
Antes de começar o estudo do ranking da distrowatch, tinha uma ideia que queria confirmar. Será que o número de page hits de cada distribuição obedece a uma lei de potências?
O tipo de fenómeno parecia ajustar-se perfeitamente a estas leis pelo que o primeiro passo foi representar o histograma do page hits em função da posição no ranking. O distrowatch possui um Top 100 na página inicial, mas permite também aceder às listagens completas e assim escolhi utilizar os dados dos últimos 12 meses para fazer esta análise.
A representação do dados num gráfico mostrou logo que estava no bom caminho:
As 359 distribuições apresentam um comportamento típico de leis sem escala, ou leis de potência. Estas distribuições aparecem numa série de fenómenos naturais. Os tremores de terra, por exemplo que são dados pela lei de Gutemberg-Ritcher:
Outros modelos incluem por exemplo a actividade neuronal, ou o tamanho dos seres, ou ainda o caso de avalanches em modelos matemáticos como o de Bak-Sneppen.
O próximo passo foi naturalmente representar os mesmos dados em escala logarítmica a fim de verificar se nesta escala eles se apresentavam como uma linha recta com um determinado declive:
O comportamento observado continuou a ser típico de uma lei de escala, embora ficasse um pouco surpreendido com a observação de que parecia haver duas zonas distintas, com declives diferentes. No fim o cut-off seria natural. As leis sem escala verificam-se sempre numa determinada gama. Para além disso verifica-se o cut-off. Mas normalmente estamos muito afastados desse cut-off. Se este cut-off não existisse isso queria dizer por exemplo que no modelo dos tremores de terra existiria certamente um tremor de terra com energia suficiente parra fazer explodir a terra. Ora a energia acumulada na terra não é ilimitada e naturalmente tem que existir um cut-off.
Representando as duas secções importantes da e ajustando-as a uma lei de potências obtive o seguinte:
Como se pode ver os r^2 são ambos muito altos. No entanto parece que o top é regido por duas leis diferentes com expoentes diferentes. Enquanto o expoente da primeira parte é muito próximo de -1, o segundo é muito próximo de -2.
Conclusão
Pensando no porquê desta diferença e porquê da transição em torno do valor 100 do ranking, presumi que o efeito se deve à presença do Top 100 na página inicial do DistroWatch, levando que as distros que estão nesta página tenham muito mais visibilidade e daí recebam mais hits que as restantes que não conseguem assim tanta visibilidade de consequentemente hits.