# Generalized Linear Model – Understanding GAM with Non-Normal Noise

I am starting to work with GAM models, and I am trying to figure out the consequences of having non-normal noise. Consider the following example (just note that Gumbel(-0.57, 1) is a centered continued distribution with a finite variance, but skewed):

n=1000;
X1=rexp(n); X2=runif(n, 0, 5); Y=-2 + sin(X1) + X2^3 + rgumbel(n, -0.57, 1);

fit=gam(Y~s(X1)+s(X2))


So, can I somehow take into account that the noise is non-normal? Do I have to?

Some motivation: I am actually trying to estimate the distribution of the noise variables here (as they have a specific interpretation in my problem). So I would like to see something like fit$residuals having approximately Gumbel distribution. Is it true though that as $$n\to\infty$$ we would not reject ks.test(fit$residuals, Gumbel)? Or in other words, are the estimations of $$\hat{f}_1,\hat{f}_2$$ consistent even if we don't have normal noise?

The mgcv package can fit generalized additive models from many families of distributions including the Gumbel distribution.

The authors provide the following example:

library(mgcv)
n <- 400
set.seed(9)

# Smooth function of predictors
f0 <- function(x) 2 * sin(pi * x)
f1 <- function(x) exp(2 * x)
f2 <- function(x) 0.2 * x^11 * (10 * (1 - x))^6 + 10 * (10 * x)^3 * (1 - x)^10

# Generate U[0,1] RVs to plug into smooth functions
x0 <- runif(n)
x1 <- runif(n)
x2 <- runif(n)
x3 <- runif(n)

# Generate response
mu <- f0(x0) + f1(x1)
beta <- exp(f2(x2)/5)
y <- mu - beta * log(-log(runif(n))) ## Gumbel quantile function

# Fit GAM with Gumbel error
b <- gam(list(y ~ s(x0) + s(x1),~ s(x2) + s(x3)), family=gumbls)
$$$$
`