Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/americocunhajr/cross-opt
CROSS-OPT is a Matlab package for optimizing truss structures with the Cross-Entropy method and augmented Lagrangian formulation.
https://github.com/americocunhajr/cross-opt
augmented-lagrangian cross-entropy-method nonconvex-optimization shape-optimization simulation-based-optimization size-optimization structural-mechanics structural-optimization
Last synced: 17 days ago
JSON representation
CROSS-OPT is a Matlab package for optimizing truss structures with the Cross-Entropy method and augmented Lagrangian formulation.
- Host: GitHub
- URL: https://github.com/americocunhajr/cross-opt
- Owner: americocunhajr
- License: mit
- Created: 2024-07-11T22:13:35.000Z (5 months ago)
- Default Branch: main
- Last Pushed: 2024-12-02T04:41:16.000Z (20 days ago)
- Last Synced: 2024-12-02T05:29:52.934Z (20 days ago)
- Topics: augmented-lagrangian, cross-entropy-method, nonconvex-optimization, shape-optimization, simulation-based-optimization, size-optimization, structural-mechanics, structural-optimization
- Language: MATLAB
- Homepage: https://americocunhajr.github.io/CROSS-OPT
- Size: 6.49 MB
- Stars: 1
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
## Cross-Entropy Optimization for Truss Structures
**CROSS-OPT: Cross-Entropy Optimization for Truss Structures** is a Matlab package that implements a framework for size and shape structural optimization of truss systems. The package leverages the Cross-Entropy (CE) method for global search optimization and employs an augmented Lagrangian formulation to handle equality and inequality constraints. With some straightforward adaptations, the CROSS-OPT strategy can also be applied to other structural systems and optimization problems.
**CROSS-OPT** uses as optimization tool the package **CEopt - Cross-Entropy Optimizer**, which can be downloaded at https://ceopt.org.
### Table of Contents
- [Overview](#overview)
- [Features](#features)
- [Usage](#usage)
- [Documentation](#documentation)
- [Reproducibility](#reproducibility)
- [Authors](#authors)
- [Citing CROSS-OPT](#citing-cross-opt)
- [License](#license)
- [Institutional support](#institutional-support)
- [Funding](#funding)### Overview
**CROSS-OPT** was developed to solve nonconvex optimization problems involving truss structures. The underlying results are reported in the following publication:
More details are in the following paper:
- *M. V. Issa, A. Pereira and A. Cunha Jr, The cross-entropy method for nonconvex structural optimization, 2024 (under review)*Preprint available here.
### Features
-### Usage
To get started with **CROSS-OPT**, follow these steps:
1. Clone the repository:
```bash
git clone https://github.com/americocunhajr/CROSS-OPT.git
```
2. Navigate to the code directory:
```bash
cd CROSS-OPT/CROSS-OPT-1.0
```
3. To optimize a structure, execute the main file corresponding to your case:
```bash
Main_TrussNbars_ObjFuncType_ConstraintType_Solver
```This package includes the following files:
* CEopt -- Cross-entropy solver
* Main_Truss10_MassMin_YieldStress_CE.m -- Mass minimization with yield stress constraints for a 10 bars truss using CE
* Main_Truss10_MassMin_YieldStress_GA.m -- Mass minimization with yield stress constraints for a 10 bars truss using GA
* Main_Truss10_MassMin_YieldStress_SPQ.m -- Mass minimization with yield stress constraints for a 10 bars truss using SQP
* Main_Truss10_MassMin_YieldStress_BoxPlot.m -- BoxPlot for mass minimization with yield stress constraints for a 10 bars truss
* Main_Truss10_MassMin_FrequencyBounds_CE.m -- Mass minimization with frequency constraints for a 10 bars truss using CE
* Main_Truss10_MassMin_FrequencyBounds_GA.m -- Mass minimization with frequency constraints for a 10 bars truss using GA
* Main_Truss10_MassMin_FrequencyBounds_SQP.m -- Mass minimization with frequency constraints for a 10 bars truss using SQP
* Main_Truss10_MassMin_FrequencyBounds_BoxPlot.m -- BoxPlot for mass minimization with frequency constraints for a 10 bars truss
* Main_Truss37_MassMin_FrequencyBounds_CE.m -- Mass minimization with frequency constraints for a 37 bars truss using CE
* Main_Truss37_MassMin_FrequencyBounds_GA.m -- Mass minimization with frequency constraints for a 37 bars truss using GA
* Main_Truss37_MassMin_FrequencyBounds_SQP.m -- Mass minimization with frequency constraints for a 37 bars truss using SQP
* Main_Truss37_MassMin_FrequencyBounds_BoxPlot.m -- BoxPlot for mass minimization with frequency constraints for a 37 bars truss### Documentation
The routines in **CROSS-OPT** are well-commented to explain their functionality. Each routine includes a description of its purpose, as well as inputs and outputs.### Reproducibility
Simulations done with **CROSS-OPT** are fully reproducible, as can be seen on this CodeOcean capsule.
### Authors
- Marcos Vinicius Issa
- Anderson Pereira
- Americo Cunha Jr### Citing CROSS-OPT
We ask the code users to cite the following manuscript in any publications reporting work done with our code:
- *M. V. Issa, A. Pereira and A. Cunha Jr, The cross-entropy method for nonconvex structural optimization, 2024 (under review)*```
@article{Issa2024CROSS-OPT,
author = {M. V. Issa and A. Pereira and A {Cunha~Jr}},
title = {The cross-entropy method for nonconvex structural optimization},
journal = {Under Review},
year = {2024},
volume = {~},
pages = {~},
doi = {~},
}
```### License
**CROSS-OPT** is released under the MIT license. See the LICENSE file for details. All new contributions must be made under the MIT license.
### Institutional support
### Funding