Dynamic Programming

A maze, referenced later.

Dynamic Programming has many applications, some of which we'll investigate in this workbook. One of these is modelling the cortical surface of the brain.

The first question that might come to mind when hearing about the brain is why is it shaped the way it is, and why is it so folded?

The brain is shaped the way it is simply because it has to fit into your skull, and it is folded because in order to be as large as possible (have the greatest surface area) it must fold in on itself, similar to crumpling a piece of paper to get it to fit through a small hole that it wouldn't fit into if it were flat.

Dynamic programming is used to generate the gyri (the ridges of the folds), and the sulci (the valleys) that form boundaries of cortical regions; an example of this can be seen on page 8 of this tutorial. This allows us to focus on portions of the brain in order to, for example, compare similar regions in the brains of more than one individual.

Dynamic programming can also be used to generate:

  1. Individual gyral and sulcal curves that can be compared by Metric Pattern Theory.
  2. Cortical surfaces or manifolds i.e. cortical regions with boundaries delineated by gyral and sulcal curves that can be compared by Metric Pattern Theory.

Here we are going to demonstrate classical examples of dynamic programming used in industry!