[SOLVED] algorithm for shortest path across sequence of circles

hi all

imagine a sequence of circles of varying diameter. some circles are close together, others further apart. the problem involves finding the shortest path from the first circle to the last circle, touching (or going through) each of the in-between circles in order, a bit like this:

http://temp.jw.id.au/circleproblem.jpg

i know the position and radius of each circle, so i know it's solvable - my brain just can't seem to figure out a working algorithm!

any ideas anyone??