Transcript Slide 1
Dr. Margaret (Maggie) J. Eppstein Associate Professor in Computer Science Director, Complex Systems Center B.S. Biology (after astrophysics, anthropology, biochemistry, …) M.S. Computer Science Ph.D. Environmental Engineering “Achieving insight, innovative design, and informed decision-making through systems thinking.” These examples are different in many ways: biotic/abiotic, natural/engineered, molecular/cosmic spatial scale, nanosecond/cosmic timescale… so what is similar about them? •Lots of independently acting component parts (no global control); •Components interact locally (in space and time); •Results in Self-organization (in space and time); •“Emergence” – qualitatively different system properties arising at higher scales in time and/or time; •Nonlinear dynamical systems: •Semi-stable states correspond to attractor basins (fixed point or periodic); •Negative feedbacks are stabilizing and tend to keep system in the same basin of attraction (homeostasis) •Positive feedbacks are destabilizing and can move system to a “tipping point” where it leaves the current basin of attraction. •Dynamics may be chaotic (bounded non-repeating fluctuations, sensitivity to initial conditions, difficult to predict into the future) These are the hallmarks of “Complex Systems” Example of a negative feedback loop (stabilizing) Example of a positive feedback loop (destabilizing): Earth’s Albedo Why Study Complex Systems?: 1) To learn about them •For basic science, e.g., Understanding brain function, intelligence Origins of life, evolution Earth science •For our health, e.g., Cancer biology Epidemiology •For our planet, e.g., Engineer sustainable systems Understand impacts of interventions (intentional or unintentional) •To exploit them, e.g., Engineer bioremediation schemes Generate efficient algae-based biofuels •To interface with them, e.g., Engineer orthopedic devices Rational Drug Design Why Study Complex Systems?: 2) Steal ideas/components from them •In artificial intelligence, e.g., Artificial neural networks Evolutionary Computation Swarm intelligence •In designing distributed control of systems, e.g., Substation control in electrical grid Wireless sensor networks •In molecular nanotechnology, (use self-organization as a design principle), e.g., Molecular motors Smart materials Nanobot swarms DNA computing •to copy them, e.g., Copy insect flight for mini UAVs Copy gecco wall-gripping technology Fortunately, many principles of complex systems (as well as methods for studying them) apply to systems at widely different scales in space and time. “Universality”; very different underlying mechanisms can result in very similar system behaviors. e.g., scaling laws, LALI, phase transitions, self-organization, etc. Many diverse complex systems can be modeled and analyzed using the same types of mathematical and computational abstractions. Modeling self-organized complex fluids at multiple scales; e.g., blood coagulation, synovial fluids Yves Dubief, Mechanical Engineering Program, UVM Modeling self-organized particulate flows with particle collision and adhesion at multiple scales: e.g., for algae biofuels, blood flow through artificial heart valves, gastro-intestinal flow, particle clogging of vehicle cooling systems, and sediment entrainment modeling Jeff Marshall, Mechanical Engineering Program, UVM Synthetic Biology is a new branch of Bioengineering: Engineers are learning how to “program” DNA itself, with the goal of designing and building engineered biological systems that process information, manipulate chemicals, fabricate materials and structures, produce energy, provide food, and maintain and enhance human health and our environment. The Registry of Standard Biological Parts now includes ~3200 genetic parts (DNA sequences that code for specific actions) that can be mixed and matched to build synthetic biology devices and systems A light programmable biofilm made by the UT Austin / UCSF team during the 2004 Synthetic Biology competition New UVM bioengineering faculty, Mary Dunlop, plans to sponsor a UVM Synthetic Biology Team and wants to engineer Genetic Regulatory Networks for efficient bio-fuel conversion. Engineering “intelligent systems”: Try to engineer flexible systems that can adapt on-the-fly to changing conditions. e.g., Robot uses an evolutionary algorithm to artificial neural network to create an internal “selfimage” of how itself; if a limb is removed, the robot can figure out alternative ways to locomote using remaining body parts. Josh Bongard, Computer Science Program, UVM Engineering swarms: Borrow ideas from self-organized swarming behaviors and evolution of cooperation in nature for applications ranging from animation (e.g. battle scenes in Lord of the Rings) to swarms of cooperating autonomous robots or UAVs. Modeling chaotic systems: e.g., improving weather prediction, solar system orbits, blood coagulation, population dynamics, etc. Chris Danforth, Mathematics Program, UVM Studying Complex Social Networks; e.g., information exchange, robustness of organizational networks, “social contagion”, etc. Peter Dodds, Mathematics Program, and Maggie Eppstein, Computer Science, UVM Evolutionary Algorithms: Borrow ideas from evolution to create computer programs that “evolve” good solutions to a wide range of engineering problems. (e.g., designing optimal management of stormwater runoff, evolving strategies for robot maneuvering, evolving architecture of neural networks for environmental sound recognition, etc.) Maggie Eppstein and Josh Bongard, Computer Science Program, UVM Artificial Neural Networks: Borrow ideas from neurobiology to create computer programs for a wide range of problems (e.g., assessing groundwater contamination, predicting stream flows from climate data, in general pattern recognition, data mining, etc) Donna Rizzo, Environmental Engineering Program, UVM Complex systems are “Computationally Irreducible” Research breakthroughs Cost_to Produce_vehicles Optimize_vehicle_price() mandates Number_vehicles_produced Optimize_vehicle_production() Number_vehicles_sold Vehicle_Price_to_consumer Attitudes/values Optimally_Change_Vehicles() Fuel_Price_to_consumer Amount_of_fuel_purchased Optimal_Vehicle_Usage() Optimize_price_to_consumer() Number_of_filling_stations Fuel_efficiency taxes/rebates Fuel_Price_to_Supplier Climate Optimize_building_stations() LEGEND State variables in blue Agent-based rules in red External inputs in black Optimize_price_to_supplier() Optimize_Fuel_Production() Cost_to_Produce_Fuel Amount_of_fuel_produced Maggie Eppstein, CS; Donna Rizzo Envr. Engr; Jeff Marshall, ME, UVM Regardless of whether you’re interested in computer science, mathematics, engineering, or science computing is a necessary and important tool for modeling and analysis of systems. "Computing has become the third pillar of science, along with theory and experiment" -Daniel A. Reed, Director, Renaissance Computing Institute Developing and using computer models is critical for understanding/engineering complex systems. Agent-Based Models (ABM) Computer programs where we model individual components of a system as “autonomous agents”, which interact with their local environments (including other agents) based on internal rules. Agents can represent anything from molecules, to humans, to planets, etc. ABMs are often necessary to give us insight into self-organization and emergence observed in real systems. Grid-based ABMs (cellular automata): In some agent-based models, agents are modeled as living on a cell in a “grid” and interact only with the agents in surrounding grid cells. E.g., modeling population dynamics in annual plant communities to understand invasiveness/biodiversity. 3x3: run #1 60 1 2 3 4 5 6 7 8 9 50 40 30 20 10 0 0 200 400 600 Maggie Eppstein, CS; Jane Molofsky, Plant Biology; UVM 800 1000 1200 Real-space ABMs: In other models, agents are located in 2D space and interact with those around them based on angle and distance; e.g., computer animations of simulated swarms (Reynold’s “boids” algorithm). e.g., CG crowd scenes in LOTR, Avatar; crowd modeling for designing fire escape routes, etc. Network based ABMs: In other agent based models, there may be a fixed interaction topology that determines which agents can interact. E.g., modeling cascading failures in the electrical grid. Paul Hines, Electrical Engr; Maggie Eppstein, Computer Science Program, UVM Tackling today’s complex problems will require integrative thinkers that can develop and effectively apply quantitative, computational, and systems thinking. This is what will distinguish 21st century engineers, computer scientists, and mathematicians. Calculus Computer programming Linear algebra Complex systems Statistics Physics Engineering Chemistry Economics Social sciences Biology Earth Sciences Humanities