Creo que el problema es que la variable i en un inicio equivale a cero, entonces cuando hace el trace de i-1, o sea 0-1 (cero menos uno), este equivale a -1, por eso te lanza undefined...
En este momento no tengo el flash, por lo tanto no puedo probar, pero te sugiero que agregues un if para verificar cuando i equivale a cero, ya que antes de el no hay ningun valor, asi que no debería tomarlo en cuenta:
Código:
for (i=0; i<mi_array.length; i++) {
if (i != 0) {
trace(mi_array[i-1]);
}
}