The cheapest thing to try is to find out if your laptop is overheating, if your laptop is over a year old or you have any pets, cat, dog, woolly mammoth, then i would have a look at cleaning out the dust/hair. Have a quick search on google for the safest way to do this.
Try to keep the laptop on a desk if possible, I know thats sort of defeating the point of owning a laptop but resting it on legs/bed can cause them to overheat.
Finally have a look at updating any drivers, the lastest can usually be found on the laptop manufacturers website.
Like the other guys have pointed out, it could be a hardware faliure somewhere and unless its still cover by a warrenty laptops can be expensive to get sorted.
Rich