Estoy haciendo un juego de disparos al estilo space invaders.
Tengo un enemigo que es un boss y lo que quiero hacer es que de repente baje hasta el fondo de la pantalla y luego vuelva a su posicion (arriba de la pantalla)

Bueno para que se mueva hacia abajo es cuestión de jugar con la coordenada y, una forma fácil puede ser usando la velocidad vertical (vspeed) y darle un valor positivo para que baje.

Puedes crear una variable de la posición de y inicial para que luego regrese allí, por ejemplo de nombre yinicial y su posición es 20.
Y ahora para que sólo de repente baje, se puede usando aleatoriedad, crea otra variable que actúa de interruptor para saber que pasa al estado de bajar.

evento create del jefe
[gml]
yinicial = 20;
bajar = false;
[/gml]
evento step del jefe
[gml]
if bajar == false and irandom(1000) <= 50 //menor el valor de 50, con menos frecuencia bajará y viceversa
{
    bajar = true; //ya empezó a bajar
    vspeed = 5;
}

if y >= 450 //cuando llega al fondo
{
    vspeed = -5; //regresa para arriba
}

if y <= yinicial and vspeed < 0 //cuando vuelve a la pos.y inicial
{
    vspeed = 0;
    bajar = false; //vuelve a activarse el ciclo para que vuelva a bajar de nuevo
}
[/gml]