computer science day: mathematical computer science · computer science day: mathematical computer...

24
Computer Science Day: Mathematical Computer Science Thomas Dueholm Hansen June 15, 2011 Thomas Dueholm Hansen Mathematical Computer Science Page 1/10

Upload: others

Post on 13-Oct-2020

64 views

Category:

Documents


5 download

TRANSCRIPT

Page 1: Computer Science Day: Mathematical Computer Science · Computer Science Day: Mathematical Computer Science Thomas Dueholm Hansen June 15, 2011 Thomas Dueholm Hansen Mathematical Computer

Computer Science Day:Mathematical Computer Science

Thomas Dueholm Hansen

June 15, 2011

Thomas Dueholm Hansen Mathematical Computer Science Page 1/10

Page 2: Computer Science Day: Mathematical Computer Science · Computer Science Day: Mathematical Computer Science Thomas Dueholm Hansen June 15, 2011 Thomas Dueholm Hansen Mathematical Computer

The Mathematical Computer Science group

Faculty:

Gudmund Skovbjerg FrandsenKristoffer Arnsfelt HansenPeter Bro Miltersen

Postdocs:

Elias TsigaridasElad Verbin (also at MADALGO)Joshua BrodyDominik SchederWei Yu (also at MADALGO)Jie Zhang

PhD students:

Søren Stiil FrederiksenThomas Dueholm HansenRasmus Ibsen-Jensen

Administration:

Dorthe Haagen Nielsen

Thomas Dueholm Hansen Mathematical Computer Science Page 2/10

Page 3: Computer Science Day: Mathematical Computer Science · Computer Science Day: Mathematical Computer Science Thomas Dueholm Hansen June 15, 2011 Thomas Dueholm Hansen Mathematical Computer

Research projects

交互计算CTIC

RAGA LOBO

Terminated within the last year:

COMA

Thomas Dueholm Hansen Mathematical Computer Science Page 3/10

Page 4: Computer Science Day: Mathematical Computer Science · Computer Science Day: Mathematical Computer Science Thomas Dueholm Hansen June 15, 2011 Thomas Dueholm Hansen Mathematical Computer

Research projects

交互计算CTIC

RAGA LOBO

Terminated within the last year:

COMA

Thomas Dueholm Hansen Mathematical Computer Science Page 3/10

Page 5: Computer Science Day: Mathematical Computer Science · Computer Science Day: Mathematical Computer Science Thomas Dueholm Hansen June 15, 2011 Thomas Dueholm Hansen Mathematical Computer

Activities

Computational Complexity Theory

Algorithmic and Computational Game Theory

Mathematical Programming

Combinatorial Optimization

Approximation Algorithms

Computational Algebra

Symbolic-Numerical Computations

Real Algebraic Geometry

Theoretical aspects of multiagent systems

Thomas Dueholm Hansen Mathematical Computer Science Page 4/10

Page 6: Computer Science Day: Mathematical Computer Science · Computer Science Day: Mathematical Computer Science Thomas Dueholm Hansen June 15, 2011 Thomas Dueholm Hansen Mathematical Computer

Linear programming: Dantzig’s simplex algorithm (1947)

maximize cTx

subject to Ax ≤ b

Thomas Dueholm Hansen Mathematical Computer Science Page 5/10

Page 7: Computer Science Day: Mathematical Computer Science · Computer Science Day: Mathematical Computer Science Thomas Dueholm Hansen June 15, 2011 Thomas Dueholm Hansen Mathematical Computer

Example: The diet problem

Buy food items in order to satisfy daily intake of energy (2000kcal), protein (55 g) and calcium (800 mg), minimizing the cost.

Food Serving size Energy Protein Calcium PriceOatmeal 28 g 110 4 2 3Chicken 100 g 205 32 12 24Eggs 2 large 160 13 54 13Whole milk 237 cc 160 8 285 9Cherry pie 170 g 420 4 22 20Pork with beans 260 g 260 14 80 19

Minimize 3x1+ 24x2+ 13x3+ 9x4+ 20x5+ 19x6

subject to 110x1+205x2+160x3+160x4+420x5+260x6 ≥ 20004x1+ 32x2+ 13x3+ 8x4+ 4x5+ 14x6 ≥ 552x1+ 12x2+ 54x3+285x4+ 22x5+ 80x6 ≥ 800

x1, x2, x3, x4, x5, x6 ≥ 0

Thomas Dueholm Hansen Mathematical Computer Science Page 6/10

Page 8: Computer Science Day: Mathematical Computer Science · Computer Science Day: Mathematical Computer Science Thomas Dueholm Hansen June 15, 2011 Thomas Dueholm Hansen Mathematical Computer

Example: The diet problem

Buy food items in order to satisfy daily intake of energy (2000kcal), protein (55 g) and calcium (800 mg), minimizing the cost.

Food Serving size Energy Protein Calcium PriceOatmeal 28 g 110 4 2 3Chicken 100 g 205 32 12 24Eggs 2 large 160 13 54 13Whole milk 237 cc 160 8 285 9Cherry pie 170 g 420 4 22 20Pork with beans 260 g 260 14 80 19

Minimize 3x1+ 24x2+ 13x3+ 9x4+ 20x5+ 19x6

subject to 110x1+205x2+160x3+160x4+420x5+260x6 ≥ 20004x1+ 32x2+ 13x3+ 8x4+ 4x5+ 14x6 ≥ 552x1+ 12x2+ 54x3+285x4+ 22x5+ 80x6 ≥ 800

x1, x2, x3, x4, x5, x6 ≥ 0

Thomas Dueholm Hansen Mathematical Computer Science Page 6/10

Page 9: Computer Science Day: Mathematical Computer Science · Computer Science Day: Mathematical Computer Science Thomas Dueholm Hansen June 15, 2011 Thomas Dueholm Hansen Mathematical Computer

Basic feasible solutions and pivoting

max 2x1 − 2x3 − 2x5 − x6

s.t. 13x1 + x2 − 2

3x3 − 23x5 = 1

x3 + x4 − x6 = 1x5 + x6 = 1

x1, x2, x3, x4, x5, x6 ≥ 0

~x = (0, 1, 0, 2, 0, 1)

The corners of the polytope correspond to basic feasiblesolutions: At most n, the number of equality constraints,variables are non-zero. A basis consists of n basic variablessuch that all non-basic variables are zero.

Moving along an edge corresponds to pivoting: Exchange avariable in the basis with a non-basic variable.

Thomas Dueholm Hansen Mathematical Computer Science Page 7/10

Page 10: Computer Science Day: Mathematical Computer Science · Computer Science Day: Mathematical Computer Science Thomas Dueholm Hansen June 15, 2011 Thomas Dueholm Hansen Mathematical Computer

Basic feasible solutions and pivoting

max −1 + 2x1 − 2x3 − x5

s.t. x2 = 1 − 13x1 + 2

3x3 + 23x5

x4 = 2 − x3 − x5

x6 = 1 − x5

x1, x2, x3, x4, x5, x6 ≥ 0

-1

~x = (0, 1, 0, 2, 0, 1)

The corners of the polytope correspond to basic feasiblesolutions: At most n, the number of equality constraints,variables are non-zero. A basis consists of n basic variablessuch that all non-basic variables are zero.

Moving along an edge corresponds to pivoting: Exchange avariable in the basis with a non-basic variable.

Thomas Dueholm Hansen Mathematical Computer Science Page 7/10

Page 11: Computer Science Day: Mathematical Computer Science · Computer Science Day: Mathematical Computer Science Thomas Dueholm Hansen June 15, 2011 Thomas Dueholm Hansen Mathematical Computer

Basic feasible solutions and pivoting

max −1 + 2x1 − 2x3 − x5

s.t. x2 = 1 − 13x1 + 2

3x3 + 23x5

x4 = 2 − x3 − x5

x6 = 1 − x5

x1, x2, x3, x4, x5, x6 ≥ 0

-1

~x = (0, 1, 0, 2, 0, 1)

x1

x3

x5

The corners of the polytope correspond to basic feasiblesolutions: At most n, the number of equality constraints,variables are non-zero. A basis consists of n basic variablessuch that all non-basic variables are zero.

Moving along an edge corresponds to pivoting: Exchange avariable in the basis with a non-basic variable.

Thomas Dueholm Hansen Mathematical Computer Science Page 7/10

Page 12: Computer Science Day: Mathematical Computer Science · Computer Science Day: Mathematical Computer Science Thomas Dueholm Hansen June 15, 2011 Thomas Dueholm Hansen Mathematical Computer

Basic feasible solutions and pivoting

max 5 − 6x2 + 2x3 + 3x5

s.t. x1 = 3 − 3x2 + 2x3 + 2x5

x4 = 2 − x3 − x5

x6 = 1 − x5

x1, x2, x3, x4, x5, x6 ≥ 0

-1

5

~x = (3, 0, 0, 2, 0, 1)

x2

x3

x5

The corners of the polytope correspond to basic feasiblesolutions: At most n, the number of equality constraints,variables are non-zero. A basis consists of n basic variablessuch that all non-basic variables are zero.

Moving along an edge corresponds to pivoting: Exchange avariable in the basis with a non-basic variable.

Thomas Dueholm Hansen Mathematical Computer Science Page 7/10

Page 13: Computer Science Day: Mathematical Computer Science · Computer Science Day: Mathematical Computer Science Thomas Dueholm Hansen June 15, 2011 Thomas Dueholm Hansen Mathematical Computer

Basic feasible solutions and pivoting

max 9 − 6x2 − 2x4 + x5

s.t. x1 = 7 − 3x2 − 2x4

x3 = 2 − x4 − x5

x6 = 1 − x5

x1, x2, x3, x4, x5, x6 ≥ 0

-1

5

9

~x = (7, 0, 2, 0, 0, 1)

x2

x4

x5

The corners of the polytope correspond to basic feasiblesolutions: At most n, the number of equality constraints,variables are non-zero. A basis consists of n basic variablessuch that all non-basic variables are zero.

Moving along an edge corresponds to pivoting: Exchange avariable in the basis with a non-basic variable.

Thomas Dueholm Hansen Mathematical Computer Science Page 7/10

Page 14: Computer Science Day: Mathematical Computer Science · Computer Science Day: Mathematical Computer Science Thomas Dueholm Hansen June 15, 2011 Thomas Dueholm Hansen Mathematical Computer

Basic feasible solutions and pivoting

max 10 − 6x2 − 2x4 − x6

s.t. x1 = 7 − 3x2 − 2x4

x3 = 1 − x4 + x6

x5 = 1 − x6

x1, x2, x3, x4, x5, x6 ≥ 0

-1

5

910

~x = (7, 0, 1, 0, 1, 0)

x2

x4

x6

The corners of the polytope correspond to basic feasiblesolutions: At most n, the number of equality constraints,variables are non-zero. A basis consists of n basic variablessuch that all non-basic variables are zero.

Moving along an edge corresponds to pivoting: Exchange avariable in the basis with a non-basic variable.

Thomas Dueholm Hansen Mathematical Computer Science Page 7/10

Page 15: Computer Science Day: Mathematical Computer Science · Computer Science Day: Mathematical Computer Science Thomas Dueholm Hansen June 15, 2011 Thomas Dueholm Hansen Mathematical Computer

Deterministic pivoting rules

Klee and Minty (1972):Dantzig’s originalLargestCoefficientpivoting rule may requireexponentially many steps.

Almost all known naturaldeterministic pivoting ruleshave since then been shownto be exponential.

What about randomizedpivoting rules?

No good lower boundswere known for fortyyears.

Thomas Dueholm Hansen Mathematical Computer Science Page 8/10

Page 16: Computer Science Day: Mathematical Computer Science · Computer Science Day: Mathematical Computer Science Thomas Dueholm Hansen June 15, 2011 Thomas Dueholm Hansen Mathematical Computer

Deterministic pivoting rules

Klee and Minty (1972):Dantzig’s originalLargestCoefficientpivoting rule may requireexponentially many steps.

Almost all known naturaldeterministic pivoting ruleshave since then been shownto be exponential.

What about randomizedpivoting rules?

No good lower boundswere known for fortyyears.

Thomas Dueholm Hansen Mathematical Computer Science Page 8/10

Page 17: Computer Science Day: Mathematical Computer Science · Computer Science Day: Mathematical Computer Science Thomas Dueholm Hansen June 15, 2011 Thomas Dueholm Hansen Mathematical Computer

Deterministic pivoting rules

Klee and Minty (1972):Dantzig’s originalLargestCoefficientpivoting rule may requireexponentially many steps.

Almost all known naturaldeterministic pivoting ruleshave since then been shownto be exponential.

What about randomizedpivoting rules?

No good lower boundswere known for fortyyears.

Thomas Dueholm Hansen Mathematical Computer Science Page 8/10

Page 18: Computer Science Day: Mathematical Computer Science · Computer Science Day: Mathematical Computer Science Thomas Dueholm Hansen June 15, 2011 Thomas Dueholm Hansen Mathematical Computer

Deterministic pivoting rules

Klee and Minty (1972):Dantzig’s originalLargestCoefficientpivoting rule may requireexponentially many steps.

Almost all known naturaldeterministic pivoting ruleshave since then been shownto be exponential.

What about randomizedpivoting rules?

No good lower boundswere known for fortyyears.

Thomas Dueholm Hansen Mathematical Computer Science Page 8/10

Page 19: Computer Science Day: Mathematical Computer Science · Computer Science Day: Mathematical Computer Science Thomas Dueholm Hansen June 15, 2011 Thomas Dueholm Hansen Mathematical Computer

Randomized pivoting rules

RandomEdge: Make a uniformly random improving pivot inevery step.

This pivoting rule was widely believed to always find theoptimal solution in a polynomial number of steps.

RandomFacet, Kalai (1992) and Matousek, Sharir andWelzl (1992): Pick a uniformly random facet that containsthe current corner, and recursively find an optimal solutionwithin that facet. If possible, make an improving pivot leavingthe facet and repeat.

Randomization helps: 2O(√n log m) expected steps (n variables,

m constraints).

Theorem (Friedmann, Hansen and Zwick (2011))

RandomEdge and RandomFacet may require an expectednumber of pivoting steps that is almost exponential in the numberof constraints and variables: 2Ω(n1/4) and 2Ω(

√n/ log n), respectively.

Thomas Dueholm Hansen Mathematical Computer Science Page 9/10

Page 20: Computer Science Day: Mathematical Computer Science · Computer Science Day: Mathematical Computer Science Thomas Dueholm Hansen June 15, 2011 Thomas Dueholm Hansen Mathematical Computer

Randomized pivoting rules

RandomEdge: Make a uniformly random improving pivot inevery step.

This pivoting rule was widely believed to always find theoptimal solution in a polynomial number of steps.

RandomFacet, Kalai (1992) and Matousek, Sharir andWelzl (1992): Pick a uniformly random facet that containsthe current corner, and recursively find an optimal solutionwithin that facet. If possible, make an improving pivot leavingthe facet and repeat.

Randomization helps: 2O(√n log m) expected steps (n variables,

m constraints).

Theorem (Friedmann, Hansen and Zwick (2011))

RandomEdge and RandomFacet may require an expectednumber of pivoting steps that is almost exponential in the numberof constraints and variables: 2Ω(n1/4) and 2Ω(

√n/ log n), respectively.

Thomas Dueholm Hansen Mathematical Computer Science Page 9/10

Page 21: Computer Science Day: Mathematical Computer Science · Computer Science Day: Mathematical Computer Science Thomas Dueholm Hansen June 15, 2011 Thomas Dueholm Hansen Mathematical Computer

Randomized pivoting rules

RandomEdge: Make a uniformly random improving pivot inevery step.

This pivoting rule was widely believed to always find theoptimal solution in a polynomial number of steps.

RandomFacet, Kalai (1992) and Matousek, Sharir andWelzl (1992): Pick a uniformly random facet that containsthe current corner, and recursively find an optimal solutionwithin that facet. If possible, make an improving pivot leavingthe facet and repeat.

Randomization helps: 2O(√n log m) expected steps (n variables,

m constraints).

Theorem (Friedmann, Hansen and Zwick (2011))

RandomEdge and RandomFacet may require an expectednumber of pivoting steps that is almost exponential in the numberof constraints and variables: 2Ω(n1/4) and 2Ω(

√n/ log n), respectively.

Thomas Dueholm Hansen Mathematical Computer Science Page 9/10

Page 22: Computer Science Day: Mathematical Computer Science · Computer Science Day: Mathematical Computer Science Thomas Dueholm Hansen June 15, 2011 Thomas Dueholm Hansen Mathematical Computer

Randomized pivoting rules

RandomEdge: Make a uniformly random improving pivot inevery step.

This pivoting rule was widely believed to always find theoptimal solution in a polynomial number of steps.

RandomFacet, Kalai (1992) and Matousek, Sharir andWelzl (1992): Pick a uniformly random facet that containsthe current corner, and recursively find an optimal solutionwithin that facet. If possible, make an improving pivot leavingthe facet and repeat.

Randomization helps: 2O(√n log m) expected steps (n variables,

m constraints).

Theorem (Friedmann, Hansen and Zwick (2011))

RandomEdge and RandomFacet may require an expectednumber of pivoting steps that is almost exponential in the numberof constraints and variables: 2Ω(n1/4) and 2Ω(

√n/ log n), respectively.

Thomas Dueholm Hansen Mathematical Computer Science Page 9/10

Page 23: Computer Science Day: Mathematical Computer Science · Computer Science Day: Mathematical Computer Science Thomas Dueholm Hansen June 15, 2011 Thomas Dueholm Hansen Mathematical Computer

Randomized pivoting rules

RandomEdge: Make a uniformly random improving pivot inevery step.

This pivoting rule was widely believed to always find theoptimal solution in a polynomial number of steps.

RandomFacet, Kalai (1992) and Matousek, Sharir andWelzl (1992): Pick a uniformly random facet that containsthe current corner, and recursively find an optimal solutionwithin that facet. If possible, make an improving pivot leavingthe facet and repeat.

Randomization helps: 2O(√n log m) expected steps (n variables,

m constraints).

Theorem (Friedmann, Hansen and Zwick (2011))

RandomEdge and RandomFacet may require an expectednumber of pivoting steps that is almost exponential in the numberof constraints and variables: 2Ω(n1/4) and 2Ω(

√n/ log n), respectively.

Thomas Dueholm Hansen Mathematical Computer Science Page 9/10

Page 24: Computer Science Day: Mathematical Computer Science · Computer Science Day: Mathematical Computer Science Thomas Dueholm Hansen June 15, 2011 Thomas Dueholm Hansen Mathematical Computer

The end

Thank you for listening!

Thomas Dueholm Hansen Mathematical Computer Science Page 10/10