iTunes has the option to play higher rated songs more often, but the iPod does not have that option. To get around this I created 4 playlists --
5 star limited to 60 songs by Least Recently Played (out of 140)
4 Star 100 LRP (out of 430)
3 Star 30 LRP (out of 800)
20 Random, not played in the last 8 days
Then I create a playlist that is made up of these four playlists (using Playlist is - ). This gives me a list that has more of my favorite songs but also mixes in some songs I don't hear that often. Using Least recently played for each sublist makes sure I go through all my music and the 20 RND list helps mix things up a little.
Of course you can adjust the numbers for your own personal taste and use as many sub playlists as you want, I also have a playlist of my most recently added songs mixed in. Any songs that appear on more than one sub list will only apear once on the master list. If you want your sub playlists to go to to the bottom of the list you can use a special character (like Ω) at the front of the list.
The only downside to this is the iPod takes a couple seconds to start playing a smart playlist that is made up of other smart playlists. The more sub-playlists the longer the pause, on my iPod the it takes about 4-5 seconds for the list to start playing.