Skip to end of metadata
Go to start of metadata

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 12 Next »

The end goal of Problem Modeling is to produce a problem description to feed the Optimization Engine.

As soon as possible, graphical models produced with this tool are refined to instantiate an actual multi-agent system. This is done through high-level descriptions that are almost textual translations of the graphical models, except that they allow for more details.

From a configuration point of view, the Run Logic describes the model. Then a specific API instantiates the Pricefx generic meta-model into a problem description expressed in YAML. Then the YAML problem description is automatically translated into an actual multi-agent system and can be run.

In this section, all the code snippets are in YAML, since it is the last format, understandable by the Optimization Engine backend.

The steps to create a specific model description are:

  1. Run.groovy Logic: understand its structure

  2. Define the hierarchies

  3. Define the spaces

  4. Define the scopes inside each space

  5. Define the variables inside each scope

  6. Define the criteria inside each scope

The easiest way is to write the description space by space following the graphical description.

Understanding the underlying concepts is important. Page Main Concepts for Optimization Problems is the reference.

This section also provides a problem description sample.

Further in this section:

A problem description does not exist in isolation and is delivered along with a Model Logic responsible for providing the mappings, in the form of Model Tables, between this high-level description of the problem and the actual values coming from the partition’s transactional and master data. This step is documented in the next section Problem Tables.

  • No labels