Kalis Library User Guide
Topics covered in this chapter:
Introduction
This document introduces the Xpress Kalis APIs. In addition to Kalis for Mosel, Xpress Kalis includes application programming interfaces for C++, Java, and Python to formulate Constraint Programming (CP) models and solve them using the Kalis constraint programming engine for applications developed in those languages.
Installation and Licensing
During the installation of Xpress, you will be asked whether you would like to install Xpress Kalis. If you choose to install and accept the license terms, the Xpress Kalis libraries with be installed into the <XPRESSDIR>/lib folder and the corresponding binaries in the <XPRESSDIR>/bin folder. <XPRESSDIR> is the folder in which you have installed Xpress. The distribution includes the Kalis Mosel User Guide and Kalis Mosel Reference Manual which can be found in PDF format in <XPRESSDIR>/docs/solver/kalis.
You need a valid license file to use the Kalis engine. To obtain a license, please contact your sales representative or see the 'How to Contact the Xpress Team' section. See the FICO Xpress Licensing section on how to setup Xpress licenses.
Prerequisites
Please refer to the list of supported platforms to determine the supported platforms for installing and using the Xpress Kalis APIs. To use the Xpress Kalis APIs, it is assumed that you have installed Xpress and have setup the licenses appropriately as described in the previous sections. It is also assumed that you have installed the programming language (C++, Java or Python) that you wish to use to develop Xpress Kalis applications.
Setting Environment Variables on Windows
In order to run Xpress Kalis binary or executable files from anywhere on your Windows machine, as well as load dynamic libraries (or DLLs) used by Xpress Kalis at runtime, it is necessary to make sure that the PATH system environment variable is set properly on your Windows machine. In particular, you must update the system PATH environment variable so that it indicates the locations of the <XPRESSDIR>/lib and <XPRESSDIR>/bin folders.
Note that you may need to restart your Windows machine after modifying the environment variables, for the changes to take effect. Simply logging out and relogging in is not enough. Moreover, if the PATH environment variable points to more than one folder that contains an executable or DLL of the same name, the one that will be chosen is the one whose folder appears first in the PATH variable definition.
Setting Environment Variables on Linux, MacOS
In order to run Xpress Kalis binary or executable files from anywhere on your Linux or MacOS computer, as well as load dynamic, shared libraries (i.e. .so or .dylib files) used by Xpress Kalis at runtime, it is necessary to make sure that several environment variables are set properly on your machine.
You must also update the LD_LIBRARY_PATH (DYLD_LIBRARY_PATH on MacOS) environment variable so that it indicates the location of the <XPRESSDIR>/lib directory.
Setting the PATH and LD_LIBRARY_PATH (DYLD_LIBRARY_PATH on MacOS) environment variables on can be done as follows. In the instructions below, replace <file_absolute_library_path> with the full path to the directory containing the Xpress Kalis shared object library (e.g., the <XPRESSDIR>/lib directory) and <file_absolute_path> with the path to the directory containing the binary files (e.g., the <XPRESSDIR>/bin directory).
Linux
If you run a bash shell, then type:
> export PATH=<file_absolute_path>:$PATH > export LD_LIBRARY_PATH=<file_absolute_library_path>:$LD_LIBRARY_PATH
If you run a csh or tcsh shell, then type:
> setenv PATH <file_absolute_path>:$PATH > setenv LD_LIBRARY_PATH <file_absolute_library_path>:$LD_LIBRARY_PATH
MacOS
Determine the shell being used:
> echo $SHELL
If you run a bash shell, then type:
> export PATH=<file_absolute_path>:$PATH > export DYLD_LIBRARY_PATH=<file_absolute_library_path>:$DYLD_LIBRARY_PATH
If you run a csh or tcsh shell, then type:
> setenv PATH <file_absolute_path>:$PATH > setenv DYLD_LIBRARY_PATH <file_absolute_library_path>:$DYLD_LIBRARY_PATH
Note that the value of the environment variable is only valid in the shell in which it was defined. Moreover, if a particular environment variable points to more than one directory that contains a binary or dynamic library of the same name, the one that will be chosen is the one whose directory appears first in the environment variable definition.
Documentation
Please refer to the following links for documentation on how to use the Xpress Kalis Libraries.
NOTE that upon clicking the links below, you will be leaving https://www.fico.com and directed to Artelys' website https://www.artelys.com.
Kalis Libraries User Guide
Continuous variables and numerical CSP
Controlling the solution search
Kalis Libraries Reference Manuals
How to Contact the Xpress Team
Sales and Maintenance
If you need information on other Xpress Optimization products, or you need to discuss maintenance contracts or other sales-related items, contact FICO by:
- Phone: +1 (408) 535-1500 or +44 207 940 8718
- Web: www.fico.com/optimization and use the available contact forms
Product Support
Customer Self Service Portal (online support): www.fico.com/en/product-support
Email: Support@fico.com (Please include 'Xpress', in the subject line)
For the latest news and Xpress software and documentation updates, please visit the Xpress website at http://www.fico.com/xpress or subscribe to our mailing list.
How to Contact Artelys
Artelys SA
Information and Sales:, info-kalis@artelys.com
Licensing and Product Support:, support-kalis@artelys.com
Tel: +33 1 44 77 89 00
Fax: +33 1 42 96 22 61
12, rue du Quatre Septembre
75002 Paris Cedex
France
For the latest news about Kalis, training course programs, and examples, please visit the Artelys website at http://www.artelys.com.
© 2001-2024 Fair Isaac Corporation. All rights reserved. This documentation is the property of Fair Isaac Corporation (“FICO”). Receipt or possession of this documentation does not convey rights to disclose, reproduce, make derivative works, use, or allow others to use it except solely for internal evaluation purposes to determine whether to purchase a license to the software described in this documentation, or as otherwise set forth in a written software license agreement between you and FICO (or a FICO affiliate). Use of this documentation and the software described in it must conform strictly to the foregoing permitted uses, and no other use is permitted.