The Oracle Determinations Engine provides high-performance rule execution that can be easily embedded into Java and .NET applications, giving software developers full and direct access to its underlying functions. Organizations can use the Determinations Engine to embed powerful rules-based inferencing directly into their enterprise applications, providing an important alternative to other Oracle deployment offerings.
The Oracle Determinations Engine exposes the full power of Oracle’s patented Linear Inferencing algorithm, supporting the development of ultra-fast, rules based batch processing applications.
By directly accessing the Determinations Engine, you can maximize the speed at which large data sets can be processed; for example, recalculating insurance premiums across a customer base to deal with a change in policy.
Benchmarks confirm that the Determinations Engine can process millions of records in a matter of hours using cheap, commodity hardware. Excellent scalability enables higher processing speeds with more powerful hardware.
The Oracle Policy Automation Determinations Engine provides full support for the development of custom Web Determinations rules based applications, enabling organizations to create specialized user interfaces or user interfaces that seamlessly integrate with existing enterprise applications.
Oracle’s own out-of-the-box user interface, Oracle Policy Automation Web Determinations, is implemented using the Engine.
The Oracle Policy Automation Determinations Engine is the foundation of Oracle’s deployment technology, providing all basic services for executing rules based applications across the following four main areas:
- Loading and saving data.
- Application of data to rules to draw conclusions (forward chaining).
- Determining what data is required to draw a specific conclusion (backward chaining).
- Retrieving information about the structure of a rule set.
- Retrieving information about objects in the rule set.
- Setting and retrieving application-specific data.
- Generating sentence text for data items.
- Personalizing sentence text through data value and pronoun substitution.
- Retrieving and interrogating screen.
The Engine exposes its functionality through a well-defined application programming interface which is available in both Java and .NET versions, allowing it to be used with J2EE server platforms such as WebLogic, WebSphere and Oracle AS, in addition to Microsoft's standard platform; that is, COM+, ASP.NET, IIS.
The Engine is multithreaded, runs in-process and is able to work with as many rule sets as are required. It can simultaneously process multiple concurrent requests across multiple rule sets. It also scales well from single computer installations such as a standalone laptop all the way up to large production environments comprising clustered multiprocessing server farms.
Follow the links below to find reference examples for software engineers using the Determinations Engine API. It is written specifically from a Java perspective and includes code samples given in both Java and C#. Software engineers using the Determinations Engine API for .NET should also read the guide to using the Determinations Engine API for .NET.
In the Oracle Policy Automation Determinations Engine, numbers and currency are represented by floating point numbers (double) to perform calculations. Because of the way floating point numbers are represented in Java and .NET there can be some differences in calculations.
For example, a number may be calculated as 8.14571428571429 when you test in Oracle Policy Modeling, but the Java Determinations Engine might return 8.145714285714286. These differences will always be extremely small.
A client using the Oracle Policy Automation Determinations Server or Engine can overcome these differences by rounding to some significant value.
The following examples are provided: