I am skeptical about this, it seems to me that the spacecraft would need a huge power source, not just solar panels recharging some batteries. It just doesn't sound practical, and the thrust on the asteroid would be minimal, it would work but what if they can't get to the asteroid while it's still a year away? And what if the asteroid is tumbling/rotating will it still work? There could be an asteroid two weeks out before it's discovered, then what? There would need to also be another system to deal with it. I wonder if it would be easier and better to just launch a low yield nuke to pull up next to the asteroid and detonate giving it a bigger push? I say low yield and next to and not a direct hit so as to give it a push hopefully without blowing it into pieces.
You only need to alter the course the smallest bit to miss the earth. It still works when tumbling. Power source is a problem of course, and the energy conversions from light to electrical to chemical to electrical to light again isn't necessary. A large fresnel lens placed near the asteroid would have the same effect.