1. A system for unsupervised indoor localization, comprising: at least one sensor; one or more computer-readable storage media; a list of landmarks of an indoor environment stored on the one or more computer-readable storage media; and an unsupervised indoor location application embodied in program instructions stored on the one or more computer-readable storage media that, when executed by a processing system, direct the processing system to: determine an estimated current location of a user; collect sensor data from the at least one sensor for a period of time; estimate a location of the user using the sensor data, the period of time, and the list of landmarks; and update a location of the user.