Frontline Systems Creates Modeling Language and API for Advanced Analytics

This article is a company-provided press release and ProgrammableWeb cannot vouch for the accuracy of the statements within. If you have questions regarding the information below, please contact the company that issued the press release.

Frontline Systems has launched a public beta version of its new RASON™ modeling language and REST API at https://rason.com. Application developers can sign up for free accounts to use the language and REST API service, to create compact analytic models that ‘live’ in any mobile app or web page, solve them easily in the cloud, and get back results.

“Deployment of advanced analytics for web and mobile applications has been quite difficult in the past,” said Daniel Fylstra, Frontline's President and CEO. “The RASON service makes creating and deploying analytics models radically simple.” A new generation of apps that can use advanced analytics ‘behind the scenes’ in domains ranging from finance, logistics and energy to consumer services and even games are now much easier to build with RASON.

RESTful Analytic Solver™ Object Notation

RASON, an acronym for RESTful Analytic Solver™ Object Notation, denotes a high-level, declarative modeling language that is embedded in JSON (JavaScript Object Notation), the popular structured format widely used to pass data between Web clients and servers. A REST API at https://rason.com enables applications to submit RASON models to Frontline’s servers, solve them, and obtain results in JSON.

Unlike traditional modeling languages such as GAMS (1978) and AMPL (1985), RASON (2015) is a modern language for the Web, designed so both models and results are readable and writable by both humans and programs. Compared to conventional “callable libraries” for optimization or simulation, RASON offers a higher level, more expressive language, saving time in development, as well as ‘zero-footprint’ deployment, with no code other than JavaScript needed on a web or mobile client.

In addition to use in ‘thin client’ applications via a REST API, RASON models may be used in server-based applications, in a new release of Frontline’s Solver SDK Platform product – enabling applications in C++, C#, Java, Visual Basic and other languages to work with high-level RASON models, while retaining the full control available in a programming language.
Subscription-based Service

The RASON service, currently in public beta, will be offered on a monthly subscription basis with a free tier to get started, and paid tiers that support solving models of different sizes, using varying amounts of CPU time on Frontline’s back-end servers. For server-based applications, the Solver SDK-based RASON Interpreter can be licensed on an annual basis at a modest fixed cost.
To enable secure applications, REST API calls to Rason.net are made via SSL (Secure Sockets Layer) with an OAuth-based header for authentication and authorization -- available with a developer account on Rason.com.

Simple but Powerful Language

The RASON language is simple enough so its essential features can be grasped through a single-page example, shown at https://rason.com/Home/About. But it packs a lot of power, with arithmetic, logical and string operators, 650 built-in functions, array and vector-matrix operations, and “slicing and dicing” of multi-dimensional tables. RASON model parameters may be bound to data in external files, Excel spreadsheets, SQL databases, and soon in several Web-based common formats.

RASON models can express linear programming and mixed-integer programming models, quadratic programming and second-order cone models, nonlinear and global optimization models, and ‘arbitrary’ models solved via genetic algorithms and tabu search methods. They can also express Monte Carlo simulation / risk analysis models, and simulation optimization, robust optimization, and stochastic programming models with recourse decisions and chance constraints.

The RASON server solves small models in sub-second times, but is capable of solving extremely large, challenging models, such as LP/MIP models with millions of decision variables. A RASON client app, even on a mobile device, can request solution of even a very large model, check the solution status, and retrieve results, even hours or days later.

The RASON developer website, REST API server, and back-end ‘workers’ that run optimization and simulation models are implemented on Microsoft Azure, taking advantage of Azure facilities for scaling across many virtual machines. This power offers application developers unprecedented flexibility.

Excel and RASON Models

The RASON Interpreter is a powerful extension of Frontline’s Polymorphic Spreadsheet Interpreter (PSI Interpreter), which has been in development for nearly 15 years. Thanks to this heritage, it starts its life with features such as parallelized ‘automatic differentiation’ of linear and nonlinear expressions, and parallelized execution of Monte Carlo trials across processor cores. Though many RASON users will likely use the language without any thought of Excel, users who are coming from Excel will find that it’s straightforward to convert Excel formulas into RASON notation. Indeed, the RASON Interpreter can specially recognize names such as "a1:b10" as cell references, and give them the properties of cell ranges.

Be sure to read the next Analytics article: Ninja Metrics Unveils Katana for Entertainment Platform and API

 

Comments (0)