Skip to content

CROSS-OPT is a Matlab package for optimizing truss structures with the Cross-Entropy method and augmented Lagrangian formulation.

License

Notifications You must be signed in to change notification settings

americocunhajr/CROSS-OPT

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

36 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

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

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:
    git clone https://github.com/americocunhajr/CROSS-OPT.git
  2. Navigate to the code directory:
    cd CROSS-OPT/CROSS-OPT-1.0
  3. To optimize a structure, execute the main file corresponding to your case:
    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