applied mathematics algorithm - utokyo opencourseware · 2008. 6. 4. · mathematics of...

38
Mathematics of Optimization Viewpoint of applied mathematics Algorithm Kazuo Murota Department of Mathematical Engineering and Information Physics (Faculty of Engineering) Department of Mathematical Informatics (Graduate School of Information Science and Tech. ) Global Focus on Knowledge Lecture (The World of Mathematics #8) 20070614 http://www.misojiro.t.utokyo.ac.jp/»murota

Upload: others

Post on 07-Mar-2021

10 views

Category:

Documents


5 download

TRANSCRIPT

Page 1: applied mathematics Algorithm - UTokyo OpenCourseWare · 2008. 6. 4. · Mathematics of Optimization ‐Viewpoint of applied mathematics Algorithm ... algorithm 2. algorithm 3. complexity

Mathematics of Optimization ‐Viewpoint of applied mathematics

Algorithm

Kazuo Murota

Department of Mathematical Engineering and Information Physics

(Faculty of Engineering)

Department of

Mathematical Informatics

(Graduate School of Information Science and Tech.

)

Global Focus on Knowledge Lecture (The World of Mathematics #8) 2007‐06‐14

http://www.misojiro.t.u‐tokyo.ac.jp/»murota

Page 2: applied mathematics Algorithm - UTokyo OpenCourseWare · 2008. 6. 4. · Mathematics of Optimization ‐Viewpoint of applied mathematics Algorithm ... algorithm 2. algorithm 3. complexity

1. Algorithm

2. Calculation of optimization

Page 3: applied mathematics Algorithm - UTokyo OpenCourseWare · 2008. 6. 4. · Mathematics of Optimization ‐Viewpoint of applied mathematics Algorithm ... algorithm 2. algorithm 3. complexity

共通の論理

The World of Optimization(Revision) 

continuity/dispersionlinear/convex/non‐linear

Beautiful and Useful

Modeling+ Logics+ Algorithm

phenomenon・fact

logic・math

data

modeling mathematical 

model

common logic

Page 4: applied mathematics Algorithm - UTokyo OpenCourseWare · 2008. 6. 4. · Mathematics of Optimization ‐Viewpoint of applied mathematics Algorithm ... algorithm 2. algorithm 3. complexity

1. Algorithm

Page 5: applied mathematics Algorithm - UTokyo OpenCourseWare · 2008. 6. 4. · Mathematics of Optimization ‐Viewpoint of applied mathematics Algorithm ... algorithm 2. algorithm 3. complexity

Algorithm

Finite and mechanical calculation method

Muhammad AL‐Khwarizmi

(c.780‐c.850; Arabia) 

program  cf. existence theorem There are infinitely many 

prime numbers.

(Proof by contradiction)

Page 6: applied mathematics Algorithm - UTokyo OpenCourseWare · 2008. 6. 4. · Mathematics of Optimization ‐Viewpoint of applied mathematics Algorithm ... algorithm 2. algorithm 3. complexity

There are infinitely many prime numbersThere are infinitely many prime numberstheoremtheorem

proof by contradiction.If number of primes is finite,  they are written 

and supposecan be divided by a prime

and cannot be divided by

proof by contradiction.If number of primes is finite,  they are written 

and supposecan be divided by a prime

and cannot be divided by

proofproof

Unconstructive Existence Proof (by Contradiction)There are infinitely many prime numbers. ( a slide by Dr. Katsura)

How primes are generated cannot be presumed from this proof.  

Page 7: applied mathematics Algorithm - UTokyo OpenCourseWare · 2008. 6. 4. · Mathematics of Optimization ‐Viewpoint of applied mathematics Algorithm ... algorithm 2. algorithm 3. complexity

Constructive Existence Proof (a Very Easy One)

This proves that the infinite number of even primes  can be made.

theorem: The number of even primes is infinite.

proof (by the inductive method):

is an even number.

If an integer is an even number, is an even number

Page 8: applied mathematics Algorithm - UTokyo OpenCourseWare · 2008. 6. 4. · Mathematics of Optimization ‐Viewpoint of applied mathematics Algorithm ... algorithm 2. algorithm 3. complexity

Euclidean algorithmHighest common factor

An Example of an Algorithm in Math

Page 9: applied mathematics Algorithm - UTokyo OpenCourseWare · 2008. 6. 4. · Mathematics of Optimization ‐Viewpoint of applied mathematics Algorithm ... algorithm 2. algorithm 3. complexity

When            are 2 integers and not 

and

( :integer)

When            are 2 integers and not 

and

( :integer)

lemmalemma

Euclidean AlgorithmEuclidean Algorithm

Ex.Ex.

The highest common factor of 54

and 20

is

22.

( a slide by Dr. Katsura)

Property, fact

( static )

calculation

(dynamic)

Page 10: applied mathematics Algorithm - UTokyo OpenCourseWare · 2008. 6. 4. · Mathematics of Optimization ‐Viewpoint of applied mathematics Algorithm ... algorithm 2. algorithm 3. complexity

An Example of an Algorithm in Math

highest common factor high‐speed

primality

test Sieve of Eratosthenes low‐speed

construction problem ( by a ruler and a compass)

finite basic operations possible/ impossible high/ low speed

・regular pentagon :

possible

regular heptagon :

impossible

・bisection of an angle :

possible

trisection of an angle :

impossible

Page 11: applied mathematics Algorithm - UTokyo OpenCourseWare · 2008. 6. 4. · Mathematics of Optimization ‐Viewpoint of applied mathematics Algorithm ... algorithm 2. algorithm 3. complexity

The Logic of Algorithms (1)

algorithm =  finite and mechanical calculation

What is a calculation? What can a computer do?

computability    ( 1930s )

equivalence of various calculation models:

Turing machine computability recursive 

functioncomputability

Proposition of Church‐Turing

Page 12: applied mathematics Algorithm - UTokyo OpenCourseWare · 2008. 6. 4. · Mathematics of Optimization ‐Viewpoint of applied mathematics Algorithm ... algorithm 2. algorithm 3. complexity

Halting problem 

(an example of non‐computability )

theorem:

There is no algorithm to calculate “Halt”. 

The program and its input value is given, and

one must judge whether it can be finished in a finite time.

( The program stops in a finite time. )

( The program never stops. )

Page 13: applied mathematics Algorithm - UTokyo OpenCourseWare · 2008. 6. 4. · Mathematics of Optimization ‐Viewpoint of applied mathematics Algorithm ... algorithm 2. algorithm 3. complexity

Proof  There is No Algorithm for Halt.( It stops in a finite time. )

( It never stops. )

undefined

There is an algorithm for Halt.  has an algorithm. 

When 

is input to   calculating program…

stops for f.contradi

ction 

Page 14: applied mathematics Algorithm - UTokyo OpenCourseWare · 2008. 6. 4. · Mathematics of Optimization ‐Viewpoint of applied mathematics Algorithm ... algorithm 2. algorithm 3. complexity

possible/ impossible

high/ low speed

( Computablity, Solvability)

Page 15: applied mathematics Algorithm - UTokyo OpenCourseWare · 2008. 6. 4. · Mathematics of Optimization ‐Viewpoint of applied mathematics Algorithm ... algorithm 2. algorithm 3. complexity

Calculation of Algorithm Dealing With Finiteness

sorting problem

input

output

algorithm 1

algorithm 2

algorithm 3

complexity of algorithmcomplexity of problem

test all sequences

repeat looking for minimum

separate, sort and integrate

Page 16: applied mathematics Algorithm - UTokyo OpenCourseWare · 2008. 6. 4. · Mathematics of Optimization ‐Viewpoint of applied mathematics Algorithm ... algorithm 2. algorithm 3. complexity

Increases of Computation Time 

computation timeinput 

size

polynomial time/ exponential time

Suppose the computer calculates  times per second.

sec

sec

sec

sec

sec

sec

sec sec

sec

sec

sec

sec

sec

sec

sec

sec

sec

sec

min

hrs

yr

yr

yr

yr

yr

yr

Page 17: applied mathematics Algorithm - UTokyo OpenCourseWare · 2008. 6. 4. · Mathematics of Optimization ‐Viewpoint of applied mathematics Algorithm ... algorithm 2. algorithm 3. complexity

The Logic of Algorithms (2)

computational complexity high/ low speedpolynomial time/ exponential time

s  NP perfectibility

framework of algorithm construction   (target and limit)

Page 18: applied mathematics Algorithm - UTokyo OpenCourseWare · 2008. 6. 4. · Mathematics of Optimization ‐Viewpoint of applied mathematics Algorithm ... algorithm 2. algorithm 3. complexity

Class P vs

Class NP

Komaba

Hongo

Problem: Is there a route shorter than 15km between Hongo

and Komaba?

Page 19: applied mathematics Algorithm - UTokyo OpenCourseWare · 2008. 6. 4. · Mathematics of Optimization ‐Viewpoint of applied mathematics Algorithm ... algorithm 2. algorithm 3. complexity

map

Page 20: applied mathematics Algorithm - UTokyo OpenCourseWare · 2008. 6. 4. · Mathematics of Optimization ‐Viewpoint of applied mathematics Algorithm ... algorithm 2. algorithm 3. complexity

Problem: Is There a Route Shorter than α?

between 2 points traveling salesman

Page 21: applied mathematics Algorithm - UTokyo OpenCourseWare · 2008. 6. 4. · Mathematics of Optimization ‐Viewpoint of applied mathematics Algorithm ... algorithm 2. algorithm 3. complexity

NP Perfectibility

traveling salesman problem

shortest path problem

linear programming problem

same‐shaped graph?perfect

math institute

program

(¥100 million)

Page 22: applied mathematics Algorithm - UTokyo OpenCourseWare · 2008. 6. 4. · Mathematics of Optimization ‐Viewpoint of applied mathematics Algorithm ... algorithm 2. algorithm 3. complexity

Development of Calculator

abacus

Tiger calculator

The topic is changing from here ….

Page 23: applied mathematics Algorithm - UTokyo OpenCourseWare · 2008. 6. 4. · Mathematics of Optimization ‐Viewpoint of applied mathematics Algorithm ... algorithm 2. algorithm 3. complexity

The Birth of the Computer

electronic calculator:

at the University of Tokyo:

(parametron

type)(Hidetoshi Takahashi, Eiichi Goto, Eiichi Wada)

Page 24: applied mathematics Algorithm - UTokyo OpenCourseWare · 2008. 6. 4. · Mathematics of Optimization ‐Viewpoint of applied mathematics Algorithm ... algorithm 2. algorithm 3. complexity

The Progress of Computer (Hardware)

Moore’s law 2‐fold / 1.5 yrs 

2‐fold / 1.5 yrs 100‐fold / 10 yrs a billion‐fold / 40 yrs

Size of a problem that can be solved in a second

calculating time# of calculation / sec.

40 yrs

n that satisfies

Page 25: applied mathematics Algorithm - UTokyo OpenCourseWare · 2008. 6. 4. · Mathematics of Optimization ‐Viewpoint of applied mathematics Algorithm ... algorithm 2. algorithm 3. complexity

When Calculating Power is c‐fold…

polynomial time

exponential time

lesson 

lesson 

Slow algorithms

do not receive 

the benefit of the hardware’s progress

Difficult problems

cannot be solved 

even if the hardware progresses.

Page 26: applied mathematics Algorithm - UTokyo OpenCourseWare · 2008. 6. 4. · Mathematics of Optimization ‐Viewpoint of applied mathematics Algorithm ... algorithm 2. algorithm 3. complexity

Traveling Salesman Problem (the Progress of Algorithms)

cities

cities

(25‐fold)

Page 27: applied mathematics Algorithm - UTokyo OpenCourseWare · 2008. 6. 4. · Mathematics of Optimization ‐Viewpoint of applied mathematics Algorithm ... algorithm 2. algorithm 3. complexity

Summary up to here

Progress in environments of optimization computation

the logic of calculation

(computability, computation amount)

hardware

algorithm

Page 28: applied mathematics Algorithm - UTokyo OpenCourseWare · 2008. 6. 4. · Mathematics of Optimization ‐Viewpoint of applied mathematics Algorithm ... algorithm 2. algorithm 3. complexity

2. Calculation of Optimization

Page 29: applied mathematics Algorithm - UTokyo OpenCourseWare · 2008. 6. 4. · Mathematics of Optimization ‐Viewpoint of applied mathematics Algorithm ... algorithm 2. algorithm 3. complexity

Calculation by Formula

Do what?

Calculation!

Page 30: applied mathematics Algorithm - UTokyo OpenCourseWare · 2008. 6. 4. · Mathematics of Optimization ‐Viewpoint of applied mathematics Algorithm ... algorithm 2. algorithm 3. complexity

Local Search

initial  approximation   value

minimizeat ‘s neighborhood

, then stop is the local best answer

)

Renew and go  back to

Page 31: applied mathematics Algorithm - UTokyo OpenCourseWare · 2008. 6. 4. · Mathematics of Optimization ‐Viewpoint of applied mathematics Algorithm ... algorithm 2. algorithm 3. complexity

Development of Optimization

(Metric Variable)

1947

linear planning

Dantzig1960

non‐linear planning, Newton method

Powell, Fletcher1970

convex analysis, dual theorem

Rockafellar

1979

ellipsoid method

Khachiyan1984

interior method

Karmarkar

1995

semidefinite

program Alizadeh, Nesterov, Nemirovski

logic:

linear/convex/non‐linearenvironment:

enhancement of  calculation power

Page 32: applied mathematics Algorithm - UTokyo OpenCourseWare · 2008. 6. 4. · Mathematics of Optimization ‐Viewpoint of applied mathematics Algorithm ... algorithm 2. algorithm 3. complexity

Newton Method (Basic Calculation Algorithm)

Taylor series (quadratic approximation):

minimization:

Page 33: applied mathematics Algorithm - UTokyo OpenCourseWare · 2008. 6. 4. · Mathematics of Optimization ‐Viewpoint of applied mathematics Algorithm ... algorithm 2. algorithm 3. complexity

Calculation by Newton Method 

expansion to polynomial 

function by Taylor series

Page 34: applied mathematics Algorithm - UTokyo OpenCourseWare · 2008. 6. 4. · Mathematics of Optimization ‐Viewpoint of applied mathematics Algorithm ... algorithm 2. algorithm 3. complexity

Local Search -in discrete optimization-

initial  approximation   value

minimizeat ‘s neighborhood

, then stop is the local best  answer

)

Renew and go  back to

…Definition of

neighborhood is the problem.

Page 35: applied mathematics Algorithm - UTokyo OpenCourseWare · 2008. 6. 4. · Mathematics of Optimization ‐Viewpoint of applied mathematics Algorithm ... algorithm 2. algorithm 3. complexity

“Neighborhood”

in Traveling Salesman Problem

Page 36: applied mathematics Algorithm - UTokyo OpenCourseWare · 2008. 6. 4. · Mathematics of Optimization ‐Viewpoint of applied mathematics Algorithm ... algorithm 2. algorithm 3. complexity

Traveling Salesman Problem 

demonstration by N. Tsuchimura (Department of Mathematical Engineering)

Page 37: applied mathematics Algorithm - UTokyo OpenCourseWare · 2008. 6. 4. · Mathematics of Optimization ‐Viewpoint of applied mathematics Algorithm ... algorithm 2. algorithm 3. complexity

At last, the Relationship Between the Theory of  Computational Complexity and Optimization …

【continuous】 【discrete】 (revision)

linear programming

convex analysis polynomiality, NP perfectibility

dual theorem submodular

function

ellipsoid method

semidefinite

program

discrete convex analysis

approximation algorithm

interior 

method

Computational complexity (algorithm)

Page 38: applied mathematics Algorithm - UTokyo OpenCourseWare · 2008. 6. 4. · Mathematics of Optimization ‐Viewpoint of applied mathematics Algorithm ... algorithm 2. algorithm 3. complexity

convex analysis submodular

dual theorem

linear programming Legendre transformation

Summary of “the Math of Optimization”

local optimization

local search

discretecontinuous

algorithmcomputational theory

computer

data  model

optimum  design