Not exactly free, but comes with a 14 day free trial. Certainly enough time to take advantage of the program and save some lumber and a few brain twists.
Tell the program what lumber you have in the pile, and then tell it what you need to have cut from that lumber. It spits out a cut list with minimum waste, which you can then print. It also lets you choose from different iterations of the cut list; sometimes it produces a list with a better layout than others. Run it through a few times to see what works for you.
http://www.optimalprograms.com/RealCut2d.htm
Buying it would be $35, still probably worth it if a person had a lot of cutting to do on a regular basis.
--Derek