Blog Post

FICO® Xpress Optimization Blog
2 MIN READ

Xpress 8.12.3 Mosel 5.6.1

FICO's avatar
FICO
Community Manager
5 years ago

With this release of Xpress Mosel, we add a dataframe capability in mmodbc based on type ‘any’ and introduce a new Mosel module ‘mmreflect’.  


Xpress Mosel is the premier algebraic modeling and programming language. Its best-in-class functionality enables operations researchers, and modeling experts to rapidly develop and deploy optimization solutions that solve complex, real-world business problems. It provides an easy-to-learn, robust way to interact with solver engines, and tightly integrates with Xpress Insight to deploy models into powerful, business user-friendly applications. 


Key features for Xpress Mosel 5.6.1 include:

  • Dataframe capability in mmodbc:

    It is now allowed to read data from a database in a dataframe-style: the model developer simply declares a two-dimensional array for which the line (counter) and column (field names) indices are automatically populated.

    - A new subroutine ‘SQLdataframe’ has been added to mmodbc.
    - This extends on the existing functionality available for spreadsheets and .csv file reading. 

  • New module mmreflect:

    With the introduction of the type ‘any’ and this new module, we will provide an easy way to call functions and entities by name during run time.

    - The most common operations are supported from this release onwards: 

    - (i): findident(string,any) -- searching for anything, e.g., name of an entity or of a procedure 
    - (ii) callproc(string) and callfunc(string) -- to run any procedure by name
    - Mmreflect will become a replacement to the current xreflect which is used in some demos, such as Portfolio Simulator App and the Insight project-framework on GitHub.
    - xreflect has been marked deprecated and will be removed in a future release once mmreflect provides all relevant functionality. 

More details can be found in the release notes. 

Updated 5 years ago
Version 3.0
No CommentsBe the first to comment