SkyCiv Documentation

Your guide to SkyCiv software - tutorials, how-to guides and technical articles

SkyCiv Structural 3D

  1. Home
  2. SkyCiv Structural 3D
  3. Solving
  4. S3D Optimizer

S3D Optimizer

Automatically Optimize your models to reduce material and carbon costs using Machine Learning


The SkyCiv S3D Optimizer is a plugin for S3D that autonomously minimizes the material and carbon costs of an engineer’s existing S3D model. The algorithm works by manipulating an S3D model’s sections, section dimensions, materials, and node locations to reduce cost while preserving structural soundness and architectural integrity. This is made possible by machine learning algorithms coupled with the powerful functionality of S3D.

How it works

The SkyCiv S3D Optimizer is currently in its beta stage and is being introduced through a soft launch. While you won’t have control over when or how your model will be optimized yet, the optimizer will run in the background on your existing models every time you solve them. Upon completion, you may be notified of the optimized results and have the option to view the optimized model. Note, at this time, the optimizer will only optimize library sections present within the existing model. You can turn this feature off at any time, by going to your settings in S3D and ticking off the box that says Auto-run SkyCiv Optimizer.

An example notification of a successful optimization

In order for the optimizer to run on your model, your initial model must contain: at least one library section; and have at least one utility ratio that is less than one. Please note, only the initial utilities that are less than one will be considered as design criteria for the optimizer.

What are the variables and criteria?

The variables (parameters) being changed in your model, are limited to the section data. It is iterating through all possible sections in the specified library. For instance, if a user has a section of W8x10 (taken from the American – AISC database), the Optimizer will select the most optimal section in that particular library.

The Optimizer is based on the following criteria:

  • Deflection Span Ratio must be less than L/250
  • Member Stresses must be at a ratio of less than 0.95 for Material Strength (based on user-defined input)
  • Member Stresses must be at a ratio of less than 0.95 for Material Yield (based on user-defined input)
  • Minimizing the Cost ($ per mass) of the materials used

Sample results from an optimizer run. Users can then open the optimized model in another window


Why am I not getting notified with optimization results after I solve my model?

A variety of factors can result in you not being notified. These include an initial model that is not structurally stable, a model that does not contain standard library sections, too large of a model, or a model that cannot be meaningfully optimized.

We won’t be running models that are too large during the soft launch. On average, it should take 1 minute for the optimizer to run.

How can I choose the sections I want to optimize? Can I optimize other aspects of the model?

We are restricting section selection and other optimization criteria for the soft launch. These features will be available in the near future.

Why do I sometimes get different results on the same model?

In some cases, there can be millions of variations of an S3D model. It is computationally impossible to test them all. Our algorithm relies on a metaheuristic stochastic process (random) to find the best model as quickly as possible. Due to the random nature of this algorithm, you are not always guaranteed to find the best/same model.

Why are all my sections not being optimized?

We try to limit the optimizer’s duration time to one minute. Because of this, we may not have time to optimize all sections. We use machine learning to determine what sections should be optimized in the allotted time frame.


Was this article helpful to you?
Yes No

How can we help?

Go to Top