Complexity and Fragility? John Doyle Control and Dynamical Systems BioEngineering Electrical Engineering Caltech with Prajna, Papachristodoulou, and Parrilo.

Slides:



Advertisements
Similar presentations
New Evidence That Quantum Mechanics Is Hard to Simulate on Classical Computers Scott Aaronson Parts based on joint work with Alex Arkhipov.
Advertisements

Ulams Game and Universal Communications Using Feedback Ofer Shayevitz June 2006.
Complexity. P=NP? Who knows? Who cares? Lets revisit some questions from last time – How many pairwise comparisons do I need to do to check if a sequence.
Lecture 24 MAS 714 Hartmut Klauck
Object-Oriented Software Development CS 3331 Fall 2009.
CS 325: Software Engineering January 13, 2015 Introduction Defining Software Engineering SWE vs. CS Software Life-Cycle Software Processes Waterfall Process.
Criticality and power laws Tuning 1-2 parameters  critical point In certain model systems (percolation, Ising, …) power laws and universality iff at criticality.
Software Reliability CIS 640 Adapted from the lecture notes by Doron Pelel (
CSE 331 wrapup CSE 331 University of Washington. CSE 331 goals Enable students to manage complexity ensure correctness write modest programs.
CPSC 411, Fall 2008: Set 12 1 CPSC 411 Design and Analysis of Algorithms Set 12: Undecidability Prof. Jennifer Welch Fall 2008.
Vertically Integrated Analysis and Transformation for Embedded Software John Regehr University of Utah.
Alex Aiken Chess Kickoff Meeting1 Program Analysis for Embedded Systems Alex Aiken.
Discrete-Event Simulation: A First Course Steve Park and Larry Leemis College of William and Mary.
Analysis Stage (Phase I) The goal: understanding the customer's requirements for a software system. n involves technical staff working with customers n.
Robust Mechanisms for Information Elicitation Aviv Zohar & Jeffrey S. Rosenschein The Hebrew University.
An Introduction to Black-Box Complexity
Role and Place of Statistical Data Analysis and very simple applications Simplified diagram of scientific research When you know the system: Estimation.
Chapter 11: Limitations of Algorithmic Power
GEO 130 Earth’s Physical Environments
Role and Place of Statistical Data Analysis and very simple applications Simplified diagram of a scientific research When you know the system: Estimation.
Kick-off Meeting, July 28, 2008 ONR MURI: NexGeNetSci Next Generation Network Science: An Overview Michael Kearns and Ali Jadbabaie University of Pennsylvania.
ECI 2007: Specification and Verification of Object- Oriented Programs Lecture 0.
Role and Place of Statistical Data Analysis and very simple applications Simplified diagram of a scientific research When you know the system: Estimation.
Halting Problem. Background - Halting Problem Common error: Program goes into an infinite loop. Wouldn’t it be nice to have a tool that would warn us.
Course Retrospective Richard Anderson CSE 403 Lecture 27.
OHT 9.1 Galin, SQA from theory to implementation © Pearson Education Limited 2004 Chapter 9.3 Software Testing Strategies.
1 Trends in Mathematics: How could they Change Education? László Lovász Eötvös Loránd University Budapest.
Next lecture : The System System Engineering Basic Introduction System Engineering System Engineering II.
6.896: Topics in Algorithmic Game Theory Spring 2010 Constantinos Daskalakis vol. 1:
CASE Tools And Their Effect On Software Quality Peter Geddis – pxg07u.
Of 28 Probabilistically Checkable Proofs Madhu Sudan Microsoft Research June 11, 2015TIFR: Probabilistically Checkable Proofs1.
Essence and Accident in Software Engineering By: Mike Hastings.
CSU 670 Review Fall Software Development Application area: robotic games based on combinatorial maximization problems. Software development is about.
Becoming Visual--Representation of Complex Systems Andrew Koehler, PhD LA-UR
Tonga Institute of Higher Education Design and Analysis of Algorithms IT 254 Lecture 8: Complexity Theory.
1 Definition of System Simulation: The practice of building models to represent existing real-world systems, or hypothetical future systems, and of experimenting.
CSC 395 – Software Engineering Lecture 13: Object-Oriented Analysis –or– Let the Pain Begin (At Least I’m Honest!)
Formal Models in AGI Research Pei Wang Temple University Philadelphia, USA.
OHTO -99 SOFTWARE ENGINEERING “SOFTWARE PRODUCT QUALITY” Today: - Software quality - Quality Components - ”Good” software properties.
Architectural Musings on SDN (“and now for something completely different…”) David Meyer CTO and Chief Scientist, Brocade Director, Advanced Technology.
UT-ORNL 15 March 2005 CSIIR Workshop 1 Trusted Computing Amidst Untrustworthy Intermediaries Mike Langston Department of Computer Science University of.
Emergent complexity Chaos and fractals. Uncertain Dynamical Systems c-plane.
STAR Sti, main features V. Perevoztchikov Brookhaven National Laboratory,USA.
1 Chapter 6. Classification and Prediction Overview Classification algorithms and methods Decision tree induction Bayesian classification Lazy learning.
Why Ecological Economics?. Coevolutionary economics Hunter-gatherer economics –Accumulation = death Economics of early agricultural societies –Depended.
Umans Complexity Theory Lectures Lecture 1a: Problems and Languages.
ECE450 - Software Engineering II1 ECE450 – Software Engineering II Today: Introduction to Software Architecture.
CSE 331 Software Design & Implementation Hal Perkins Autumn 2012 Wrapup 1.
STAR Kalman Track Fit V. Perevoztchikov Brookhaven National Laboratory,USA.
CENTER FOR EXOTIC QUANTUM SYSTEMS CEQS Preskill 1983 Kitaev 2002 Refael 2005 Motrunich 2006 Fisher 2009 Historically, Caltech physics has focused on the.
Manipulating the Quota in Weighted Voting Games (M. Zuckerman, P. Faliszewski, Y. Bachrach, and E. Elkind) ‏ Presented by: Sen Li Software Technologies.
Scientific Debugging. Errors in Software Errors are unexpected behaviors or outputs in programs As long as software is developed by humans, it will contain.
© 2006 Pearson Addison-Wesley. All rights reserved 2-1 Chapter 2 Principles of Programming & Software Engineering.
Open Incremental Model Checking (OIMC) and the Role of Contracts Model-Based Programming and Verification.
Optimization Problems
Software Quality Assurance SOFTWARE DEFECT. Defect Repair Defect Repair is a process of repairing the defective part or replacing it, as needed. For example,
1 Statistics & R, TiP, 2011/12 Neural Networks  Technique for discrimination & regression problems  More mathematical theoretical foundation  Works.
Formal Specification: a Roadmap Axel van Lamsweerde published on ICSE (International Conference on Software Engineering) Jing Ai 10/28/2003.
Secure Software Development Abuse Cases Chapter 8 Rasool Jalili & M.S. Dousti Dept. of Computer Engineering Fall 2010.
Balance and Filtering in Structured Satisfiability Problems Henry Kautz University of Washington joint work with Yongshao Ruan (UW), Dimitris Achlioptas.
CES 592 Theory of Software Systems B. Ravikumar (Ravi) Office: 124 Darwin Hall.
The Beauty and Joy of Computing Lecture #7 Algorithms II minors-delete-activity/story?id= /
DEPARTMENT/SEMESTER ME VII Sem COURSE NAME Operation Research Manav Rachna College of Engg.
CSC321: Introduction to Neural Networks and Machine Learning Lecture 23: Linear Support Vector Machines Geoffrey Hinton.
Lectures 2 & 3: Software Process Models Neelam Gupta.
Lecture. Today Problem set 9 out (due next Thursday) Topics: –Complexity Theory –Optimization versus Decision Problems –P and NP –Efficient Verification.
Ivan Marsic Rutgers University
CSE 331 Software Design & Implementation
Rank Aggregation.
CSCE 411 Design and Analysis of Algorithms
Presentation transcript:

Complexity and Fragility? John Doyle Control and Dynamical Systems BioEngineering Electrical Engineering Caltech with Prajna, Papachristodoulou, and Parrilo Or, what color is your herring?

Is there any hope?

What is the ultimate showstopper?

Is there any hope? What is the ultimate showstopper?

Is there any hope? What is the ultimate showstopper? We can make everything as robust and reliable as our software!

1.Robust to uncertainty in environment and components 2.Efficient use of scarce resources 3.Scalable to large system sizes (to do this, it may be necessary to have high internal complexity (complicated), but we want simple, robust, verifiable external behavior, so…) Engineering design objectives

1.Robust 2.Efficient 3.Scalable 4.Verifiable with short proofs Engineering design objectives

Want robustness & efficiency that is verifiably so May require highly complex organization and structure Robustness, evolvability, and verifiability are compatible and Tradeoff to some extent against efficiency, cost, complexity, etc. Bottom line

Threshold theorems IID bit source Erasure Error correcting codes E(latency) log(E(error)) CodeDecode Thanks to Arum and Ben

With feedback IID bit source Erasure E(latency) log(E(error)) CodeDecode Zero error with bounded E(latency) Erasure

With feedback IID bit source Erasure CodeDecode Zero error with bounded E(latency)! Danger: new fragilities! Erasure

Two opposite views of complexity Physics: Pattern formation by reaction/diffusion Edge-of-chaos Order for free Self-organized criticality Phase transitions Scale-free networks Equilibrium, linear Nonlinearity & complexity as exotica Engineering: Constraints Tradeoffs Structure Organization Optimality Robustness/fragility Verification Far from equilibrium Nonlinearity & complexity as tool

Two opposite views of life Physics: If you are dead, you are likely to stay that way Engineering: If you are alive, it is very easy to kill you The bad news (unfortunately): Robustness is less fungible with other features than you think. The good news (hopefully): If we can identify our fragilities, we can verify that we are otherwise robust and keep ourselves that way

NPP (Number partitioning problem) A “classic” NP complete problem The “simplest” hard problem

Example

| | = min=10 max=294 = | | 140 = | | 0 Scalable algorithms?

Branch and Bound

n= semilogy

n=10

n=12

n=16 Why so hard? Still exponentially bad.

n=10

Sorted Unsorted n=10

Energy landscape

Mertens, Derrida, Gross & Mezard, … Large statistical physics literature

n=10

Why should anyone care? Computational problems in biology and advanced technologies are even harder. If we can’t do this “simple” problem, what hope is there for scalability of computational methods to large networks? Is there some other reason for optimism?

Toy problem: In general: Central computational problems in biology and advanced technologies can be written this way and are formally “hard” (NP/coNP hard or undecidable)

n=10 Robustness Complexity

Various levels of paranoia explicitly modeled uncertainty check for fragilities to model parameters

Robustness Complexity simple hard robust fragile  In general

Robustness Complexity simple hard robust fragile   What if robust systems are intrinsically hard to verify and understand? Nightmare?

What if robust systems are intrinsically hard to verify and understand? Nightmare? Biology: We might accumulate more complete parts lists but never “understand” how it all works. Technology: We might build increasingly complex and incomprehensible systems which will eventually fail completely yet cryptically. Nothing in the orthodox views of complexity says this won’t happen (apparently). Fortunately, there is some good news. Illustrate the “good news” in our simple problem.

n=10

There exist example instances in all the regions permitted by the theorem.

semilogy n=10

semilogy n=10 Random problems are highly complex and extremely fragile Robust problems are rare and highly structured Computing is HARD at phase boundaries.

Random problems are highly complex and extremely fragile. Robust problems are rare and highly structured The most “interesting” problems are on the boundary.

Robustness Complexity Biology and technology Physics simple hard robust fragile

Random problems Robust problems Random problems are hopelessly fragile, and it’s easy to show that:

Robustness Complexity simple hard robust fragile  Avoiding the nightmare? ? If systems biology is here, it will fail.

Avoiding the nightmare?  Must decouple organizational and computational complexity Must explicitly exploit robustness/fragility in computation Substantial recent progress Small tip of a huge and growing iceberg, yet… New approach in its infancy

NP coNP Hard Problems P “easy” Hard Computational complexity

NP coNP P Controls Communications Economics Dynamical Systems Physics Algorithms Hard Problems

P Controls Communications Economics Dynamical Systems Physics Algorithms Domain-specific assumptions Enormously successful Handcrafted theories Incompatible assumptions Tower of Babel where even experts cannot communicate “Unified theories” failed New challenges unmet

NP coNP P Controls Communications Economics Dynamical Systems Physics Algorithms Hard Problems Internet

NP coNP P Controls Communications Economics Dynamical Systems Physics Algorithms Hard Problems Biology Internet

NP coNP Hard Problems Controls Communications Economics Dynamical Systems Physics Algorithms Goal Internet Biology Unified Theory “handcrafted” theories are special cases immediate improvements new questions and answers

P Controls Communications Economics Dynamical Systems Physics Algorithms The unifying language is (new) mathematics Tried to describe one important idea using simplest example and minimal math Just the beginning, but promising foundation for ASE? Internet Biology Challenge

NP coNP P Hard Problems Controls Communications Economics Dynamical Systems Physics Algorithms Goal Internet Biology Unified Theory Pedagogical strategy: Describe theorems on highly abstracted & simplified toy models that illustrate essence of general principles Nearly “math-free” exposition using cartoons and pictures