I didn't play the game, but why don't you just load all the objects you'll need in the game and then hide the ones you won't be seeing until they're "created."
If you need to dynamically load up an undetermined number of models, load about 50 of them and use an array to keep track of them all. In the array, store the model on/off, positions, AI states, and other character-specific variables. When you load your aliens, hide the ones that aren't turned on initially by the array. When one is destroyed, hide it and alter the array. When one needs to be created, linearly search for open spots in the array to set the variables for an alien, then show him.