Trade(-off) study for Client with A1 and A2 instances (dependency injection)


Our system in this trail so far does not really qualify as the target of a trade study because there is only one variable of interest so far, but we can at least examine the basic principle and setup.

The Magic Model Analyst® (Cameo Simulation Toolkit®) support block «Analysis» TradeStudy is extended as StudyA and related to the Client, with the injectable reference a:I_A set as the «alternatives» over which the simulation will iterate:

Click on the image to view it full size

An «objectiveFunction» usually involves a weighted calculation over more than one value of interest; but we can still run over all instances of concrete implementations of I_A to see which has the highest value. (Later we'll do a proper trade off.)

Setting up the «alternatives» is a bit fiddly; use the Tags dialog under the specification box to set kind = TABLE and source = A.

Then using BindingConnectors from StudyA::client::a to StudyA::a and from StudyA::of::resultA to StudyA::client::resultA in an IBD.

The block StudyA is set as the exectionTarget of a Cameo «SimulationConfig»:

If you run it in Magic Model Analyst® (Cameo Simulation Toolkit®) you get the following in the console:

TradeStudy StudyA is started. 
6 of 6 alternatives evaluated for StudyA trade study (0 sec). 
Winning configuration: a : a2.1 
Winning score = 6.0 
This agrees with the previous table.
Up next
Snippets (quotes/extracts)
Visit also
Visit also (backlinks)
Related slides (includes other tutorials)
Related slides (backlinks, includes other tutorials)