I suggest you use PWM.
That would be simple and energy efficient.
It could be done very easily with a microcontroller, (PIC, PICAXE, etc.)
Or it could be done easily in hardware.
You would need an oscillator to generate the PWM signal and a ramp signal to change the duty cycle.
I expect you could do it with two 555 ICs.