We present a method for estimating the instantaneous frequency of the multi-component signals. This method involves the calculation of a time-frequency energy density of the signal, then obtaining an instantaneous frequency estimation from this joint density. Time-frequency energy density is calculated as a least squares optimal combination of multi-window Gabor based evolutionary spectra. The optimal weights are obtained by minimizing an error criterion that is the difference between a reference time-frequency distribution and the combination of evolutionary spectra. Instantaneous frequency of the signal is estimated from the final evolutionary spectrum as time conditional average frequency at local time-frequency regions. Examples are given to illustrate the performance of our method.