# Terminology

You should understand these terms before you begin using the application.

Term | Definition | Module |
---|---|---|

Arbitration | Arbitration provides the ability to modify the set of outcomes (true facts) from each decision. Outcomes can be sorted, scored, and selected. For example, a decision may have 10 true facts with each fact having been assigned a priority attribute value. Arbitration allows the business use to order the facts by priority (highest to lowest) and select only the top three facts to return. | Decision Manager |

Artificial Intelligence (AI) | A broad concept intended to make machines intelligent, which includes machine learning (ML), natural language processing (NLP), robotics, and computer vision. | All |

BONMIN | BONMIN is an open-source C++ code for solving linear, non-linear, and general mixed integer non-linear programming problems. | Optimization |

Categorical data | Data types that are non-numeric in nature and belong to a category instead. For example, Country of Residence. | All |

CBC | The COIN-OR Branch and Cut solver (CBC) is an open-source linear program and mixed-integer program solver. CBC is intended to be used primarily as a callable library to create customized branch-and-cut solvers. | Optimization |

Constraints | Constraints are the logical conditions that a solution to an optimization problem must satisfy such as limitations faced. | Optimization |

Data dictionary | The data dictionary has 1 or more profiles each with 1 or more fields that hold the data that is used in the decision process. The fields are loaded from the data passed on the request via transformations. This lets you represent the decision model in business domain language. For example, the data passed in the request might have the last service date as a string representing a date. However, the user may want to construct a rule based on the number of months since the last service date. They can create a service profile with a Months since last service field and apply transforms on the input date string to convert it into an integer representing the number of months since service. This way the rule applies whenever the request is made since the value is relative to the time of the request. In addition, rules can be constructed in a more natural way: Service.Months since last service > 5. | Decision Manager |

Data Lake | Flexible and economical cloud object storage solution where data is stored in its raw format. This is the primary data source to form datasets. | All |

Decision Manager attributes | Attribute values are returned for each outcome as a way to provide information which may be useful when evaluating the results of the decision process. For example, If a particular fact is true it may be associated with business process which should be completed. You can add an ProcessId attribute to the fact and provide the specific value for that fact. Each rule fact also inherits all the attributes from the decision in which it is included. Attributes carry information out of the decision process and can also reference values in the data dictionary. | Decision Manager |

Decision plan | The model (configuration) of a decision process. | Decision Manager |

Decision variables | Decision variables represent the unknown information of the business problem of what you control. | Optimization |

Design quest | A quest involving building prescriptive use case and problem statements and applying solvers to attain respective optimal solution. | Optimization |

Endpoint | The REST API access point of a production quest to process new data through the model. Endpoints can process data by being passed a .csv, a JSON message, or accessed via the ION API gateway. | All |

Integer programming (IP) | Integer programming can be subdivided into three families. Linear integer programming: a problem of the family of linear programming where the variables are constrained to be integer. These problems use a branching technique to force the variables to be integer and at each iteration they run an LP problem. Non-linear integer programming: a problem of the family of non-linear programming where the variables are constrained to be integer. These problems do not have a standard solution procedure. You must understand the special structure of the problem to find efficient algorithms to solve them. Mix integer programming typically refers to LP problems where some of the variables are continuous and some others are constrained to be integer. In principle, the solution methods include branching as with LIP. In practice there tend to be problems with many variables which make these problems too slow to be solve to optimality. | Optimization |

IPOPT | IPOPT is an interior point optimizer. This is an open-source solver for large-scale nonlinear optimization. It can be used to solve general nonlinear programming problems along with linear problems. | Optimization |

Label/Target | Terms that refer to the predicted variable of the model. | Machine learning, Decision Manager |

Linear programming (LP) | Linear programming represents the base of the optimization world. They can be solved to optimality in reasonable time. In these problems, all the equations are polynomials of degree one that include multiple variables. The constraints and objective functions are linear and well defined. | Optimization |

Machine learning (ML) | An application that focuses on building systems that can learn from data without being explicitly programmed. Machine learning algorithms are typically categorized as supervised and unsupervised learning. | Machine learning |

Non-linear programming (NLP) | Non-linear programming represents a family that can be divided into convex and
non-convex problems. The NLP convex problems are more complex than the LP problems,
but there are efficient algorithms that can handle reasonable size problem; some
examples can include quadratic equations, some equations including `ex` or `ln(x)` . The non-convex
NLP problems are very hard to solve. The field of Global Optimization was created to
address these family of problems; some examples could be equations including `cos(x)` , high order polynomial equations. |
Optimization |

Objective | An objective is a goal that must be achieved. It is represented in a mathematical equation, desired to either maximize the favorable results or minimize the unfavorable outcomes. | Optimization |

Optimization | An application of artificial intelligence and a branch of applied mathematics that uses models to find the best possible solution to a problem. For example, generating the best possible outcome by maximizing the desired results or minimizing the undesired outcome based on data, decision variables, constraints and objectives. | Optimization |

Production quest | A trained model that has taken steps to deployment for access via endpoints. | Machine learning, Optimization |

Quest | A flow of activities that make up the model. It is the visual representation of the model building blocks. | Machine learning, Optimization |

Rule decision | A plan can have 1 or more rule decisions. The rule decision is a grouping of 1 or more rule facts. Each rule decision may have an Activation rule that triggers the evaluation of the facts it contains. The user can define attributes for a decision and can also define an arbitration process for that decision. | Decision Manager |

Rule fact | Rule facts represent a rule statement that will evaluate to true or false based on data in the data dictionary. A rule fact that evaluates to true can be an outcome from the decision. The user can create facts that are mutually exclusive or disjoint (multiple facts can be true at the same time). Each rule fact can also have a unique set of user defined attributes. | Decision Manager |

Sets, indices and constants | Sets and indices represent the indexed value to specify the elements of an array of numbers through which the model iterates; Constants represents direct value that a model considers for solving the problem. | Optimization |

Solvers | Solvers represent the implementation of an algorithm to arrive to relevant optimal solution. | Optimization |

Supervised learning | Machine learning algorithms that form relationships between targeted label and input features so that the output values for unseen data can be predicted. Supervised algorithms must be trained on known outcomes. | Machine learning |

Trained model | A model that can be used to predict outcomes based on new data. | Machine learning |

Training quest | A quest involving a predictive method that produces a trained model. | Machine learning |

Unsupervised learning | Machine learning algorithms that make inferences from data using only input features without referring to known or labelled outcomes. These algorithms can discover data structures by clustering it into intuitive groups. | Machine learning |