The objective of this project is to minimize the total weight of truss members for a given truss topology. The specific topology utilized for this problem is shown in the figure below, which demonstrates a grid of nodes that represent all possible joints. These joints are nodes in which the ends of truss members can be fixed. For the purposes of this project, 1 unit in the figure represents 1 meter. The number of rows (r) is equal to 11 and the number of columns (c) is equal to 20. This means there are 220 total nodes (n). As can be seen, there are additionally 3 anchor points included and one external force applied at the opposite end of the truss. For the purposes of this report, the following numbering convention will be used: the top left corner is node 1, the bottom left is node 11, the second column and first row is node 12, and so on. This way elements are numbered similar to the numbering scheme of matrices in MATLAB.
Constraints are divided into equality and inequality constraints, eventually arriving at the follow formulation.
First, the LP was solved with linprog() in MATLAB using a c such that the sum of all existing internal force magnitudes was minimized. The optimal topology is shown in the figure below.
Next, the LP is solved using a c such that the sum of all existing internal force magnitudes multiplied by member length is minimized. The optimal topology for this case is shown in the figure below.

You may also like

Back to Top