I have a hand sculpted human skull I use for this purpose. It makes me feel all cool and evil. But seriously, the act of formulating a thorough explanation of a problem often leads to its solution. Try it, if inanimate objects are not your thing, get a patient significant other or friend (or maybe another programmer if you are lucky) who will let you half explain a problem until you have that epiphany and run off to fix it.
I've found the most effective way to work through a problem is to have to explain it to my wife (who has no programming background). It works wonderfully.