What is the difference between GAS ( Generalized Autoregressive Score) model and a GARCH? I am trying to analyze some data about Brent Oil volatility. So far I have managed to fit a GARCH(1,1) model and an EGARCH. However, someone has recommended to use a GAS model, Generalized Autoregressive Score model, GAS Model webpage. But the problem is that I don't see clear when I should use this model, why and what's the difference with a GARCH.
I'd really appreciate if you could give some insight about it!! 
 A: A GARCH model is a special case of a GAS volatility model when the measurement density is normal. When the measurement density is non-normal, the corresponding score that drives the model will be different. For example, using a t-distribution leads to 'trimming' of heavy-tailed observations, whereas using a GED distribution leads to 'Winsorization'. The normal score - aka the GARCH score- reacts linearly with respect to the residuals so does not have a similar robustness property.
A: The answer of rjt90 is correct but since I'm working on these models, I thought I expand on it.
Score-driven framework
In the class of score-driven models (or GAS models), the time-varying parameter $\alpha_t$ is updated over time using an autoregressive updating function based on the score of the conditional observation probability density function, see
Creal, D. D., S. J. Koopman, and A. Lucas (2013). Generalized autoregressive score models with applications. Journal of Applied Econometrics 28(5), 777--795
For a GAS(1,1) model, the updating function for $\alpha_t$ is given by
$$
\alpha_{t+1} = \omega + \beta \alpha_{t} + \kappa s_{t}, 
$$
where $\omega$ is a constant, $\beta$ and $\kappa$ are fixed coefficients and $s_t$ is the scaled score function which is the driving force behind the updating equation.
The definition of $s_t$ is
$$
\qquad s_t = S_t \cdot \nabla_t, \qquad \nabla_t = \frac{\partial \, \log \, p(y_t | \alpha_t)}{\partial \alpha_t}, \qquad t = 1,\ldots,T,
$$
where $\nabla_{t}$ is the score (first derivative wrt $\alpha_t$) of the density $p(y_t | \alpha_t)$ of the observed time series.
To introduce further flexibility in the model, the score $\nabla_{t}$ can be scaled by $S_t$.
A common choices for $S_t$ is the inverse of the Fisher information.
The link with GARCH models
Consider the time-varying variance model
$$
y_t = \mu + \varepsilon_t, \qquad \varepsilon_t \sim NID(0, \alpha_t),
$$
for $t = 1,\ldots,T$ and where NID means Normally Independently Distributed. After setting $\mu = 0$ for notational convenience, we have the predictive logdensity
$$
\ell_t = -\frac{1}{2} \, \text{log} \, 2\pi - \frac{1}{2} \, \text{log} \, \alpha_t - \frac{y_t^2}{2 \alpha_t}.
$$
Following the score-driven framework, we obtain
\begin{align}\nonumber
\nabla_t &= \frac{1}{2 \alpha_t^2} \, y_t^2 - \frac{1}{2 \alpha_t} ,\\
&= \frac{1}{2 \alpha_t^2} (y_t^2 - \alpha_t)\nonumber.
\end{align}
Furthermore, we have $S_t = 2 \alpha_t^2$ and $s_t = y_t^2 - \alpha_t$.
This means that the score updating becomes
$$
\alpha_{t+1} = \omega + \beta \alpha_t + \kappa (y_t^2 - \alpha_t),
$$
and hence score updating implies the GARCH(1,1) model
$$
\alpha_{t+1} = \omega + \phi \alpha_t + \kappa^* y_t^2,
$$
where $\phi = \beta - \kappa$ and $\kappa^* \equiv \kappa$.
If we set $\kappa = \beta$, we obtain the ARCH(1) model. The above is valid for higher lag orders as well which means that the score-driven framework encompasses the GARCH(p,q) model.
If we change the density $p(y_t | \alpha_t)$ we obtain a different model (with possibly very attractive properties) and hence the score-driven framework is very flexible.
An often better fitting distribution for volatility is the Student t and even 'exotic' distributions like the Exponential Generalized Beta II easily fit in the score-driven framework.
Time series software that uses the score-driven methodology is available for free from https://timeserieslab.com and I am one of the developers.
