As a result of processing of the polled data, the orchestrator 130 may determine whether an action is required to change the state of the world in an appropriate manner (decision 406). As a result of no action being required (decision 406, “NO” branch), the orchestrator 130 may conclude the current cycle and update any models through learning from the currently concluded cycle so that subsequent cycles may utilize any available historical information.
As a result of at least one action being required (decision 406, “YES” branch), the orchestrator 130 may determine the action and the one or more components that are to perform the action (step 408). The orchestrator 130 may transmit an instruction indicative of the action and the components to the corresponding agent 120 (step 410). Accordingly, for the selected action, the orchestrator 130 may transmit the instruction to the agent 120 which then actuates the change by instructing the smart device 110 to perform the action. In an exemplary implementation, the orchestrator 130 may be configured to generate a single instruction including the actions to be performed and the one or more components that are to perform the actions to actuate the change. The agents 120 may process the instruction and determine if and how to actuate the change (e.g., determine whether any of the directly connected smart devices 110 are to receive the instruction). In actuating the change, the smart device 110 may provide result data such as through running another simulation and providing updated polling data so that the actual change to the state of the world may be known.