1. A method for performing GPS navigation in a GPS receiver, comprising: Providing a plurality of models of GPS navigation, each model characterized by a model state vector which is updated periodically; Providing for each model a corresponding filter for deriving, for each period, a current value for the corresponding model state vector based on current measurements made on parameters affecting the corresponding state vector; and Applying an interacting multiple model (IMM) estimator to provide, for each period, a current value for a system state vector using the current values of the model state vectors for that period and their corresponding filters.