There's a sticky on
loose leash walking (Loose Leash Walking Using Positive Reinforcers).
What works better for me is to go into a none distracting environment like an empty car park. Then keep changing directions. Wak in circles and figures of eight, turn right, left, round, back again.
The dog soon figures out that in order to get anywhere, he has to stick right next to you, as he never knows which direction you are going in next.
Keep doing this, with more and more straight bits, and the moment he gets ahead of you, change direction.
Maybe this works for me, because my dog is so
bad at realising where I am walking. He took ages to figure out that what he is supposed to do is walk where I want him to walk, not just full steam ahead.
Oh - and going to obedience or other type of training classes and excellent idea too.