1. A method for adaptively managing a location including a plurality of electrical and/or electronic devices communicatively connected with a data processing apparatus, the method including the steps of: (a) receiving, at the data processing apparatus, information indicating occurrences of events of at least one of said devices, wherein an event is a change in state of a respective one of said devices; (b) recording data relating to at least some of said detected events in a computer-readable database; (c) ordering said recorded data of detected events into at least one sequence of detected events; (d) comparing the sequence of detected events with a sequence of past events stored in said database; and (e) modifying the stored sequence of past events based on the comparison.