Dave Phillips:
IMO the best way to humanize MIDI parts is to hand-code their velocities, note by note where necessary, which means the coder must have a practical knowledge of performance factors. I also routinely add a tempo track that loops an asymmetric group of fluctuating tempo values, like a very narrow-range LFO applied to tempo. Again, if the width of the range is too great the looseness becomes sloppy, destroying the intended effect. Usually I keep a range of +/-4 clicks, e.g. 120-121-122-121-120-119. If these values are applied to tempo events at the level of 16th-note triplets they'll have a nice "upsetting" effect on the rigidity of the sequencer's tempo.
Increasing and decreasing tempo is especially convenient in Radium, where there is an editable tempo-graph available all the time made
for making music more "human". http://www.notam02.no/radium/ Also, adding a bit of accelerando or ritardando at the end of each bar, or right before a new theme starts sometime helps as well.