On the Computational Complexity of Solving Ordinary Differential Equations Olivier Bournez LIX, Ecole Polytechnique, France RP 2018 Marseille 24 September 2018 1
Our question Computational hardness of solving an Initial Value Problem (also called Cauchy’s problem ) of the form: y ′ = f ( t , y ) y ( t 0 ) = y 0 2
Our question Computational hardness of solving an Initial Value Problem (also called Cauchy’s problem ) of the form: y ′ = f ( t , y ) y ( t 0 ) = y 0 Well, this require to discuss deeper questions than expected. ◮ What means“solving” ? 2
Our question Computational hardness of solving an Initial Value Problem (also called Cauchy’s problem ) of the form: y ′ = f ( t , y ) y ( t 0 ) = y 0 Well, this require to discuss deeper questions than expected. ◮ What means“solving” ? • Answer: solving with a computer 2
Our question Computational hardness of solving an Initial Value Problem (also called Cauchy’s problem ) of the form: y ′ = f ( t , y ) y ( t 0 ) = y 0 Well, this require to discuss deeper questions than expected. ◮ What means“solving” ? • Answer: solving with a computer ◮ but what means computer? 2
Our question Computational hardness of solving an Initial Value Problem (also called Cauchy’s problem ) of the form: y ′ = f ( t , y ) y ( t 0 ) = y 0 Well, this require to discuss deeper questions than expected. ◮ What means“solving” ? • Answer: solving with a computer ◮ but what means computer? ◮ how complexity is measured? 2
Menu What is a computer? Back to our question: some maths Computable analysis point of view Parameterized complexity Analog models compared to digital models Conclusions 3
What is a computer ? Laptop Supercomputer The highest-selling single computer model of all time source: Guinness World Records Servers 4
What is a computer ? Laptop Supercomputer Commodore 64 Servers 4
What is a computer ? ENIAC Kelvin’s Tide Predicter Admiralty Fire Control Differential Analyzer Table 5
What is a computer ? Slide Rule Difference Engine Antikythera mechanism Linear Planimeter 6
A first classification time continuous space discrete 7
A first classification time continuous space ENIAC Commodore Digital Circuits laptop server supercomputer discrete 7
A first classification time continuous Analog Circuits Differential Analyzer Planimeter Antikythera Tide Predicter AFCT space ENIAC Commodore Digital Circuits laptop server supercomputer discrete 7
A first classification time continuous Analog Circuits Differential Analyzer Planimeter Antikythera Tide Predicter AFCT Difference Engine space ENIAC Commodore Digital Circuits Slide Rule laptop server supercomputer discrete 7
A first classification time continuous Not general purpose Analog Circuits Differential Analyzer Planimeter Antikythera Tide Predicter AFCT Difference Engine space ENIAC Commodore Digital Circuits Slide Rule laptop server supercomputer discrete 7
A first classification time continuous Analog Circuits Differential Analyzer space ENIAC Commodore Digital Circuits laptop server supercomputer discrete 7
A first classification time continuous Mathematical model Analog Circuits Differential Analyzer y ′ = f ( y ) Continuous Dynamical System space y ( t + 1) = f ( y ( t )) Discrete Dynamical System ENIAC Commodore Digital Circuits laptop server supercomputer discrete 7
A first classification time continuous Computability model Analog Circuits Differential Analyzer y ′ = p ( y ) GPAC space Turing machine ENIAC Commodore Digital Circuits laptop server supercomputer discrete 7
Our actual motivation Understand how analog models compare to classical digital models of computation. ◮ At computability level ◮ At complexity level. Continuous time analog models correspond to various classes of ordinary differential equations. Discussing hardness of solving IVP according to various classes of dynamics is basically discussing the computational power of various classes of analog models. 8
Sub-menu What is a computer? The GPAC Programming with the GPAC 9
Shannon’s General Purpose Analog Computer The GPAC is a mathematical abstraction from Claude Shannon (1941) of the Differential Analyzers . [Gra¸ ca Costa 03]: This corresponds to polynomial Ordinary Differential Equations (pODEs), i.e. y ′ = p ( t , y ) y ( t 0 ) = y 0 where ◮ p is a (vector of) polynomials. 10
A machine from 20th Century: Differential analyzers Underlying principles: Lord Kelvin 1876. First ever built: V. Bush 1931 at MIT. Applications: from gunfire control up to aircraft design Intensively used during U.S. war effort. Electronic versions from late Vannevar Bush’s 1938 mechanical 40s, used until 70s Differential Analyser 11
A machine from 21th Century: Analog Paradigm Model-1 http://analogparadigm.com Fully modular Basic version. ◮ 4 integrators, 8 constants, 8 adders, 8 multipliers. ◮ 14 kgs. 12
13
The General Purpose Analog Computer Shannon’s 41 presentation: Basic units: e 1 e 0 e 2 e 1 e 0 k summer: e 0 = − ( e 1 + e 2 ) constant: e 0 = ke 1 e (0) e 1 e 0 +Π e 2 e 1 e 0 product: e 0 = e 1 e 2 integrator: � t e 0 = − 0 ( e 1 ( u ) du + e (0)) (Feedback connections are allowed). A function is GPAC-generated if it corresponds to the output of some unit of a GPAC. 14
Cosinus and sinus: x = cos( t ), y = sin( t ) − 1 cos ( t ) − sin ( t ) x y x ′ ( t )= − y ( t ) y ′ ( t )= x ( t ) � x ( t )= cos( t ) ⇒ x (0)= 1 y ( t )= sin( t ) y (0)= 0 15
Sub-menu What is a computer? The GPAC Programming with the GPAC 16
Programming Exercice How to transform initial-value problem � y 1 (0) � y ′ = 0 sin 2 y 2 = 1 y 2 (0) = 0 y 1 cos y 2 − e e y 1 + t y ′ = 2 17
Programming Exercice How to transform initial-value problem � y 1 (0) � y ′ = 0 sin 2 y 2 = 1 y 2 (0) = 0 y 1 cos y 2 − e e y 1 + t y ′ = 2 into a polynomial initial value problem 17
Programming Exercice How to transform initial-value problem � y 1 (0) � y ′ = 0 sin 2 y 2 = 1 y 2 (0) = 0 y 1 cos y 2 − e e y 1 + t y ′ = 2 into a polynomial initial value problem y 1 (0) = 0 y ′ y 2 = 1 3 considering y 3 = sin y 2 17
Programming Exercice How to transform initial-value problem � y 1 (0) � y ′ = 0 sin 2 y 2 = 1 y 2 (0) = 0 y 1 cos y 2 − e e y 1 + t y ′ = 2 into a polynomial initial value problem y 1 (0) = 0 y ′ y 2 = 1 3 y 2 (0) = 0 y ′ = y 1 y 4 − y 5 2 considering y 3 = sin y 2 , y 4 = cos y 2 , y 5 = e e y 1 + t 17
Programming Exercice How to transform initial-value problem � y 1 (0) � y ′ = 0 sin 2 y 2 = 1 y 2 (0) = 0 y 1 cos y 2 − e e y 1 + t y ′ = 2 into a polynomial initial value problem y 1 (0) = 0 y ′ y 2 = 1 3 y 2 (0) = 0 y ′ = y 1 y 4 − y 5 2 y 3 (0) = 0 y ′ = y 4 ( y 1 y 4 − y 5 ) 3 considering y 3 = sin y 2 , y 4 = cos y 2 , y 5 = e e y 1 + t 17
Programming Exercice How to transform initial-value problem � y 1 (0) � y ′ = 0 sin 2 y 2 = 1 y 2 (0) = 0 y 1 cos y 2 − e e y 1 + t y ′ = 2 into a polynomial initial value problem y 1 (0) = 0 y ′ y 2 = 1 3 y 2 (0) = 0 y ′ = y 1 y 4 − y 5 2 y 3 (0) = 0 y ′ = y 4 ( y 1 y 4 − y 5 ) 3 y 4 (0) = 1 y ′ = − y 3 ( y 1 y 4 − y 5 ) 4 considering y 3 = sin y 2 , y 4 = cos y 2 , y 5 = e e y 1 + t 17
Programming Exercice How to transform initial-value problem � y 1 (0) � y ′ = 0 sin 2 y 2 = 1 y 2 (0) = 0 y 1 cos y 2 − e e y 1 + t y ′ = 2 into a polynomial initial value problem y 1 (0) = 0 y ′ y 2 = 1 3 y 2 (0) = 0 y ′ = y 1 y 4 − y 5 2 y 3 (0) = 0 y ′ = y 4 ( y 1 y 4 − y 5 ) 3 y 4 (0) = 1 y ′ = − y 3 ( y 1 y 4 − y 5 ) 4 y 5 (0) = e y ′ y 5 ( y 6 y 2 = 3 + 1) 5 considering y 3 = sin y 2 , y 4 = cos y 2 , y 5 = e e y 1 + t , y 6 = e y 1 17
Recommend
More recommend