I have a solution. Force the long term unemployed who realistically can work to actually work for their benefits, cleaning up and imporving their local neighbourhood. Make them work 8 hours a day for their benefits.
Works on several levels. Keeps them busy (idle hands and all that), improve the local environment for everyone (as people gain pride in their surroundings they take more care of them (hopefully)) and who’s going to set fire to the kids play park if they are only going to have to fix it the next day.
Eventually after spending all day picking up dog crap and cleaning graffiti etc… some of the unemployed by choice might decide to get a proper job. This obviously fails if there are no proper jobs but I haven’t worked out the solution to this yet.