No sé si lo he entendido bien, lo que quieres hacer y lo que te piden xD Pero creo que inicias por defecto las posiciones de los escudos de 1 a 20 en un array enumerado de 1 a 19, y luego vas obteniendo en orden los elementos, de modo que el "1 x 2" sí te sale aleatorio pero siempre juegan los mismos equipos.
Si es así, lo que deberías hacer, tal y como lo tienes montado, es crearte una función que te traiga un numero aleatorio entre 0 y 19. Además, tener un array con los números que ya has escogido. Cada vez que vayas a escoger un número aleatorio, compruebas si existe en el array de números ya escogidos. Si existe, vuelves a sacar otro número. Si no existe, lo agregas al array de números escogidos. Esto, como podrás comprender, es facilito de hacer, pero ineficiente de narices. Es mucha mejor solución la que te da Anzel. Inicializa los escudos del 1 al 20 en un array, luego vas tomando numero aleatorios entre 0 y array.length, y cada número que tomes, es un escudo que te quedas y que tienes que quitar del array de escudos.