Machine Design Optimiser (MDO)

General Description

The AI-based tool for the design phase of mechanisms and dynamic machines encompasses various modules to address the complexities of optimizing dynamic systems. These modules aim to support the design process by creating models that establish relationships between machine performance indicators and design parameters. These models can be either data-driven or based on machine physics, allowing for flexibility in the design process.

The AI-assistant within the tool enables users to modify design parameters based on objective functions and criteria. Manufacturing and operation constraints, as well as boundary conditions, are defined to ensure the parameters fall within applicable ranges. Target criteria are established and weighted according to their importance, enabling the optimization of CAD parameters.

Additionally, the tool takes into account the evolution of machines over their lifecycle, considering advanced effects such as clearance, flexibility, thermal influences, and fatigue crack evolution. The impact of design parameters on these effects is analyzed to enhance the understanding of machine behavior.

Parametric models play a crucial role in the development of the AI module, incorporating optimization criteria for machine components. These models provide a framework for incorporating design parameters and optimization goals into the AI-assisted design process, facilitating efficient and effective design optimization for mechanisms and dynamic machines.

Usage Viewpoint

Use Model

AIDEAS_MDO.drawio.png

Description

  • Environment configuration: MDO user (operator) define the process parameters for the MDO Module. These parameters are mainly of the machine to analyse, the simulation model (for model-based approach) or experimental database (for data-based approach). Based on this information the user must define the objective and the design parameters to use for the optimization process.

  • Deployment: Based on the information defined in the previous step the operator configures the parameters of the maximum number of itereations. As output the user will receive the optimal parameter proposal, and some sensibility graphs to evaluate the robustness of the solution.

Home page

Home Page.png

Configuration

Configuration.png

Evaluation

Evaluation.png

Usage activity diagram

The following image depicts the Usage Activity Diagram for the Machine Synthetic Data Generator. Note that Tasks labelled with “Manage” indicate a set of functions that are clustered here for better overview.

AIDEAS_MDO_Usage-Activity.png

Functional Viewpoint

Functional diagram

AI-MDO_FCD.drawio (3).png

Functional description

  • What: The main feature of this component is to find the optimal configuration of design parameters that gives the best performance of the machine.

  • Who: Design Engineer.

  • Where: Enterprise Tier.

  • Why: To find the best performance design for the application.

Input and output data for each component

Load machine configuration

  • Inputs:

    • Machine type – Machine in which the optimization process is developed.

    • Machine simulation model – Selection of the simulation model or experimental database of the machine configuration.

    • Design parameters – Subsets of machine design parameters that will be used to find the optimal solution.

  • Outputs:

    • Machine optimal parameters.

Configure optimization

  • Inputs:

    • Objective: Performance definition of the machine. Performance can be defined as a weighted sum of different performances.

    • Process – optimization process control parameters, to define the end of the simulation process.

  • Outputs:

    • Optimization process launcher.

    • The launcher, driven by the AI optimization process will call the simulation model automatically.

Perform optimization

  • Inputs:

    • Simulation model (Model-based or data-based simulation model)

  • Outputs:

    • Objectives evaluation for different configurations of model variables.

Evaluation

  • Inputs:

    • Optimization process solutions: Variables, objectives

  • Outputs:

    • Relation between the objective and the parameter values.

    • Pareto graphs in case various sub objectives are defined.

Software requirements

Software Component

Description/Role

Required Version/Configuration

Dependencies

Windows OS

Operating system needed to use the tool

Windows 10 Pro

N/A

Docker

Build, share and run containers

latest

N/A

Lifecycle

AIDEAS_MDO_Lifecycle.png

This sequence diagram illustrates the flow of interactions between the User, Frontend, Backend and Data/Files objects during the main processes: login into the AIDEAS platform, configure the optimisation and apply it.

Objects

  1. User: Represents the User interacting with the application.

  2. Frontend: Represents the user interface and the presentation layer.

  3. Backend: Represents the application logic and the server layer.

  4. Database/Files: Represents the data or file storage layer.

Implementation Viewpoint

Description of implementation Component:

AI-MDO is a toolkit to optimally define the key design parameters of a machine considering its whole life.

Technical Description of its Components:

  • Dependencies:

    • Development Language: - Python

    • Libraries: NumPy, Pandas, SciPy, Keras, Py Torch, TensorFlow

    • Container: Docker

    • Database need: MongoDB

  • Interfaces:

    • User Interface: Yes, REACT

    • Synchronous/Asynchronous Interface: RESTful APIs

    • Network/Protocols: HTTP/HTTPS

    • Data Repository: MongoDB

  • Requires:

    • Other AIDEAS Solutions: none

Solution architecture

AI-MDO.drawio (1).png

The AI-MDO backend development in Python utilizing popular libraries such as NumPy, Pandas, SciPy, Keras, PyTorch, and TensorFlow aligns with industry standards for data science and machine learning. NumPy provides efficient array and matrix processing capabilities, while Pandas offers comprehensive data analysis and processing functionalities. SciPy complements these libraries with additional scientific computing tools.

The use of machine learning libraries like Keras, PyTorch, and TensorFlow enables the training and evaluation of machine learning models, providing flexibility and a wide range of algorithms and techniques for optimization. These libraries are widely adopted and provide extensive support for building and deploying machine learning models.

On the frontend side, the use of REACT, a popular JavaScript library, ensures a responsive and interactive user interface. Redux is employed to manage the application state efficiently, enabling seamless updates and synchronization between components.

The communication between the backend and frontend is facilitated by a RESTful API, which follows standard protocols for data exchange. Using HTTPS protocols ensures secure transmission of data between the client and server.

To streamline the deployment process and ensure portability, Docker is employed. Docker allows for packaging all the necessary dependencies and components required for the software to run efficiently. This simplifies the setup and deployment of the AI-MDO system.

Tools like Postman can be used to test the API endpoints, facilitating the development and debugging process.

Overall, the chosen technologies and frameworks for both backend and frontend development, along with the use of Docker for containerization, provide a robust and scalable foundation for the AI-MDO system.