Truss Topology Project

For this project you will be solving the Truss Topology problem via Linear Programming

(LP).

• This should be a single Matlab script called “My Truss Lastname.m” (where Lastname

is replaced by your last name)

• The possible link locations is an 11×20 (assume meters) grid shown in Figure 1

• Note the node with the red arrow, n Figure 1, is the location of the load ( = 4 units

of force) that your system has to support.

• We assume that the truss members have an area equal to 1 and the yield strength is

equal to 8.

0 5 10 15 20

0

2

4

6

8

10

Figure 1: This figure shows the three anchors along with the grid of possible link connects

(which are fixed) and the load location

• plot([19 19],[5 3],’r’,’Linewidth’,2)

plot([19 18.5],[3 3.5],’r’,’Linewidth’,2)

plot([19 19.5],[3 3.5],’r’,’Linewidth’,2)

plot([0 -1 -1 0],[6 5.7 6.5 6],’k’,’Linewidth’,2)

1

plot([0 -1 -1 0],[5 4.7 5.5 5],’k’,’Linewidth’,2)

plot([0 -1 -1 0],[4 3.7 4.5 4],’k’,’Linewidth’,2)

plot([-1.5 -1],[3.5 3.8],’k’,’Linewidth’,2)

plot([-1.5 -1],[3.8 4.1],’k’,’Linewidth’,2)

plot([-1.5 -1],[4.1 4.4],’k’,’Linewidth’,2)

plot([-1.5 -1],[4.5 4.8],’k’,’Linewidth’,2)

plot([-1.5 -1],[4.8 5.1],’k’,’Linewidth’,2)

plot([-1.5 -1],[5.1 5.4],’k’,’Linewidth’,2)

plot([-1.5 -1],[5.5 5.8],’k’,’Linewidth’,2)

plot([-1.5 -1],[5.8 6.1],’k’,’Linewidth’,2)

plot([-1.5 -1],[6.1 6.4],’k’,’Linewidth’,2)

axis equal

• Comment your code.

• A quality report is required for this project. Discuss the problem, formulation, solution,

etc (see my Sample Report)

• You will be solving and comparing the two problem described in class where you are

minimizing the `1-norm of the internal forces of the bars. The `1-norm problem is

solved both weighted and unweighted by the lengths of the bars.

• You may only use the linprog()function in Matlab for this project

• When describing the formulation of the matrices in your report, it is not going to be

possible to show every element of the matrix as I have done in my Sample Report. The

following is an example of how to take a possibly very large matrix and describe the

necessary pattern for someone to be able to recreate the matrix:

We define the vector a (of length mN) as

a =

a1 a2 · · · am am+1 · · · a2m · · · amN T

(1)

and the matrix A (of size (m + 1)N × m) is built from a as

A =

A0

A2

.

.

.

AN−1

(2)

where

Ak =

a1+m∗k a2+m∗k · · · am+m∗k

−a1+m∗k 0 · · · 0

0 −a2+m∗k

.

.

.

.

.

.

0 · · · 0 −am+m∗k

(3)

2