1. A system, comprising: a processor; a memory comprising program instructions, wherein the program instructions are executable by the processor to: determine a hierarchical relationship among a plurality of rules, wherein each of the plurality of rules comprises a precondition and an action to be executed if the precondition is met; and evaluate and execute the plurality of rules according to the hierarchical relationship to generate an output; wherein, to evaluate and execute the plurality of rules according to the hierarchical relationship, the program instructions are further executable by the processor to: evaluate a precondition of one of the rules; if the precondition of the one of the rules is met, evaluate a precondition of one or more child rules of the one of the rules according to the hierarchical relationship; and if the precondition of the one of the rules is not met, skip evaluation of the precondition of the one or more child rules of the one of the rules according to the hierarchical relationship.