Nexus (Process integration and optimization)
Encyclopedia
Nexus is software for process integration
. It is designed to solve multi-disciplinary and multi-objective optimization
problems via a flowchart representation validated on the fly. Nexus is developed by iChrome Ltd., a British engineering and software company that specializes mainly in mathematical optimization and finite element structural analysis
. Version 1.1.06 of Nexus was released in September 2011 and runs on Windows or Linux. The latin word "nexus" means "connecting" and refers to the way different evaluation nodes are graphically connected in Nexus to define the design or optimization problem.
An abstraction level is provided by the flowchart module, allowing it to exchange and pass data (scalars, matrices, strings, files and other resources) across different evaluation nodes.
Parallel evaluations are performed using a proprietary cross-platform multithreading library that allows the user to start, pause and resume each evalutation thread indipendently and in real time. The latest release of the software also features direct access to remote hosts via SSH
connections handling multiple accounts within the same project via user defined SSH credentials.
Nexus is written in C++
apart from the GUI
which is written in Java
using the SWT
toolkit.
Different evaluation nodes can be used to link the software with external procedures and executables to define multi-disciplinary procedures.
, i.e. a set of support points for a response surface or surrogate model. The set of points can be imported from external files and databases or generated on the fly with one of the supported allocation algorithms.
Response Surfaces
can be created directly in the optimization flowchart or can be built indipendently using the Metamodel module. In the latter case a new response surface can be built using existing tables as DoE and following a graphical wizard. Surfaces created with this tool can be exported and later imported back in a new flowchart to be used within the flowchart module.
Process integration
Process integration is a term in chemical engineering which has two possible meanings.1. A holistic approach to process design which emphasizes the unity of the process and considers the interactions between different unit operations from the outset, rather than optimising them separately. This...
. It is designed to solve multi-disciplinary and multi-objective optimization
Multidisciplinary design optimization
Multi-disciplinary design optimization is a field of engineering that uses optimization methods to solve design problems incorporating a number of disciplines. As defined by Prof. Carlo Poloni, MDO is "the art of finding the best compromise"...
problems via a flowchart representation validated on the fly. Nexus is developed by iChrome Ltd., a British engineering and software company that specializes mainly in mathematical optimization and finite element structural analysis
Finite element method
The finite element method is a numerical technique for finding approximate solutions of partial differential equations as well as integral equations...
. Version 1.1.06 of Nexus was released in September 2011 and runs on Windows or Linux. The latin word "nexus" means "connecting" and refers to the way different evaluation nodes are graphically connected in Nexus to define the design or optimization problem.
Overview
Nexus integrates different engineering and design tools to perform data exploitation (trade-off and design of experiments studies, statistical analyses, response surface and metamodelling) as well as multi-objective optimisation tasks.An abstraction level is provided by the flowchart module, allowing it to exchange and pass data (scalars, matrices, strings, files and other resources) across different evaluation nodes.
Parallel evaluations are performed using a proprietary cross-platform multithreading library that allows the user to start, pause and resume each evalutation thread indipendently and in real time. The latest release of the software also features direct access to remote hosts via SSH
Secure Shell
Secure Shell is a network protocol for secure data communication, remote shell services or command execution and other secure network services between two networked computers that it connects via a secure channel over an insecure network: a server and a client...
connections handling multiple accounts within the same project via user defined SSH credentials.
Nexus is written in C++
C++
C++ is a statically typed, free-form, multi-paradigm, compiled, general-purpose programming language. It is regarded as an intermediate-level language, as it comprises a combination of both high-level and low-level language features. It was developed by Bjarne Stroustrup starting in 1979 at Bell...
apart from the GUI
Gui
Gui or guee is a generic term to refer to grilled dishes in Korean cuisine. These most commonly have meat or fish as their primary ingredient, but may in some cases also comprise grilled vegetables or other vegetarian ingredients. The term derives from the verb, "gupda" in Korean, which literally...
which is written in Java
Java
Java is an island of Indonesia. With a population of 135 million , it is the world's most populous island, and one of the most densely populated regions in the world. It is home to 60% of Indonesia's population. The Indonesian capital city, Jakarta, is in west Java...
using the SWT
Standard Widget Toolkit
The Standard Widget Toolkit is a graphical widget toolkit for use with the Java platform. It was originally developed by IBM and is now maintained by the Eclipse Foundation in tandem with the Eclipse IDE...
toolkit.
The Graphical User Interface
The Graphical User Interface of Nexus is organised in pluggable modules.Flowchart
The Flowchart module offers the user a graphical representation of the design process and of the optimization procedures.Different evaluation nodes can be used to link the software with external procedures and executables to define multi-disciplinary procedures.
Response Surfaces
Within this module it is possible to create static and dynamic Design of experimentsDesign of experiments
In general usage, design of experiments or experimental design is the design of any information-gathering exercises where variation is present, whether under the full control of the experimenter or not. However, in statistics, these terms are usually used for controlled experiments...
, i.e. a set of support points for a response surface or surrogate model. The set of points can be imported from external files and databases or generated on the fly with one of the supported allocation algorithms.
Response Surfaces
Response surface methodology
In statistics, response surface methodology explores the relationships between several explanatory variables and one or more response variables. The method was introduced by G. E. P. Box and K. B. Wilson in 1951. The main idea of RSM is to use a sequence of designed experiments to obtain an...
can be created directly in the optimization flowchart or can be built indipendently using the Metamodel module. In the latter case a new response surface can be built using existing tables as DoE and following a graphical wizard. Surfaces created with this tool can be exported and later imported back in a new flowchart to be used within the flowchart module.
Visualization and post-processing
A visualization and plotting module allows the user to create two or threedimensional plots and charts to monitor the optimization procedure and to display results.Database explorer
External databases can be used to store performed evaluations and to get already performed results across concurrent or subsequent runs. This module provides an utility to explore external databases currently supported, with the possibility to open, query and explore the databases containing Nexus data.Core features
The kernel of Nexus is designed to provide a scalable framework, with the possibility to link dynamic modules at runtime. Commonly used modules are packed within standard libraries and provided as part of the Nexus standard release. Additional libraries can be added to extend the software functionalities.Evaluation nodes
The following evaluation nodes are available to define new objective functions:- Expressions, Conditional Expressions
- CC (programming language)C is a general-purpose computer programming language developed between 1969 and 1973 by Dennis Ritchie at the Bell Telephone Laboratories for use with the Unix operating system....
/C++C++C++ is a statically typed, free-form, multi-paradigm, compiled, general-purpose programming language. It is regarded as an intermediate-level language, as it comprises a combination of both high-level and low-level language features. It was developed by Bjarne Stroustrup starting in 1979 at Bell...
external user code - JavaJavaJava is an island of Indonesia. With a population of 135 million , it is the world's most populous island, and one of the most densely populated regions in the world. It is home to 60% of Indonesia's population. The Indonesian capital city, Jakarta, is in west Java...
external user code - MatlabMATLABMATLAB is a numerical computing environment and fourth-generation programming language. Developed by MathWorks, MATLAB allows matrix manipulations, plotting of functions and data, implementation of algorithms, creation of user interfaces, and interfacing with programs written in other languages,...
- PythonPython (programming language)Python is a general-purpose, high-level programming language whose design philosophy emphasizes code readability. Python claims to "[combine] remarkable power with very clear syntax", and its standard library is large and comprehensive...
- Microsoft ExcelMicrosoft ExcelMicrosoft Excel is a proprietary commercial spreadsheet application written and distributed by Microsoft for Microsoft Windows and Mac OS X. It features calculation, graphing tools, pivot tables, and a macro programming language called Visual Basic for Applications...
- Fluent, AbaqusAbaqusAbaqus FEA is a suite of software applications for finite element analysis and computer-aided engineering, originally released in 1978...
, NastranNastranNASTRAN is a finite element analysis program that was originally developed for NASA in the late 1960s under United States government funding for the Aerospace industry. The MacNeal-Schwendler Corporation was one of the principal and original developers of the public domain NASTRAN code...
, CATIACATIACATIA is a multi-platform CAD/CAM/CAE commercial software suite developed by the French company Dassault Systemes...
, RadiossRadiossRadioss is a multidisciplinary finite element solver developed by Altair Engineering. It can solve both linear and non-linear problems.- Disciplines :* Linear static analysis* Non-linear explicit dynamic analysis* Non-linear implicit quasi-static analysis...
etc.
Optimization algorithms
Nexus is released with 3 main optimization libraries: Standard Library, Gradient-based Optimization Library and Genetic Alogrithm Library. They include the following algorithms:- SimplexSimplex algorithmIn mathematical optimization, Dantzig's simplex algorithm is a popular algorithm for linear programming. The journal Computing in Science and Engineering listed it as one of the top 10 algorithms of the twentieth century....
(Nelder-Mead) - Bounded BFGS optimisationBFGS methodIn numerical optimization, the Broyden–Fletcher–Goldfarb–Shanno method is a method for solving nonlinear optimization problems ....
- Levenberg-Marquardt least-square minimization method
- Sequential linear programmingSuccessive linear programmingSuccessive Linear Programming , also known as Sequential Linear Programming, is an optimization technique for approximately solving nonlinear optimization problems....
- SQP (nlConst) optimisationSequential quadratic programmingSequential quadratic programming is an iterative method for nonlinear optimization. SQP methods are used on problems for which the objective function and the constraints are twice continuously differentiable....
- Generalized Moving Asymptotes method
- Adaptive Simulated AnnealingSimulated annealingSimulated annealing is a generic probabilistic metaheuristic for the global optimization problem of locating a good approximation to the global optimum of a given function in a large search space. It is often used when the search space is discrete...
- Pattern Search Algorithm (Mesh Adaptive Direct Search)
- Multi Criteria Decision Making procedure
- Feasibility Region Search Algorithm
- Single and multiobjective Genetic AlgorithmsGenetic algorithmA genetic algorithm is a search heuristic that mimics the process of natural evolution. This heuristic is routinely used to generate useful solutions to optimization and search problems...
- Single and multiobjective Particle Swarm OptimizationParticle swarm optimizationIn computer science, particle swarm optimization is a computational method that optimizes a problem by iteratively trying to improve a candidate solution with regard to a given measure of quality...
Desing of Experiment (Allocation Algorithms)
The Response Surface Library provides methods to create new design of experiments:- Random point allocation
- Full factiorial allocation
- Latin and optimal latin HypercubesLatin hypercube samplingLatin hypercube sampling is a statistical method for generating a distribution of plausible collections of parameter values from a multidimensional distribution. The sampling method is often applied in uncertainty analysis....
- Latin squareLatin squareIn combinatorics and in experimental design, a Latin square is an n × n array filled with n different symbols, each occurring exactly once in each row and exactly once in each column...
and optimal LatinSquare - Cubic Face Centred, Box-Behnken and Plackett-Burman designs
- Taguchi orthogonal matrix designTaguchi methodsTaguchi methods are statistical methods developed by Genichi Taguchi to improve the quality of manufactured goods, and more recently also applied to, engineering, biotechnology, marketing and advertising...
- D-optimal design
Metamodels and Response Surfaces
The following metamodelling techniques are available within the Respose Surface Library:- KNearest
- Radial Basis FunctionRadial basis functionA radial basis function is a real-valued function whose value depends only on the distance from the origin, so that \phi = \phi; or alternatively on the distance from some other point c, called a center, so that \phi = \phi...
- KrigingKrigingKriging is a group of geostatistical techniques to interpolate the value of a random field at an unobserved location from observations of its value at nearby locations....
- Polynomial regression
- User defined least-square
- Neural NetworkNeural networkThe term neural network was traditionally used to refer to a network or circuit of biological neurons. The modern usage of the term often refers to artificial neural networks, which are composed of artificial neurons or nodes...
- Adaptive Kriging (1)
Database Support
The latest release supports the following databases to save and retrieve evaluation data:- SQLiteSQLiteSQLite is an ACID-compliant embedded relational database management system contained in a relatively small C programming library. The source code for SQLite is in the public domain and implements most of the SQL standard...
- FirebirdFirebird (database server)Firebird is an open source SQL relational database management system that runs on Linux, Windows, and a variety of Unix. The database forked from Borland's open source edition of InterBase in 2000, but since Firebird 1.5 the code has been largely rewritten ....
- PostgreSQLPostgreSQLPostgreSQL, often simply Postgres, is an object-relational database management system available for many platforms including Linux, FreeBSD, Solaris, MS Windows and Mac OS X. It is released under the PostgreSQL License, which is an MIT-style license, and is thus free and open source software...
- Microsoft AccessMicrosoft AccessMicrosoft Office Access, previously known as Microsoft Access, is a relational database management system from Microsoft that combines the relational Microsoft Jet Database Engine with a graphical user interface and software-development tools. It is a member of the Microsoft Office suite of...
License
Nexus is available with three different licenses:- Orange: a fully featured license for research and education purposes. The Orange release is avaialable on Windows platforms under machine-locked license agreement and is free for education and research purposes.
- Green: a fully featured license for small and medium business. The Green release is available on Windows and Linux platforms under machine-locked or floating network license
- Blue: a clustered and fully distributed license developed for large scale applications.
- Light: a specific license made available to small consultancy and engineering studios with limited computational resources.