Arquitetura por meio de sistemas geradores e processos digitais

ATIVIDADE ASSÍNCRONA . 2ªfeira

O texto a seguir faz uma breve apresentação da temática sistemas generativos e computação evolutiva. Posteriormente é proposta uma atividade organizada em duas etapas. A primeira irá fornecer fundamentação teórica para a realização da atividade prática desenvolvida na Etapa2.

Um sistema generativo (SG) é conhecido por três características: (1) geração de múltiplas soluções potenciais, (2) exploração criativa de soluções devido à multiplicidade e (3) obtenção de soluções mais eficientes. Nesse sentido, podemos compara-lo a um mecanismo constituído por diferentes peças que se inter-relacionam, formando um sistema que ao ser ativado irá gerar automaticamente vários produtos.

Essa lógica da automatização pode ser utilizada como metodologia de projeto, levando o arquiteto e urbanista a projetar o mecanismo em vez do objeto em si. No entanto, para a estruturação desta metodologia de projeto, podemos estabelecer uma analogia ao mecanismo responsável pela evolução das espécies encontrado na natureza. O processo evolutivo é caracterizado pela integração e interação entre um grande número de indivíduos de uma espécie que buscam atingir o equilíbrio com o meio por meio da sobrevivência daqueles que são mais aptos. É importante lembrar que segundo a Teoria de Darwin, nenhum indivíduo é idêntico a outro, todos possuem diferenças, são estas variações que tornará um indivíduo mais apto (adaptado) ou não ao meio.

Essa situação é muito semelhante ao que encontramos no processo de projeto, uma vez que existem diferentes soluções para um mesmo problema de projeto, sendo a ideal aquela capaz de melhor atender as condições definidas pelo arquiteto (necessidades do usuário, conforto ambiental, desempenho estrutural etc.), tornando-se assim a mais apta. Diante do exposto, podemos então definir essa metodologia como um sistema generativo de projeto evolutivo. Este modelo de método integra a computação evolutiva (algoritmo evolutivo) ao processo de projeto, inserindo-o na área de pesquisa CAAD (computer aided architectural design). Esta área dedica-se a investigar a influência das tecnologias digitais na área da arquitetura.

Com o intuito de aprofundar uma pouco mais o conhecimento nesta área, propomos uma atividade a ser realizada em 2 etapas para a compreensão e experimentação dessa temática. A primeira etapa corresponde a leitura de dos artigos “Algoritmo e Códigos como Forma de Representação Aberta e Dinâmica” e “Morfogênese como Projeto Digital”, ambos publicados respectivamente no evento GRAPHICA – XII INTERNATIONAL CONFERENCE ON GRAPHICS ENGINEERING FOR ARTS AND DESIGN dos anos de 2017 e 2019. Eles fornecem a base conceitual para a contextualização da experimentação prática a ser realizada na segunda etapa desta atividade.  Na segunda etapa propomos a realização de um exercício prático que irá simular a aplicação simplificada do algoritmo evolutivo (AE) como um sistema generativo capaz de contribuir para o processo de criação. Embora o AE seja uma técnica computacional que irá explorar justamente a capacidade de processamento da ferramenta computador (uma vez que ele pode processar rapidamente milhares de arranjos e rearranjos de maneira automatizada em poucos segundos), iremos com esta atividade manual reconhecer e experimentar os procedimentos que envolvem o processo evolutivo. Por isso, o exemplo adotado para o desenvolvimento da atividade é simplificado, além de facilitar o entendimento dos mecanismos que envolvem o AE.

ETAPA 1: Fundamentação teórica

artigo 1: Algoritmo e Códigos como Forma de Representação Aberta e Dinâmica.

artigo 2: Morfogênese como Processo de Projeto Digital.

ETAPA 2: Exercício prático – experimentando um sistema generativo evolutivo

Na computação evolutiva o INDIVÍDUO corresponde a uma solução candidata a satisfazer um determinado problema. Para isso cada característica que o irá compor, ou seja, o GENE, deverá apresentar variações compondo diferentes indivíduos. Nesta atividade iremos considerar 3 características: forma, cor e composição. Elas irão definir uma sequência de genes responsáveis pela constituição do DNA de um indivíduo. A representação do indivíduo por meio dos genes será denominado GENÓTIPO e a sua manifestação no espaço físico é denominada FENÓTIPO (Figura 01).

Figura 1 – Genótipo (genes – representação do indivíduo) e Fenótipo (indivíduo)Fonte: autor

Para iniciar o processo é necessário criar uma POPULAÇÃO INICIAL. Esta população é composta por um conjunto de indivíduos gerados aleatoriamente, sendo as próximas populações constituídas por gerações obtidas pelo cruzamento dos indivíduos mais aptos.


1º passo: Crie uma população composta por 6 indivíduos diferentes, cada um será definido por dois genes da forma/cor e um gene indicando como ocorre a conexão entre estas formas. Você pode utilizar duas formas iguais (por exemplo “A D” ou “BE” etc.), mas as duas formas não podem ser da mesma cor (por exemplo “AA” ou “AB”  ou “CB” etc.)


Após formada a população inicial, cada indivíduo será avaliado conforme restrições que irão modelar a intenção projetual, sendo gerado o FITNESS FUNCTION ou FUNÇÃO DE AVALIAÇÃO. Nesta atividade pretendemos obter as soluções com a maior área total, sem repetição de formas em um mesmo indivíduo, predominância da cor azul e conexão do tipo Beta. Dessa forma, iremos atribuir diferentes valores para cada gene de maneira que as características mais favoráveis recebam valores mais elevados. Sendo assim, ao aplicar a função de avaliação em cada indivíduo da população será possível mapear os seus genes e atribuir os seus respectivos valores. O somatório destes valores corresponderá ao VALOR DE FITNESS ou VALOR DE APTIDÃO de cada indivíduo (Figura 2). [obs.: parece óbvia a solução, uma vez que conseguimos definir tais indivíduos apenas olhando os genes, mas lembre-se: o exercício foi facilitado para a realização manual e o entendimento do mecanismo evolutivo]. Diante disso, é possível fazer um ranking (no topo os melhores com os maiores valores de fitness) das melhores soluções obtidas.

Figura 2 – Tabela de valores dos genesFonte: autor


2º passo: Utilizando a tabela de valores dos genes acima, encontre o Valor de Fitness correspondente a cada indivíduo .


Na natureza, os indivíduos mais aptos são aqueles que estão melhor adaptados às condições do meio em que vivem, favorecendo maior tempo de vida e procriação. Os menos adaptados sobrevivem pouco tempo e apresentam uma taxa de reprodução inferior aos outros, consequentemente as suas características genéticas são menos disseminadas. Assim ocorre o processo de SELEÇÃO NATURAL. No caso dos AG, o valor de fitness é utilizado para simular o processo de seleção natural, ou seja, os indivíduos que apresentarem maior valor de fitness serão escolhidos como “INDIVÍDUOS PAIS


3º passo: Selecione dois “indivíduos pais” (os que tiverem maior Valor de Fitness” uma vez que buscamos a maximização dos valores).


Estes irão cruzar e compor a próxima geração. O CRUZAMENTO (RECOMBINAÇÃO) entre os “indivíduos pais” corresponde à troca de parte do código genético de cada um deles, gerando novos indivíduos. Existem diferentes maneiras para realizar esta troca, a partir de um ponto, dois pontos ou uniforme. Nesta atividade iremos definir um ponto, como demonstrado no exemplo abaixo (Figura 3).

Figura 3 – Cruzamento dos indivíduosFonte: autor


4º passo: Faça o cruzamento dos “indivíduos pais” (ou seja, faça todas as possíveis permutações entre os genes dos pais).


Como o algoritmo evolutivo geralmente utiliza o modelo geracional, ou seja, mantem o número de indivíduos nas gerações, a segunda população será composta pelos “INDIVÍDUOS FILHOS” e aqueles que obtiveram melhor fitness na população anterior. Esta é uma das estratégias evolutivas utilizadas para compor uma população, garantindo a DIVERSIDADE e evitando a rápida ESPECIAÇÃO. É importante destacar que a MUTAÇÃO é um processo fundamental para a evolução, pois ela irá promover a variação dos genes e contribuir (ou não) para a adaptação das espécies. Ela é provocada por fatores externos (por efeito da radiação) ou erro/falha na leitura da sequência de genes), criando assim uma característica diferente ou alterada a que já existia.


5º passo: Forme a próxima geração contendo os 2 indivíduos filhos melhores avaliados e complete a população com mais 4 indivíduos da população inicial os que apresentaram maior valor de fitness – incluindo os pais). Escolha um indivíduo aleatoriamente para provocar uma mutação, substituindo algum gene dele por outro que não está presente entre todos os indivíduos desta geração.


O processo pode ser repetido várias vezes, dependerá do programador. É possível determinar um número específico de gerações ou estabelecer um tempo máximo para a execução do processo. Nesta atividade ficaremos limitados a 3 gerações, a inicial e mais 2 subsequentes.


6º passo: Repita o processo de avaliação e identificação do valor de fitness de cada indivíduo, escolha os dois indivíduos pais e constitua mais uma população, ou seja, repita os passos 3, 4 e 5. Assim completaremos a 3ª geração. Este procedimento pode ser repetido várias vezes até obter a solução desejada, ou seja, a mais apta (aquela que satisfaça a intenção desejada: obter as soluções com a maior área total, sem repetição de formas em um mesmo indivíduo, predominância da cor azul e conexão do tipo Beta).


Após experimentar este método, digitalize os seus estudos, gere um arquivo no formato PDF apresentando toda a sequência criada por você (utilize o seu nome para nomear o arquivo PDF). Acesse a pasta Introdução a arquitetura – Sistemas Geradores e faça o upload do arquivo. Na 4ª feira conversaremos sobre o resultado! Até lá 🙂 !

 

ATIVIDADE SÍNCRONA . 4ªfeira

Assistir a webconferência “Arquitetura por meio de sistemas geradores e processos digitais” e apresentar o resultado da atividade prática realizada na Etapa 2 do momento assíncrono.