Para ir a Machu Picchu es mejor hospedarse la noche anterior en aguascalientes, te levantas temprano y chapas tu movilidad hasta las ruinas. Yo las veces que he ido siempre ha sido desde Ollantaytambo hasta aguas calientes y luego el bus para subir a las ruinas. No recomiendo esa opción a menos que solo quieras dormir un par de horas.
El tren si bien tengo entendido PerúRail tienes dos opciones: Compras el tren local a 15 soles si no me equivoco y te ahorras más de 200 soles (ida y vuelta) pero si optas por el tren chevere y bonito (no recuerdo el nombre) ese te sale ida y vuelta como 300 soles y un poco más, así que de 15-20 soles yo elijo el tren local.... además no hay mucha diferencia, el tren mas caro solo tiene buenos asientos y te dan un snack o sea unos chifles y una tacita pero bien chiquita de café.... en el tren local los asientos son normalitos... no te dan nada de comer pero puedes comprar algo a buen precio en la misma estación de Ollantaytambo... incluso de madrugada, si el tren sale a las 3 am ya estas en Aguascalientes a las 5.30 aproximadamente.... otra cosa es cuando estás allá que tienes que tomar el bus para subir.
No tengo idea de los alojamientos en Aguascalientes, pero la idea es que sea full day, no tan temprano porque no se ve nada.... todo nublado, a menos que salga el sol.