Hi Richard,
Yes it's possible, but it's a little fiddly. Basically what you want to do is get a random variable per hair and then use this to "turn on" grey hairs at a frequency you control.
The way to hook this up is to:
1) Create an aiUserData node that reads the curve_id variable from the hair. The type will depend on how your hair is generated - e.g. Uint for maya hair, Float for xgen.
2) Connect this to the signal parameter on an alJitterColor node. On the JitterColor node set input to white, min gain to 0 and max gain to 1. This will give you a random 0-1 value that is different per hair.
3) Finally connect the red channel of the alJitterColor to the mixer of an alSwitchFloat (if you're using melanin) or alSwitchColor (if you're using dye color). The random output of the JitterColor node will node randomly select between inputA and inputB. Plug your regular hair color into input B and your grey colour into input A. The threshold parameter now controls the frequency with which the grey hairs appear, e.g. 0.05 will give you 5% grey hairs.
Cheers,
Anders