Sequence Optimizer

<< Click to Display Table of Contents >>

Navigation:  Analysis Output > Advanced Analyzer and Optimizer >

Sequence Optimizer

SequenceOpt_icon Sequence Optimizer (SO) is a tool designed to reduce lead and launch time by eliminating or minimizing manual join/clamp sequence studies. The Sequence Optimizer determines the optimal join/clamp sequence from a candidate set of joins/clamps. Users may optimize clamp sequence or joining sequence.

SO has been added to the AAO Toolbar, located under the Add-Ons.

Using the SO recommended sequence will manufacture assemblies as close to nominal as possible given the variation from design gaps, part tolerances, and the impact of join/clamp sequence. DCS Sequence Optimizer finds the preferred sequence for clamping or joining using a dynamic optimization methodology in far fewer runs than full factorial.

Every optimization problem is an objective-orientated problem, which means we can only guarantee the objectives get better after optimization. Any other good or bad indicators are secondary consequence.

For example, if you select minimization from nominal (design nominal), after optimization, you will see that the considered measures are closer to the design nominal in general. We cannot guarantee any other indicators, such as estimated range. First, the estimated range has no direct relation to the design nominal value. Second, the estimated range is a value calculated based on fitted equation, which may not be the same as statistics especially for small number of samples.

 

 

SequenceOpt_calc_table

 

In this section:

Procedure

Outputs

Options

 

 

Procedure

 

1. Click the Select Move (Join or Clamp) to load the desired compliant moves. The joins or clamps can then be selected from the Navigation Tree in the model, individually or as a group using the Shift key. The selected moves should be consecutive. Selecting moves from separate groups will not be allowed (the goal is to reorder sets of moves of the same type). Ctrl key is not enabled for moves selection.

The Operation column will be populated with joins or clamps read and displayed from the model. Index numbers are added under the Initial Model column in the original model order. The operations selected can be anywhere in the model as long as they are consecutive.

A message is added for Sequence Optimizer when only soft clamps are selected to be optimized, warning the user that since these clamps do not over-constrain the part, their order may not matter.

 

SequenceOpt_Optimize

 

There are two ways of adding the moves:

 1.1 Optimization - the selected moves will be rearranged to find the optimal order.

 

 1.2 User-defined - the user-created sequences will be compared to find the best sequence. Here are the steps to use this function:

1.2.1 Select the moves in the desired order. This will create Sequence #1

1.2.2 Select Sequence #1 and click Copy. This will create a copy (or multiple copies) of Sequence #1, called Sequence #2, Sequence #3...

1.2.3 Select one of the moves in Sequence #2 and use the Switch to drop-down to reorder this sequence.

1.2.4 Use Save CSV to save all sequences in the User-defined dialog.

1.2.5 Use Load CSV to bring in a previously saved set of sequences.

1.2.6 Use Delete button to remove sequences.

 

SequenceOpt_user-defined

 

 

2. Select the Variation:

 2.1 None - the optimization will  be based on Nominal Build

 2.2 Modeled Tolerances - optimization is calculated based on the tolerances available in the model.

 

3. Choose the Objective Function - used as criteria to re-sequence the operations. There are four Objective Functions available:

3.1 Minimization from Nominal  - good design has low mean shift and/or low variation.

The nominal is the design nominal, which is the nominal value without compliant moves.

We assume the design nominal is the best we can get. So the optimizer will find the sequence that produces the closest value to the design nominal:

 

minimize { σ2  + ( Ave – nominal) 2 }

 

For each selected measurement, the optimizer tries to minimize those x values (all samples) in the following picture.

Note, the design nominal for each measurement is fixed for all the possible sequences, because it does not consider the compliant move. It is from rigid nominal build.

 

Minim_from_Nominal

The Minimization from Nominal formula is:

SeqOpt_MinNom_formula

 

 

3.2 Minimization from Average - pure variation reduction: minimize σ2

For the Minimization from Average, the average value is different for each sequence.

The optimizer will find the sequence that produces the narrowest distribution curve (shown as below) for each measurement. The optimized sequence will have the smallest variation from Mean values for distance and angle measurements, so we call it minimal variation.

 

Minim_from_Average

The Minimization from Average formula is:

SeqOpt_MinAvg_formula

 
3.3 Minimization of Force - the optimized sequence will have the smallest values for force measurements.  The Minimization of Force formula is:

SeqOpt_MinForce_formula

 
3.4 Minimization of Travel Path - the optimized sequence will have the shortest 'travel distance' between all operations. The 'travel distance' is the sum of all distances (3D true distance) measured between two consecutive operations. The Minimization of Travel Path formula is:

SeqOpt_MinTrvlPth_formula

Where:

SeqOpt_formula_inputs

 

 

 

4.Travel Path Weighting - allows the user to give a certain priority to theTravel Path vs selected objective function. When this option is activated the Weighting Factor becomes available. The Weighting Factor value is  the percentage of the Travel path to the total minimization function (travel path + selected objective function).

E.g. a Weighting Factor of 0.5 means that the Travel Path is equally important to the selected objective function. The larger the number the more important Travel Path becomes. Weighting Factor of 0.0 means only optimizing the selected objective function, and Weighting Factor of 1 means only optimizing the Travel Path.

Set model units to [in] to show the Travel Path in inches.

The Travel Path bars and label will not show if the button is unchecked.

 

5. Select the Measure(s) to be optimized. One or more measurements can be selected as a criteria for optimization. Based on the Objective Function the selectable measurements will be of a certain type: distance measurements, angle measurements, or force calculation measurements. A separate analysis can be run for the same order of operations with different types of measurements.

 

6. Select the number of Simulations.

 

7. Select the number of Threads to be used for the calculation.

 

8. Grouping operations for sequence study. Operations within a group will be not reordered, instead groups are going to be reordered during the optimizing process. To create a group add a check mark to one of the operations. All operations that come after it will be considered one group. Next group starts with the next checked operation. All operations above the first group will remain in the original order.

 

SeqOpt_grouping

 

9. Run Evaluations to optimize the results by reordering the moves.

Based on the number of Operations and Groups a certain number of Trials will be executed. E.g. for 15 Operations with no Grouping a number of 105 Trials will be executed.

 

 

Outputs

 

10. The results are displayed as bars, each bar representing one Trial with its own order of Operations and percent of the Baseline. The Bar Chart is now populated with 105 blue bars, one for each trial. The blue bar represents the Improvement from Baseline: measures results for each Trial are compared to the Baseline results and expressed as a percentage.

 

SequenceOpt_results

 

11. The Optim Seq and the Optimization Index are displayed next to the Grouping column. The Optim Seq is the best order of operation and it has the most improved value/percentage compared to the Baseline.

 

12. The above picture shows an initial value of 8.55 in the Initial Index column and an optimized value of 1.86 in the Optim Index column, which represents a percentage of 21.82% of the initial value for Minimization from Nominal.

 

 

Options

 

13. Apply Optimal Sequence - will reorder the moves in the model as per the Optim Seq column.

 

14. Refresh Initial Moves - will reorder the moves in the Operation column as per the Optim Seq column.

 

Save the Results

Sequence Optimizer files are saved based on the settings for Model's Report Directory in Preferences.

 

15. Save CSV - will save the results in a csv format.

 

16. Save Data will create a *.jop file that represents the results of the current run. When imported a *.jop saved file will reset and bring with it all the settings used when it was created including the Objective Function type and Travel Path Weighting.

 

17. Load Data - allows loading the results saved previously in a *.jop file.

 

18. Bar Chart vs Data display

18.1 Bar Chart - is a graphical representation of all the trials.

18.1.1 Left-click on a bar to apply that sequence to the Optim Seq column. The name of the column will change to Select Seq.

18.1.2 Right-click on a bar will bring up two commands:

18.1.3 Apply Sequence - will apply the sequence from that bar to the 3DCS model.

18.1.4 Reset Optimal Column - will restore the Optim Seq in the Optimization/Trial columns.

18.2 Data - displays the results for each Trial. The percent improvement from the Baseline and the measurement(s) values are displayed for the trials that show improvement.

 

SequenceOpt_data