CADES is a software based on software components for the design and optimization of multi-physics systems.
Modeling is defined in an equation based language, integrating physical phenomenon but also complementar paramaters including economical aspects. Model is then parsed and analysed, generating computer code which is finally encapsulated in a software component called ICAr. CADES services are able to treat ICAr components to simulate, or optimise the device.
An ICAr component owns the following caracteristics :
It can be deployed and can be executed autonomous because it embeds all its resources.
It is a black box model (details of model are hidden)
It accessible by programming interfaces defining services (SOA : software oriented architecture)
It can be composed with other ICAr components
It is pluggable inside other environments (Excel, Matlab, Portunus, AMESim, iSight, Got, ...)
Algebraic equation of the model are defined from our language SML (System Modeling Language). Equations are sorted automatically to defined computable model. Algorithm parts can also be included like loop and conditions. It is also possible to import extern model from C or Java languages, or an ICAr component to define a composition.
Main functions are :
Syntax model analysis,
Automatic computer programming of the model in C or Java.
Symbolic derivation or automatic differentiation to produce model's Jacobian matrix.
Embeding inside a java archive file.
A 2D modeler allows also to define a parametrized gerometry of the device. This vizualisation can be embedde in the ICAr file and is then available as a service of the component.
Using ICAr component: service units
CADES offers some service modules using ICAr components. Modules of simulation (static or dynamique), sensitivity analysis, and optimization.
Component Calculator module allows to define model's parameters and to compute or plot the model. A sensitivity module using Jacobian information is also included.
ICAr components have been designed for optimization under constraints. Jacobian matrix available in components is very usefull for optimization algorithm like Quasi-Newton ones (SQP, Interior Point, ...). To treat local minima, genetic algorithms are also available. Some mixed strategies can be defined by the user, taking advantage of each algorithm. For multi-objectif optimization, pareto curve can be plotted by deterministic or meta-heuristic approaches (NSGA II).
B. Delinchant , L. Estrabaud, L. Gerbaud, F. Wurtz “Multi-criteria design and optimization tools (53 pages)” chapter 5 of Integrated Design by Optimization of Electrical Energy Systems, Edited by Xavier Roboam, pp 193-245, Wiley ISTE (june 2012).
B. Delinchant, D. Duret, L. Estrabaut, L. Gerbaud, H. Nguyen Huu, B. Du Peloux, H.L. Rakotoarison, F. Verdiere, F. Wurtz, "An optimizer using the software component paradigm for the optimization of engineering systems", COMPEL: The International Journal for Computation and Mathematics in Electrical and Electronic Engineering; Vol 26, Issue: 2, pp 368 - 379, 2007
B. Delinchant, F. Wurtz, D. Magot, L. Gerbaud "A component-based framework for the composition of simulation software modeling electrical systems", Journal ofSimulation, Society for Modeling and Simulation International, Special Issue: Component-Based Modeling and Simulation. Jul 2004; vol. 80: pp 347 - 356.