I’ve been having an awesome time at Santa Fe Institute’s Complex Systems Summer School! This is thanks to funding from GrEBES for their travel scholarship (So thank you GrEBES!). I’ll be posting on the different topics and will try to include links to any of the computational tools suggested while I’m here. The basic setup for the school is four lectures per day with an occasional evening session. Lecturers are brought in from many different disciplines such as computer science, physics, evolutionary biology, ecology, neuroscience, and (of course my biased favorite) microbial ecology. From these varied disciplines is that there are many common themes that arise between disciplines such as self-organization, network science, robustness, critical phenomena, hierarchy, non-linearity, and emergence. These common themes are then put under the umbrella of ‘complexity science’.
That being said, there is not an agreed upon definition of complexity. For example, a biologist might be interested in the emergent properties about a complex system (i.e. emergent metabolic capabilities of a microbial community) whereas a computer scientist might say that its not the system that is complex, but the question that you are asking about the system that has the complexity (i.e. what is the best network representation from a set of observations). From an information theory prospective, a complex system is one that is not easily compressible.
An interesting discussion about complexity is how the observer’s current knowledge state affect a particular system’s classification as complex? For example, if we knew everything there was to know about your favorite biological system, would it still be considered a complex system, or just an extremely complicated one?
I won’t write about all the talks that I’ve heard so far at CSSS, but will post about my favorite ones. In case anyone is more interested, here is a link to SFI’s online course on complexity modeled after courses open on Coursera.
Melanie Mitchel gave a great introduction to complexity talk on genetic algorithms and agent based modelling. Genetic algorithms, inspired by evolutionary theory, can be used (mostly) successfully to optimize a problem. They have been used heuristically search a large search space, and often outperform an algorithm that can be logically written by the programmer. To use a genetic algorithm, you represent the problem as a ‘genome’ in many different individuals. Each individual tries to solve a problem, and then the individuals that do the best at arriving at an optimal solution are selected with some probability for the next generation. To create the next generation individual’s genomes undergo crossover and mutation. Agent based modeling is being used more and more as computational power grows. Here, a large number of individuals can be simulated and given a simple rule set to see if ’emergent properties’ exist at the group level. For example, if we have the rule set: (1) if you are far from your neighbor, move closer and (2) if you are too close to your neighbor, move further from them. Agents with these simple rules appear to have a realistic looking swarming behavior. A fun and easy to use software to for agent based modeling is NetLogo. Netlogo could also be a great teaching tool for visualization of certain concepts.
Andreas Wagner gave one of my favorite talks so far about how innovation arises during evolution of organisms. Wagner’s work tries to understand the theory of how innovation in biological organisms arises in the first place, and how genotypic variation can contribute to phenotypic change. He does this by looking at genotypic networks, or networks that of genotypes that have the same phenotype. A population of organisms can then neutrally explore genotype networks without changing their phenotype, depicted by moving between the open black circles below (cryptic genetic variation). Individuals within a population can also explore a different phenotype (colored circles) if individuals have a genetic change which affects phenotype. With more genetic diversity, the population can usually explore a higher number of different phenotypes, and thus adapt more quickly to a changing environment.
Putting the abstract idea of genotypic networks into practice, they were able to show how cryptic genetic variation allowed faster adaption of an RNA enzyme to a novel substrate here.
… More to come