# Patent

## Title
Process and system including explainable prescriptions through surrogate-assisted evolution

## Abstract

An explainable surrogate-assisted evolutionary optimization method, E-ESP, discovers rule-based decision strategies for which actions to take to achieve certain outcomes when historical training data is limited or unavailable. The resulting rules are human readable and thus facilitate explainability and trustworthiness unlike the black box solutions resulting from neural network solutions.

## Background
CROSS-REFERENCE TO RELATED APPLICATIONS
Cross-reference is made to U.S. patent application Ser. No. 16/831,550, entitled “PROCESS AND SYSTEM INCLUDING AN OPTIMIZATION ENGINE WITH EVOLUTIONARY SURROGATE-ASSISTED PRESCRIPTIONS” filed on Mar. 26, 2020 which claims the benefit of priority to U.S. Provisional Patent Application No. 62/824,909, entitled “OPTIMIZATION ENGINE WITH EVOLUTIONARY SURROGATE-ASSISTED PRESCRIPTIONS” which was filed on Mar. 27, 2019, both of which are incorporated herein by reference in their entireties.
Cross-reference is also made to co-owned U.S. patent application Ser. No. 15/481,992, filed Apr. 7, 2017, entitled “DISTRIBUTED RULE-BASED PROBABILISTIC TIME-SERIES CLASSIFIER,” which claims priority to U.S. Provisional Application 62/320,412, filed Apr. 8, 2016, entitled “DISTRIBUTED RULE-BASED PROBABILISTIC TIME-SERIES CLASSIFIER,” which are incorporated by reference herein.
Additionally, one skilled in the art appreciates the scope of the existing art which is assumed to be part of the present disclosure for purposes of supporting various concepts underlying the embodiments described herein. By way of particular example only, prior publications, including academic papers, patents and published patent applications listing one or more of the inventors herein are considered to be within the skill of the art and constitute supporting documentation for the embodiments discussed herein.
FIELD OF THE TECHNOLOGY
The technology disclosed relates generally to using evolutionary computation to optimize explainable decision-making strategies. More particularly, surrogate predictor model is trained, e.g., with historical data, and a prescriptor, decision maker rule set, is evolved against the surrogate predictor model.
BACKGROUND
Many organizations in business, government, education, and healthcare now collect significant data about their operations. Such data is transforming decision making in organizations: It is now possible to use machine learning techniques to build predictive models of behaviors of customers, consumers, students, and competitors, and, in principle, make better decisions, i.e. those that lead to more desirable outcomes. However, while prediction is necessary, it is only part of the process. Predictive models do not specify what the optimal decisions actually are. To find a good decision strategy, different approaches are needed. The main challenge is that optimal strategies are not known, so standard gradient-based machine learning approaches cannot be used. The domains are only partially observable, and decision variables and outcomes often interact nonlinearly: For instance, allocating marketing resources to multiple channels may have a nonlinear cumulative effect, or nutrition and exercise may interact to leverage or undermine the effect of medication in treating an illness.
In U.S. patent application Ser. No. 16/831,550, a methodology, referred to herein as Evolutionary Surrogate-assisted Prescriptions (hereafter “ESP”) is described for improving and augmenting decision-making. ESP systems are typically used to help decision-makers by providing specific action recommendations for any given context to achieve desired outcomes. As described in U.S. patent application Ser. No. 16/831,550, Neural Network models may be used to map context to actions, i.e. as the Prescriptor, in ESP. This representation, while quite effective, is considered to be a ‘black-box’ approach. This means that it is very difficult to find out why a certain set of actions were suggested by the model. This inability to understand why certain actions were suggested reduces the trustworthiness of the system. For life and death domains, e.g., medical diagnoses, procedures and prescriptions, police, and military strategies, by way of example, it is important for these systems to be trustworthy and explainable. Moreover, when there are requirements for auditing/bias evaluation, for neural network prescriptors, there is not much that can be done by looking into the weights of those networks.
Additionally, in certain jurisdictions, such as the European Union, individuals have a right to explanation for algorithmic decisions which significantly affect users. That is, users can ask for an explanation of an algorithmic decision that was made about them. See, Goodman et al., European Union (EU) regulations on algorithmic decision-making and a “right to explanation,” arXiv:1606.08813v3, August 2016, addressing Article 22 of the EU general data protection regulation (GDRP).
Accordingly, there remains a need in the art for an approach that can improve and augment decision-making, e.g., ESP, that is also capable of being explained, thus improving trustworthiness.
SUMMARY OF EMBODIMENTS
In a first exemplary embodiment, a computer-implemented process for developing an optimized prescriptor model for determining optimal decision policy outcomes for a predetermined domain includes: training a predictor surrogate model; feeding the predictor surrogate model to an evolutionary algorithm framework for evolving a rule-based prescriptor model over multiple generations, wherein candidate rule-based prescriptor models are evaluated using the predictor surrogate model; and further wherein subsequent generations are evolved based on results from prior generations until an optimized rule-based prescriptor model is determined.
In a second exemplary embodiment, a computer-implemented process for finding a decision policy that optimizes a set of outcomes to solve a known policy problem includes: training a predictor model based on known training data including context information (C), actions (A) performed in an included context, and outcome (O); evolving a rule-based prescriptor model with the trained predictor model as a surrogate over a predetermined number of generations; applying a determined elite evolved rule-based prescriptor model at a predetermined interval to a known policy problem to generate new decision policy data in the format (C, A, O); collecting the new decision policy data (C, A, O) and adding the new decision policy data (C, A, O) to the known training data; repeating i. through iv. until a predetermined convergence metric is met.
In a third exemplary embodiment, a computer-readable medium storing instructions that, when executed by a computer, perform a process for developing an optimized prescriptor model for determining optimal decision policy outcomes for a predetermined domain including: training a predictor surrogate model; feeding the predictor surrogate model to an evolutionary algorithm framework for evolving a rule-based prescriptor model over multiple generations, wherein candidate rule-based prescriptor models are evaluated using the predictor surrogate model; and further wherein subsequent generations are evolved based on results from prior generations until an optimized rule-based prescriptor model is determined.



BRIEF SUMMARY OF FIGURES
The embodiments will be described below and reference will be made to the drawings, in which:
FIG. 1 is a generalized Evolutionary Surrogate-Assisted Prescription (“ESP”) model in accordance with an embodiment herein;
FIGS. 2(a)-2(d) are process flows and system schematics of the ESP algorithm and exemplary system components in accordance with an embodiment herein;
FIG. 3 is a flow chart of the process for prescriptor rule set generation.



DETAILED DESCRIPTION
To empower decision makers with the right information at the right time warrants design and execution of the right set of interventions based on the data and inputs from various sources. In an era of Artificial Intelligence (AI) and now, Evolutionary AI, it is imperative that businesses utilize these enablers to achieve the stated objective in a short span of time. The present embodiments use evolutionary AI. Evolutionary AI is a general name for a group of problem-solving techniques inspired by the theory of biological evolution, such as genetic inheritance, natural selection, recombination, mutation, and survival of the fittest. Techniques in this field are used on problems that have too many variables for traditional algorithms to consider and where the approach to solving a particular problem is not well understood or requires creativity. One skilled in the art is aware of the numerous descriptions in the literature addressing evolutionary AI in its many forms and variations.
There is now significant historical data available on decision making in organizations, consisting of the decision problem, what decisions were made, and how desirable the outcomes were. Using this historical data, it is possible to learn a surrogate model, and with that model, evolve a decision strategy that optimizes the outcomes. The present embodiments implement an explainable ESP (hereafter E-ESP) approach which replaces the neural network prescriptor described in U.S. patent application Ser. No. 16/831,550, to which the present application claims priority, with evolved rules sets.
Through the use of an E-ESP service within an optimization engine, outcomes may be impacted by enhancing decision processes. The Learning Evolutionary Algorithm Framework (LEAF) AI-enables manual decision processes using a prescriptive AI system to create and iteratively enhance recommendations, improving processes and achieving goals in a principled, explainable AI-based manner.
At the base of how E-ESP works are the concepts of Context (C), Actions (A), and Outcomes (O) exemplified in the generalized ESP model shown in FIG. 1. The process starts with the building of a predictor surrogate model. The predictor can be a simulator, trained model, or labeled data, which measures accuracy and other desired outcomes as would be known to those skilled in the art. The predictor is then used as a surrogate in order to evolve an explainable prescriptor, i.e. a rule set, that implements a decision policy that results in the best possible outcomes. The majority of evaluations are done on the surrogate, making the process highly sample-efficient and robust, and leading to explainable decision policies that are regularized and therefore generalize well.
The goal of the E-ESP approach is to find a decision policy that optimizes a set of outcomes (FIG. 1). Given a set of possible contexts (or states) C and possible actions A, a decision policy D returns a set of actions A to be performed in each context C:

D(C)=A,  (1)

where C∈ C and A∈. For each such (C, A) pair there is a set of outcomes O(C, A), i.e. the consequences of carrying out decision A in context C. For instance, the context might be a description of a patient, actions might be medications, and outcomes might be health, side effects, and costs. In the following, higher values of O are assumed to be better for simplicity.

In E-ESP, two models are employed: a Predictor Pd, and a Prescriptor Ps. As shown in FIG. 2(a), the Predictor takes, as its input, context information (C) (also referred to as domain information), as well as actions (A) performed in that context, along with historical C, A, O data sets. The output of the Predictor is the resulting outcomes when the given actions are applied in the given context. The Predictor is therefore defined as

Pd(C,A)=O′,  (2)

such that Σj L(Oj, Oj′) across all dimensions j of O is minimized. The function L is an accuracy measure or loss function. For example, with respect to predictors that are trained models such as supervised neural networks or random forests, L can be any of the usual loss functions used in machine learning, such as cross-entropy or mean-squared-error.

As shown in FIG. 2(b), the Prescriptor takes a given context (C) as input, and outputs a set of actions (A):

Ps(C)=A,  (3)

such that Σi,j Oj′(Ci, Ai) over all possible contexts i is maximized. It thus approximates the optimal decision policy for the problem. Note that the optimal actions A are not known, and must therefore be found through search. The ESP algorithm then operates as an outer loop in a continuous learning and optimization process that constructs the predictor and prescriptor models as follows (FIG. 2c):

    
    
        (1) Train a Predictor based on historical training data; (S1)
        (2) Evolve Prescriptors with the Predictor as the surrogate; (S2)
        (3) Apply the best Prescriptor in the real world; (S3)
        (4) Collect the new data and add to the training set; (S4)
        (5) Repeat until convergence. (S5)

As usual in evolutionary search, the process terminates when a satisfactory level of outcomes has been reached, or no more progress can be made. Note that in S1, if no historical decision data exists initially, a random Predictor can be used. Also note that not all data needs to be accumulated for training each iteration. In domains where the underlying relationships between variables might change over time, it might be advisable to selectively ignore samples from the older data as more data is added to the training set in S4. It is thus possible to bias the training set towards more recent experiences.

    
    


One skilled in the art will appreciate the myriad of system components, including one or more processing units and databases, and configurations which may be employed to implement the processes and subprocesses described herein. FIG. 2d is a schematic of an exemplary system. The overall exemplary system includes a surrogate predictor model generation subsystem 10 which includes at base, a database 20 for storing (C, A, O) training datasets, and at least one module for implementing the selected machine learning algorithm 25, which outputs a trained surrogate predictor model 30. The trained surrogate predictor model is used to evaluate fitness of evolved prescriptor model candidates, i.e., rules sets, as part of the evolution process implemented by the prescriptor evolution subsystem 40. The prescriptor evolution subsystem 40 includes a prescriptor rule set candidate generator 45 and a prescriptor candidate rule set population database 50 which can be continually updated in accordance with evolving rule set candidates. The prescriptor rule set candidates are evaluated for fitness (e.g., accuracy or other desired outcome metrics) against the surrogate predictor model 30 by testing module 60 and ranked or otherwise filtered and compared to one another in accordance with the requirements of a competition module 65. Elite or best candidate prescriptor rule sets 70 are selected for application to real world scenarios by the real world application subsystem 80. A procreation module 55 is used to re-seed and update the prescriptor candidate population database 50 in accordance with known procreation processes. Finally, the outcomes from application of the elite prescriptor rule set 70 actions to real work scenarios can be stored in outcome database 85 and shared with database 20 to update the (C, A, O) training data for the predictor training.
The processes and steps described herein can be implemented using processors programmed using computer programs stored in memory accessible to the computer systems and executable by the processors. As is appreciated by those skilled in the art, additional modules, submodules and processors, servers and databases may be incorporated to perform different or additional tasks, including data processing/filtering/translation as required for different domains and data sources. Steps and functions as described may be implemented in separate hardware or software modules or combined and implemented on a single module. Further, as needed, certain steps can also be implemented on different processor cores or computers, or spread among a number of different processors or computers. Further, aspects of the overall system or subsystems may be performed by different entities. For example, the surrogate predictor model generation subsystem 10 and the prescriptor evolution subsystem 40 may be operated by a service provider and provided as a SaaS product, while the real world application subsystem 80 may be operated exclusively by a customer, thus protecting confidential business and other data. The following co-owned patent applications are incorporated herein by reference herein: U.S. patent application Ser. No. 16/424,686 entitled Systems And Methods For Providing Secure Evolution As A Service and U.S. patent application Ser. No. 16/502,439 entitled Systems And Methods For Providing Data-Driven Evolution Of Arbitrary Data Structures.
For the E-ESP embodiments described herein, building (or identifying) the predictor model, e.g., simulator, trained model, labeled data, is straightforward given a (C, A, O) dataset. The choice of algorithm depends on the domain, i.e., how much data there is, whether it is continuous or discrete, structured, or unstructured.
In contrast, the prescriptor model, i.e., rule set, in the E-ESP embodiments are developed using evolutionary techniques in accordance with the following high level steps per FIG. 3:

    
    
        1. Generate a population of randomly seeded candidate rule-sets (called building-block rules) (S10)
        2. Evaluate the population of candidate individuals against the predictor (S15) and determine if best candidate rule set identified (S20), if best candidate, save (S25)
        3. If best candidate not identified, rank order members of the population, i.e., remove lower performing rule-sets, and use the remainder as parents to use as reference for generating new individuals through reproduction and forming a new population (S30)
        4. Go to step 2 above until we get acceptably performing rule-sets, e.g., elite, or best rules set (S35).

One skilled in the art recognizes that variations of well-known evolution functions such as crossover and mutation that are tailored to the rule-set representation may be used as part of the reproduction step. Further, in order to control bloat, reproduction disallows redundancies, falsehoods, and tautologies, in newly created rule-sets. Co-owned U.S. patent application Ser. No. 15/481,992, which is incorporated herein by reference, provides detailed descriptions of the process of evolving rule sets, i.e., using genetic algorithms to extract useful rules and/or relationships from a data set.

    
    


The manner by which a rule-set is parsed is important. For problems where a single action is desired as the output of a model, rule-sets can be parsed in order, and the action of the first rule that fires can be considered the output action of the rule-set. In cases where more than one action is desired, all rules are parsed, and each rule that fires is considered as a vote for that rule's action.
In a preferred embodiment, the prescriptor is a set of rules in which a rule is a set of conjoined inequalities called conditions followed by an action in the following general shape:

coefficient1*inputi[lag1]p1{<|≤|>|≥}{coefficient2*inputj[lag2]p2|value}

where coefficients are numbers between zero and one, inputi and inputj are the domain features, p1 and p2 are some integer powers (between 1 and 3 in the current implementation, since in many of the physical domains higher powers of the variables is rare), and lags are referring to values of the system (also called domain) variables in previous time steps.

Each rule has an action which will be prescribed whenever all the rule's conditions become satisfied or evaluate to true. To keep track of how many times a rule sequence evaluates to true, a variable called times applied is incremented.
A rule-set also has a default action which will trigger whenever none of its rules evaluate to true. A rules agent can generally take the follow format:














<times_applied_1>
(condition_1_1) (condition_1_2) (condition_1_n) 
--> action_1 


<times_applied_2>
(condition_2_1) ... (condition_2_m) 
--> action_2 


...
...
...


<times_applied_k>
(condition_k_1) (condition_k_q) 
--> action_k 


<times_applied_d>
Default Action 
--> action_d









In the following specific examples, the E-ESP process, with the rule set prescriptor is applied to two known problems: Cartpole, also referred to as Inverted Pendulum, and Flappy Bird.
In the Cartpole problem, a pendulum with a center of gravity above its pivot point is unstable, but can be controlled by moving the pivot point under the center of mass. The goal is to keep the cartpole balanced by applying appropriate forces to a pivot point. The E-ESP process provided a very concise and insightful set of rules to push the cart to the left and right by looking at its position and momentum at every moment in accordance with the following Cartpole Rules agent:














<22978>
(0.11*Position∧3 <
--> Push-Left 



0.87*Momentum) 



<23022>
Default Action
--> Push-Right









The numbers in < > are the aforementioned times applied counter. In accordance with the previously defined general shape, the coefficients here are 0.11 and 0.87 and there is no lag which means the E-ESP solution did not need to know about the past states of the system. The E-ESP process discovered the relationship between position cubed and the momentum, which is a compact representation of the physical situation. In the present example, it took less than 10 iterations to reach a good rule-set, which is an order of magnitude faster than the neural network generated solution described in, for example, U.S. patent application Ser. No. 16/831,550.
In the Flappy-Bird problem, a side-scrolling game enables a player to control the vertical position of a bird by two actions of flap/no-flap, attempting to fly between columns of green pipes without hitting them. The E-ESP solution for this problem is not as concise, but it is still explainable compared to the black box of neural networks. The E-ESP discovered Flappy-Bird Rules agent is as follows:














<69038>
(0.99*next_pipe_dist_to_player < 0.93*next_next_pipe_bottom_y) 
--> No-Flap 



(0.99*next_pipe_dist_to_player < 0.83*next_next_pipe_bottom_y) 




(0.98*player_y < = 0.78*next_pipe_bottom_y) 




(0.95*player_y < = 0.65*next_pipe_bottom_y) 




(0.76*player_vel > −0.9799999999999995 {−8.0..10.0}) 




(0.47*next_next_pipe_bottom_y > 0.82*player_vel) 




(0.41*player_y < = 0.78*next_pipe_bottom_y) 




(0.26*next_pipe_top_y < 0.76*player_y) 




(0.17*next_pipe_top _y < = 84.48 {0..192.0}) 



<1848>
(0.92*next_pipe_last_to_player < 0.95*next_pipe top_y) 
--> Flap



(0.78*next_pipe_bottom_y > = 175.2 {0..292.0})




(0.71*next_next_pipe_bottom_y > 0.71*next_pipe_dist_to_player) 




(0.53*next_pipe_top_y < 0.63*next_pipe_dist_to_player) 




(0.49*next_next_pipe_top_y > = 0.12*next_pipe_dist_to_player) 



<3041>
(0.95*player_y < = 0.65*next_pipe_bottom_y) 
--> No-Flap 



(0.76*plaver_vel > −0.9799999999999995 {−8.0..10.0}) 




(0.47*next_next_pipe bottom_y > 0.82*player_vet) 




(0.41*player_y < = 0.78*next_pipe_bottom_y) 




(0.19*next _pipe_dist_to_player < 0.64*next_pipe_bottom_y) 




(0.17*next_pipe_top_y < = 84.48 {0..192.0}) 



<52565>
Default Action 
--> Flap









An additional implementation feature of note is that where the right side of a condition is a number, we have the range of the feature reported on the rule and in fact, those values are calculated and normalized on the fly without the need for a pre-definition. For example, looking at (0.76*player_vel>−0.9799999999999995 {−8.0 . . . 10.0}), we understand the range of player velocity is from −8 to 10 and it helps us understand which part of that range the condition is targeting.
As exemplified in the examples above, E-ESP, representation of the prescriptors as evolved rule sets in which a rule is a series of conjoined logical inequalities using domain inputs to prescribe different actions opens the door to explain the prescriptor's behavior. This is contrasted with neural network prescriptors, which are essential black boxes. And even though in some domains those rules could turn out to be concise and easy to grasp (e.g., Cartpole), even when they turn out as a long chain of inequalities (e.g., FlappyBird), the rules contain explicit and useful information that can make the models explainable.
In fact, in critical context like medical, military and police domains for example, it is crucial to be able to understand the decision model so that domain experts can make sense of the prescribed actions by the system. When actions are suggested by the rule-set model, by reviewing the human-readable rules, the user is able to understand, among other things: dependency of an action to specific inputs; the dominant domain input in decision making; whether a specific action has a bias to certain domain input; sensitivity of a decision to previous states of the system (time/history sensitivity); and existence of non-linearities in the relationship between the system variables.
The approach described herein can be extended to predict a probability distribution of a domain variable such as probability estimation, e.g., overall probability of an event occurring, such as in medical diagnosis or test evaluation or a patient risk assessment based on readings from bio sensors, etc. Evolution of probability estimation rules sets is disclosed in co-owned U.S. patent application Ser. No. 15/481,992 ('992 application), which is incorporated herein by reference in its entirety. One important representation/implementation difference between the solution in the '992 application and application of the present framework to the problem presented in the '992 Application is that in the '992 application, the atomic conditions can only compare a domain feature to some constant value (Like “Input-i(lag)<ConstantValue-j”), but the solution described in the present embodiments is more expressive. Accordingly, the represented solution is more powerful and can compare different features with each other, as well as find exponent relations between them.
Evolution, which herein refers to evolutionary artificial intelligence technology or evolutionary computation, is a population-based approach. That is, rather than modifying a single solution until it is in an acceptable state (e.g., back-propagating deep networks), the evolutionary computation process in its most general form: generates a population of candidate solutions (initially randomly or using a priori data where available); calculates the fitness of each candidate, removes less fit candidates from the population (e.g., candidate pool) and regenerates new candidate solutions by either randomly tweaking the fitter ones or treating fitter ones as parents and borrowing traits from them and generating new candidates. Thus, evolutionary computation generates a population of models that map a given context (C) to proposed actions (A), and rates the models based on how well they do on the outcomes (O) predicted by the predictor (Pd). Additional features, variations and applications of/to evolutionary computation are described in numerous publications known to those skilled in the art, including at least the following commonly assigned patents and patent applications which are incorporated herein by reference in their entireties: U.S. Pat. No. 8,909,570 entitled Data mining technique with experience-layered gene pool; U.S. Pat. No. 8,918,349 entitled Distributed network for performing complex algorithms; U.S. Pat. No. 8,977,581 entitled Data mining technique with diversity promotion; U.S. Pat. No. 9,002,759 entitled Data mining technique with maintenance of fitness history; U.S. Pat. No. 10,268,953 entitled Data mining technique with maintenance of ancestry counts; U.S. Pat. No. 10,430,709 entitled Data mining technique with distributed novelty search. The above-identified list is not exhaustive.
E-ESP is a surrogate-assisted evolutionary optimization method designed specifically for discovering explainable decision strategies in real-world applications. Based on historical data, a surrogate is learned and used to evaluate candidate policies (rule sets) with minimal exploration cost. Extended into sequential decision making, E-ESP is highly sample efficient, has low variance, and low regret, making the policies reliable and safe. As an unexpected result, the surrogate also regularizes decision making, making it sometimes possible to discover good policies even when direct evolution fails. E-ESP is therefore a promising approach to improving decision making in many real world applications where historical data is available.
In addition to the medical, military and police problems reference herein, the following real-world problems may also be addressed using E-ESP: weather, famine, disease prediction; price and incentive optimization; underwriting; web-site optimization; market-mix optimization; subrogation; fleet management; fraud prevention; human resource management, e.g., hiring, on-boarding, performance, training/development, transitions, wherein outcome objectives such as quality, cost, productivity, time-to-hire, time to performance, post on-boarding overhead, performance and retention are weighed; collections, agricultural growth recipe optimization, e.g., computer-controlled hydroponic growth (objectives: light, temperature, water, nutrients), build surrogate model of how plants grow given a recipe, evolve recipe where each new test is used to improve the model, discover size/taste tradeoff, 24-hour light period; optimizing CRISPR guide RNA; refinery optimization; defect detection and the like.
This application cross-references the following patent applications and publications which are incorporated herein by reference in their entireties and are intended to be part of the present disclosure: U.S. Provisional patent application Ser. No. 16/879,934 entitled Quantifying the Predictive Uncertainty of Neural Networks Via Residual Estimation With I/O Kernel; Qiu, X. et al., Quantifying Point-Prediction Uncertainty in Neural Networks via Residual Estimation with an I/O Kernel, In Proceedings of the Eighth International Conference on Learning Representations (ICLR) (2020); Hodjat, B. et al., PRETSL: Distributed Probabilistic Rule Evolution for Time-Series Classification, In Genetic Programming Theory and Practice XIV. Springer, 139-148 (2018); Meyerson, E. et al., Discovering evolutionary stepping stones through behavior domination, In Proceedings of the Genetic and Evolutionary Computation Conference (GECCO 2017); Miikkulainen, R. et al., Sentient ascend: Ai-based massively multivariate conversion rate optimization. In Proceedings of the Thirtieth Innovative Applications of Artificial Intelligence Conference. AAAI (2018); Miikkulainen et al., Ascend by Evolv: AI-Based Massively Multivariate Conversion Rate Optimization, AI Magazine (2019); Johnson et al., “Flavor-Cyber-Agriculture: Optimization of plant metabolites in an open-source control environment through surrogate modeling,” PLOS ONE (2019), https://doi.org/10.1371/journal.pone.0213918; Stanley, K. et al, “Designing neural networks through neuroevolution” Nature Machine Intelligence, Vol. 1, p. 24-35 (January 2019).

## Claims

1. A process for developing an optimized prescriptor model for determining optimal decision policy outcomes for a predetermined domain comprising:
training a predictor surrogate model; and

feeding the predictor surrogate model to an evolutionary algorithm framework for evolving a rule-based prescriptor model over multiple generations,
wherein the rule-based prescriptor model has a general shape: coefficient1*inputi[lag1]p1{<|≤|>|≥}{coefficient2*inputj[lag2]p2|value}, where coefficients are numbers between zero and one, inputi and inputj are domain features, p1 and p2 are predetermined integer powers, and lags are values of the predetermined domain variables in previous time steps;
wherein candidate rule-based prescriptor models are evaluated using the predictor surrogate model; and
further wherein subsequent generations are evolved based on results from prior generations until an optimized rule-based prescriptor model is determined, wherein the optimized rule-based prescriptor model is selected based on a fitness evaluation.

2. The process of claim 1, wherein the predictor surrogate model is trained on historical training data including context information (C), actions (A) performed in an included context, and outcome (O) in data sets (C, A, O).

3. The process of claim 1, wherein the predictor surrogate model is a machine learning model trained with supervised methods.

4. The process of claim 3, wherein the predictor surrogate model is selected from the group consisting of: a trained model, a labeled dataset and a simulator.

5. A process for finding a decision policy that optimizes a set of outcomes to solve a known policy problem, comprising:
i. training a predictor model based on known training data including context information (C), actions (A) performed in an included context, and outcome (O);
ii. evolving a rule-based prescriptor model with the trained predictor model as a surrogate over a predetermined number of generations;
iii. applying a determined elite evolved rule-based prescriptor model at a predetermined interval to a known policy problem to generate new decision policy data in the format (C, A, O);
iv. collecting the new decision policy data (C, A, O) and adding the new decision policy data (C, A, O) to the known training data;
v. repeating i. through iv. until a predetermined convergence metric is met;
wherein the rule-based prescriptor model has a general shape: coefficient1*inputi[lag1]p1{<|≤|>|≥}{coefficient2*inputj[lag2]p2|value}, where coefficients are numbers between zero and one, inputi and inputj are domain features, p1 and p2 are predetermined integer powers, and lags are values of the predetermined domain variables in previous time steps;
wherein an optimized rule-based prescriptor model is selected based on a fitness evaluation.

6. The process of claim 5, wherein the predictor model is a machine learning model trained with supervised methods.

7. The process of claim 6, wherein the predictor model is selected from the group consisting of a trained model, a labeled dataset and a simulator.

8. A method for storing instructions that, when executed by a computer, perform a process for developing an optimized prescriptor model for determining optimal decision policy outcomes for a predetermined domain comprising:
training a predictor surrogate model; and
feeding the predictor surrogate model to an evolutionary algorithm framework for evolving a rule-based prescriptor model over multiple generations,
wherein the rule-based prescriptor model has a general shape: coefficient1*inputi[lag1]p1{<|≤|>|≥}{coefficient2*inputj[lag2]p2|value}, where coefficients are numbers between zero and one, inputi and inputj are domain features, p1 and p2 are predetermined integer powers, and lags are values of the predetermined domain variables in previous time steps;
wherein candidate rule-based prescriptor models are evaluated using the predictor surrogate model; and
further wherein subsequent generations are evolved based on results from prior generations until an optimized rule-based prescriptor model is determined, wherein the optimized rule-based prescriptor model is selected based on a fitness evaluation.

9. The method of claim 8, wherein the predictor surrogate model is trained on historical training data including context information (C), actions (A) performed in an included context, and outcome (O) in data sets (C, A, O).

10. The method of claim 8, wherein the predictor surrogate model is a machine learning model trained with supervised methods.

11. The method of claim 8, wherein the predictor surrogate model is selected from the group consisting of: a trained model, a labeled dataset and a simulator.