Linear Programming Structural Optimization, Lecture Notes - Mathematics, Study notes of Linear Programming

Linear Programming Structural Optimization, Lecture Notes - Mathematics - Prof. J Vanderbei.pdf, Prof. J Vanderbei, Mathematics, Linear Programming, Structural Optimization, Minimum Weight Structural Design, Redundant Equations, Skew Symmetric Matrices, Conservation Laws, Torque Balance, Trusses, AMPL Model

Typology: Study notes

2010/2011

Uploaded on 11/02/2011

aeinstein
aeinstein 🇺🇸

4.6

(22)

259 documents

1 / 14

Toggle sidebar

This page cannot be seen from the preview

Don't miss anything!

bg1
Linear Programming: Chapter 15
Structural Optimization
Robert J. Vanderbei
November 4, 2007
Operations Research and Financial Engineering
Princeton University
Princeton, NJ 08544
http://www.princeton.edu/rvdb
pf3
pf4
pf5
pf8
pf9
pfa
pfd
pfe

Partial preview of the text

Download Linear Programming Structural Optimization, Lecture Notes - Mathematics and more Study notes Linear Programming in PDF only on Docsity!

Linear Programming: Chapter 15

Structural Optimization

Robert J. Vanderbei

November 4, 2007

Operations Research and Financial Engineering Princeton University Princeton, NJ 08544 http://www.princeton.edu/∼rvdb

Structural Optimization

Forces: xij = tension in member {i, j}.

  • xij = xji.
  • Compression = -Tension.

Force Balance: Look at joint 2:

x 12

[

]

  • x 23

[

]

  • x 24

[

]

[

b^12 b^22

]

3

1 2

4

5

b 1 b 2

b 5

u 21

u 24 u 23

Notations:

pi = position vector for joint i

uij =

pj − pi ‖pj − pi‖

( Note uji = −uij )

Constraints: ∑

j: {i,j}∈A

uij xij = −bi i = 1,... , m.

Minimum Weight Structural Design

minimize

{i,j}∈A

lij |xij |

subject to

j: {i,j}∈A

uij xij = −bi i = 1, 2 ,... , m.

Not quite an LP. Use a common trick:

xij = x+ ij − x− ij , x+ ij , x− ij ≥ 0 |xij | = x+ ij + x− ij

Reformulated as an LP:

minimize

{i,j}∈A

(lij x+ ij + lij x− ij )

subject to

j: {i,j}∈A

(uij x+ ij − uij x− ij ) = −bi i = 1, 2 ,... , m

x+ ij , x− ij ≥ 0 {i, j} ∈ A.

Redundant Equations

Recall network flows: number of redundant equations = number of connected components.

Row combinations: yiT uij + yjT uji

Sum of “x”-component rows:

[ 1 0

]

[

u(1) ij u(2) ij

]

[

]

[

u(1) ji u(2) ji

]

Sum of “y”-component rows, “z”-component rows, etc. is similar.

Skew Symmetric Matrices

Definition. RT^ = −R

For d = 1: no nonzero ones.

For d = 2: (^) [ 0 − 1 1 0

]

For d = 3: (^) 

Structure is stable if the redundancies just identified represent the only redundan- cies.

Conservation Laws

Suppose a combination of rows of A vanishes. Then the same combination of elements of b must vanish.

Force Balance: (^) ∑

i

b(1) i = 0 and

i

b(2) i = 0

What is meaning of the other redundancies? ∑

i

(Rpi)T^ bi = 0

Answer...

Trusses

Definition.

  • Stable
  • Has md − d(d + 1)/ 2 members (d is dimension).

Anchors

No force balance equation at anchored joints.

Earth provides counterbalancing force.

If enough (d(d + 1)/ 2 ) independent constraints are dropped (due to anchoring), then no force balance or torque balance limitations remain.

AMPL Model

param m default 26; # must be even param n default 39;

set X := {0..n}; set Y := {0..m};

set NODES := X cross Y; # A lattice of Nodes

set ANCHORS within NODES := { x in X, y in Y : x == 0 && y >= floor(m/3) && y <= m-floor(m/3) };

param xload {(x,y) in NODES: (x,y) not in ANCHORS} default 0; param yload {(x,y) in NODES: (x,y) not in ANCHORS} default 0;

param gcd {x in -n..n, y in -n..n} := (if x < 0 then gcd[-x,y] else (if x == 0 then y else (if y < x then gcd[y,x] else (gcd[y mod x, x]) )));

subject to Ybalance {(xi,yi) in NODES: (xi,yi) not in ANCHORS}: sum { (xi,yi,xj,yj) in ARCS } ((yj-yi)/length[xi,yi,xj,yj]) * (comp[xi,yi,xj,yj]-tens[xi,yi,xj,yj])

sum { (xk,yk,xi,yi) in ARCS } ((yi-yk)/length[xk,yk,xi,yi]) * (tens[xk,yk,xi,yi]-comp[xk,yk,xi,yi]) = yload[xi,yi]; ;

let yload[n,m/2] := -1;

solve;

printf: "%d \n", card({(xi,yi,xj,yj) in ARCS: comp[xi,yi,xj,yj]+tens[xi,yi,xj,yj] > 1.0e-4})

structure.out;

printf {(xi,yi,xj,yj) in ARCS: comp[xi,yi,xj,yj] + tens[xi,yi,xj,yj] > 1.0e-4}: "%3d %3d %3d %3d %10.4f \n", xi, yi, xj, yj, tens[xi,yi,xj,yj] - comp[xi,yi,xj,yj]

structure.out;

The Michel Bracket

Constraints: 2, Variables: 31, Time: 193 secs

Click here for parametric self-dual simplex method animation tool. Click here for affine-scaling method animation tool.