1. A computer-implemented method of allocating an advertising budget among a fixed set of keywords, each keyword having a bid, a bid intensity, and a utility associated therewith, the method comprising: raising the bid intensities associated with selected ones of the keywords such that the advertising budget is not exceeded, the selected keywords having the highest utilities among the fixed set of keywords; and when the bid intensities associated with the selected keywords reach maximum values, raising the bids associated with first ones of the selected keywords such that the advertising budget is not exceeded, the first selected keywords having the highest utilities among the selected keywords.