THIẾT KẾTỐIƯUTIẾTDIỆN TRONG KẾTCẤUDÀNTHÉPBẰNG PHƯƠNG PHÁPPHẦNTỬHỮUHẠN THÔNG QUAVIỆCGIẢIQUYẾTBÀITOÁNQUIHOẠCHPHITUYẾN ThS . NGUYỄN HỮU THỊNH Công ty Công nghệ mới - COTEC 1. Đặt vấn đề Việc đi tìm phương án thiếtkếtốiưu theo mục tiêu đề ra và thỏa mãn các điều kiện ràng buộc liên quan đến độ bền vững của công trình là cần thiếttrong lĩnh vực xây dựng. Bàitoán thiết kếtốiưu kết cấuthép dạng dàn với hàm mục tiêu là trọng lượng bản thân tòan bộ các thanh dàn. Các biến thiếtkế là các diện tích tiếtdiện các thanh dàn. Các điều kiện ràng buộc cần thỏa mãn bao gồm: ràng buộc về điều kiện bền, ràng buộc về điều kiện ổn định Euler, ràng buộc về điều kiện chuyển vị, ràng buộc về điều kiện kiến trúc, ràng buộc về điều kiện độ mảnh giới hạn và các điều kiện ràng buộc khác trongquá trình thiết lập bàitoántối ưu. 2. Bàitoán quy hoạchphituyếngiảiquyết theo phươngpháp dựa trên chuỗi các chương trình tuyến tính Bàitoán quy hoạchphituyến (Nonlinear Programming - NLP) Phát biểu bài toán: Tìm X = X 1 X 2 ,….,X n ={X * } T = {X 1 * , X 2 * , …, X n * } sao cho: cực tiểu hóa hàm Z = f(X) chịu các ràng buộc: g j (X) 0 j = 1, …, m h j (X) = 0 j = 1, …, k L U i i i X X X với 1 trong các hàm f(X), g j (X), h k (X) là hàm phi tuyến. Nguyên tắc giảiquyếtbài toán: Một cách gần đúng, ta tuyến tính hóa các hàm phituyếnthôngquaviệc khai triển chuỗi Taylor bậc nhất hàm mục tiêu và các hàm ràng buộc chung quang điểm X 0 , trên cơ sở đó, bàitoánquihọachphituyến được phát biểu lại một cách gần đúng: Cực tiểu hoá : f(X) = f(X 0 ) + f(X 0 ) X Chịu các ràng buộc : g j (X) g j (X 0 ) + g j (X 0 ) X h k (X) h k (X 0 ) + h k (X 0 ) X g j (X 0 ) X 0, j = 1, , m (Feasible direction). h k (X 0 ) X 0, k = 1, , l (Feasible direction) U iii L i XXXX δ i = 1, , n (move limits) Trong đó : X = X – X 0 Việcgiảiquyếtbàitoánquihọachphituyến dựa trên chuỗi các chương trình tuyến tính được thực hiện: chọn điểm xuất phát X 0 nằm trong không gian thiết kế, đưa bàitoántốiưu về dạng quihoạchtuyến tính bằng cách tuyến tính hóa quanh điểm X 0 hàm mục tiêu và các hàm ràng buộc phituyếnthôngqua khai triển Taylor bậc nhất, tìm nghiệm tốiưu của bàitoán dạng quihoạchtuyến tính mới được thiết lập, lặp lại quá trình như trên (vòng lặp) trong đó nghiệm tốiưu có được từ vòng lặp kế trước chính là cơ sở để chọn điểm xuất phát cho vòng lặp tiếp theo, việc thực hiện vòng lặp liên tục cho đến khi kếtquả được hội tụ thỏa đáng. 3. Quy hoạchtuyến tính và thuật toán đơn tính Xét quy hoạchtuyến tính ở dạng chuẩn: n j j j 1 min c x n ij j i j 1 a x b , i = 1, …, m x j 0, j = 1, …, n Việc đầu tiên là đưa biến bù vào và đặt tên mục tiêu là z: Min n j j j 1 z c x n i i ij j j 1 w b a x , i = 1,…, m Các hệ phương trình ở trên mà ta sẽ lập ở mỗi bước lặp gọi là các từ vựng (dictionary). Trừ z ra, các biến nằm ở vế trái các phương trình (tức là biến “phụ thuộc”) ở mỗi bước lặp gọi là biến cơ sở ở bước đó (basic variable). Các biến ở vế phải, tức là biến “độc lập”, được gọi là biến không cơ sở (nonbasic variable) . Nghiệm nhận được khi cho các biến không cơ sở giá trị 0 được gọi là nghiệm cơ sở (basic solution). Vậy mỗi từ vựng xác định một nghiệm cơ sở tương ứng. Ở đây khi tiến hành thuật toán đơn hình, biến ban đầu và biến bù được xử lý như nhau, không phân biệt. Do đó ta ký hiệu lại thành một bộ biến x: (x 1 , …, x n , W 1 , …, W m ) = (x 1 , …, x n , x n+1 , …, x n+m ). Khi đó bàitoán trở thành: min n j j j 1 z c x n n i i ij j j 1 x b a x , i = 1, …, m Các hệ phương trình trên được gọi là từ vựng xuất phát. Nội dung của thuật toán đơn hình là chuyển từ một từ vựng sang một từ vựng khác với giá trị mục tiêu tốt hơn. Mỗi từ vựng có m biến cơ sở và n biến không cơ sở. Ta ký hiệu B là tập các chỉ số tương ứng với các biến cơ sở và N là tập các chỉ số tương ứng với các biến không cơ sở khi đó: N = {1, …, n} và B = {n + 1, …, n + m}, nhưng chúng sẽ thay đổi sau mỗi bước. Ở mỗi bước, từ vựng đều có dạng: n j j j N z z c x n i ij i j j N x b a x , i B. Ở đây dấu gạch trên ký tự để chỉ rằng đại lượng này thay đổi qua các bước. Ở mỗi bước lặp, đúng một biến từ không cơ sở trở thành biến cơ sở, được gọi là biến vào (entering variable), và đúng một biến cơ sở trở thành biến không cơ sở, gọi là biến ra (leaving variable). Biến vào được chọn trong các biến có hệ số mục tiêu (tức hệ số trong hàm mục tiêu) âm để làm giảm hàm mục tiêu. Nếu không có hệ số mục tiêu âm thì nghiệm nhận được ở bước lặp đó là tối ưu. Nếu có nhiều hệ số mục tiêu âm ta được phép lựa chọn. Bây giờ ta chọn một cách tự nhiên (quy tắc thường dùng) là chọn biến có hệ số (âm) nhỏ nhất để hi vọng làm giảm hàm mục tiêu nhiều nhất. Khi đó ta vẫn còn độ tự do khi có nhiều hệ số bằng nhau. Biến ra được chọn để đảm bảo tính không âm của các biến. Giả sử biến vào đã chọn là x k , tức là giá trị của nó trở thành dương. Khi đó các biến đang là cơ sở sẽ bị thay đổi và bằng: X i = i ik k b a x ,i B x k được phép lớn đến mức mọi x 1 0, i B. Tức là: ik i k 1 a x b , i B, hoặc tương đương: 1 ik k i B i a x max b Ở đây ta quy ước 0 0 0 và ta sẽ xét sau trường hợp có số i b 0 và trường hợp không có tỉ số ik i a b nào dương. Vậy quy tắc chọn biến ra là chọn biến có chỉ số l B mà l lk b a = ik i B i a max b . Sau khi chọn biến vào và biến ra, việc chuyển từ vựng sang từ vựng mới là nhờ các phép toán hàng. Toàn bộ việc làm này gọi là phép xoay (pivot). Vì có thể có nhiều biến vào và biến ra có thể lấy đều đảm bảo giảm hàm mục tiêu và các biến vẫn không âm, để tránh sự không xác định đó ta sử dụng quy tắc xoay (pivot rule). Thực tế, có quy hoạchtuyến tính mà hàm mục tiêu có thể dẫn đến - trong miền chấp nhận được. Trường hợp này sẽ không có nghiệm tối ưu. Ở đây, ta xét trường hợp không có tỉ số ik i a b , i B, nào dương. Tỉ số này gặp phải khi tìm biến ra sau khi đã xác định biến x k là biến vào, tức là tăng từ 0 lên một số dương. Khi đó các biến cơ sở là: i ik i k x b a x ,i B i b và a ik là cùng dấu (vì ik i a 0 b ) và là không âm. Do đó mọi biến cơ sở x i không thể từ không âm trở thành âm. Vậy biến vào có thể lấy giá trị lớn tùy ý để hàm mục tiêu tiến tới - . Lúc này ta nói là hàm mục tiêu không giới hạn nội, hoặc bàitoán không giới hạn nội. 4. Thiết lập bàitoánthiếtkếtốiưu cho kếtcấudànthéptiếtdiện ống Các thông số hình học kếtcấu nemax: số lượng các thanh trongkếtcấudànthéptiếtdiện ống; njoint : số lượng các nút trongkếtcấudàn thép; R i , r i (i=1: nemax) lần lượt là bán kính trong và bán kính ngoài tiếtdiện của thanh thứ i; X i : diện tích tiếtdiện ngang của thanh dàn thứ i; Cường độ tính toán chịu kéo, nén của thép: R, mô đun đàn hồi: E, mô đun chịu cắt của vật liệu:G. Chọn hình dáng tiếtdiện ngang thanh dàn: Chọn hình dáng tiếtdiện ngang thanh dàn dạng tiếtdiện của thép ống. Để cho việctự động hóa thiếtkếtốiưu được dễ dàng hơn, ta gắn: max)ne:i(Rr ii 1γ Với là hằng số cho trước. Lúc này ta có: - Diện tích tiếtdiện thanh thứ i : )( X R )(R)rR(X i i iiii 2 2222 γ1π γ1ππ - Mô men quán tính tiếtdiện thanh thứ i: )(R )rR(III i iiiyixi 44 44 γ1π 4 1 π 4 1 - Bán kính quán tính tiếtdiện thanh thứ i: 2 22 44 γ1 2 1 γ1π γ1π i i i i i iyixi R )(R )(R X I iii Xác định các biến thiếtkế và hàm mục tiêu: Xác định các biến thiết kế: Biến thiếtkếtốiưu là các giá trị tương ứng của các diện tích tiếtdiện thanh dàn, max)ne:i}(X{}X{ i 1 . Xác định hàm mục tiêu: Ở đây, ta chọn hàm mục tiêu là giá trị nhỏ nhất của trọng lượng kếtcấu vì là không đổi cho trước, nên hàm mục tiêu thu gọn sẽ là: maxne i ii )XLmin(ZMin 1 Nhận xét: hàm mục tiêu thu gọn maxne i ii )XLmin(ZMin 1 là hàm tuyến tính theo các biến thiếtkế X i . Các ràng buộc cho bàitoánthiếtkếtối ưu: Ràng buộc về ứng suất được viết tổng quát dưới dạng đại số: Để mang tính tổng quát về mặt đại số ta có thể viết ràng buộc ứng suất dưới dạng: maxne:i cp_valueR][})X({})X({g cp_valueR][})X({})X({g ilviiii ilviiii 1 γσσ γσσ 22 11 Với })X({ ii σ là ứng suất của thanh thứ i phụ thuộc vào các biến thiếtkế X i . Ta thấy })X({g ii 1 , })X({g ii 2 là các hàm phituyến theo các biến thiếtkế X i . Ràng buộc về ổn định theo công thức Euler: - Ứng suất trong thanh dàn thứ i : })X({ ii σ - Ứng suất tớihạn theo công thức Euler: 2 0 22 2 0 2 ππ σ i i ii i i th i L iE XL EI })X({ - Điều kiện kiện ổn định Euler áp dụng cho thanh chịu nén, về mặt đại số ta có thể viết: max)ne:i( ,cp_value X )(L )(E })X({})X({g i i oi iiii 1 0 γ14 γ1π σ 3 22 2 3 Nhận xét: })X({g ii 3 là hàm phituyến theo các biến thiếtkế X i , vì })X({ ii σ hàm phituyến theo các biến thiếtkế X i . Ràng buộc về điều kiện để áp dụng công thức Euler: - Gọi i λ là độ mảnh của thanh thứ i. - Gọi 0 λ là độ mảnh tới hạn. - Công thức Euler chỉ đúng với thanh có vật liệu làm việctronggiai đoạn đàn hồi, tức là ứng suất trong thanh phải không lớn hơn giới hạn tỷ lệ: maxne:i ,cp_value )(E )(RL X})X({g R E i L R E })X({ i oi iii i oi i tl i ii 1 γ1π γ14 λ π λ σ λ π σ 4 2 22 4 0 2 2 Ràng buộc về điều kiện chuyển vị: Các thành phần chuyển vị tại nút j là : nojnt:j ,})X({u}),X({u}),X({u})X({u i Z ji Y ji X jij 1 - Gọi Z cp Y cp X cpcp u,u,uu là giới hạn cho phép của các thành phần chuyển vị theo các phương x, y, z của trục tọa độ kết cấu. Điều kiện chuyển vị : nojnt:j cp_valueu})X({u})X({g cp_valueu})X({ug cp_valueu})X({u})X({g cp_valueu})X({u})X({g cp_valueu})X({u})X({g cp_valueu})X({u})X({g i z cpi Z jij i z cpi Z jj i y cpi Y jij i y cpi Y jij i X cpi X jij i X cpi X jij 1 1010 99 88 77 66 55 Nhận xét: })X({g ii 5 , })X({g ii 6 , })X({g ii 7 , })X({g ii 8 , })X({g ii 9 , })X({g ii 10 là hàm phituyến theo các biến thiếtkế X i . Ràng buộc về độ mảnh giới hạntrong các thanh dàn: - Gọi max là độ mảnh giới hạntrong các thanh dàn. - Gọi })X({ ii λ là độ mảnh của thanh thứ i. Điều kiện: .maxne:i ,cp_value )( )(L X})X({g )( X)( L i L })X({ i max oi iii max i oi i oi maxii 1 γ1λ γ1π4 λ γ1π γ1 2 1 λλ 11 22 22 11 2 2 Điều kiện giới hạn dịch chuyển (movelimit) trongphươngphápgiảiquyếtbàitoánquihoạchphituyến dựa trên chuỗi các chương trình tuyến tính: Điều kiện về movelimit chính là điều kiện giới hạn khoảng dịch chuyển của giá trị kếtquả biến thiếtkế với giá trị biến thiếtkế ban đầu trong một vòng lặp i nào đó : 12 0 U 12 i i i i i i 13 0 L 13 i i i i i i g ({X}) X X X value_cp (i 1:nemax) g ({X}) X X X value_cp Xác định các hệ số }c{},b{},a{ ijji của chuỗi các hàm mục tiêu, ràng buộc từviệctuyến tính hóa các hàm ràng buộc quanh điểm }X{X o i 0 theo khai triển Taylor : - Khai triển Taylor: )XX()X(')g(}){X (g}){X (g iii k ji k ji k j 000 - Ở đây, ta có tổng số biến thiếtkế là max ne , tổng số ràng buộc bất đẳng thức nojntne 6max7 , nên tổng số biến thêm vào là nojntne 6max7 , do đó tổng số biến sau khi đưa về chuỗi các chương trình tuyến tính: nojntne 6max8 - Các hệ số }c{},b{},a{ ijji được tính theo các công thức sau: FunctionObjectZ :k,nojntmaxne:j nojntmaxne:i )X(Zc cp_valueX)X('g)X(gb )X('ga i ' i nojntmaxne i k jii k ji k jj i k jji 131671 681 0 67 1 000 0 5. Áp dụng số chương trình TĐH thiếtkếtốiưudànthép Trên cơ sở lý thuyết đã đề cập ở trên với việc sử dụng ngôn ngữ lập trình Matlab và Hình 1 . Sơ đ ồ d àn không gian 27 thanh phương phápphầntửhữuhạn để phân tích kếtcấu tác giả đã lập chương trình tự động hóa thiết kếtốiưu kết cấudànthép “MAINPROGRAMME.M”, sau đây là ví dụ áp dụng số : Ví dụ: Dàn không gian 27 thanh (hình 1). Dữ liệu bài toán: - Bàitoándàn không gian có nemax = 27 thanh, nojnt =12 nút chịu tải trọng tập trung P1=3000kg, P2=5000kg. - Tổng số biến thiếtkế : 27 - Tổng số ràng buộc : 7nemax + 6nojnt = 261. - Cường độ tính toán chịu kéo, nén của thép: 2 2100 cm/daNR . - Mô đun đàn hồi : 26 102 cm/daNxE - Mô đun chịu cắt của vật liệu: 26 1021 cm/daNx.G . Kếtquảthiếtkếtốiưutừ chương trình trên hình 2. Kếtquảtốiưu Thứ tựPhầntửDiện tích tiếtdiện (cm 2 ) Bán kính ngòai (cm) Bán kính trong (cm) Giá trị hàm mục tiêu (Object_value) Tỷ số bán kính (rad_scale) 1 4.272 2.676 2.408 0.9 2 4.272 2.676 2.408 0.9 3 9.005 3.885 3.497 0.9 4 8.544 3.784 3.406 0.9 5 12.815 4.635 4.172 0.9 6 8.544 3.784 3.406 0.9 7 4.272 2.676 2.408 0.9 8 4.272 2.676 2.408 0.9 9 6.244 3.235 2.912 0.9 10 8.544 3.784 3.406 7.4034X10 4 0.9 Hình 2. Kếtquảthiếtkếtốiưu 11 12.815 4.635 4.172 0.9 12 8.544 3.784 3.406 0.9 13 4.272 2.676 2.408 0.9 14 4.272 2.676 2.408 0.9 15 4.272 2.676 2.408 0.9 16 8.544 3.784 3.406 0.9 17 12.815 4.635 4.172 0.9 18 8.544 3.784 3.406 0.9 19 4.272 2.676 2.408 0.9 20 8.544 3.784 3.406 0.9 21 4.937 2.877 2.589 0.9 22 4.272 2.676 2.408 0.9 23 8.544 3.784 3.406 0.9 24 4.272 2.676 2.408 0.9 25 4.272 2.676 2.408 0.9 26 8.544 3.784 3.406 0.9 27 4.272 2.676 2.408 0.9 Kếtquả nội lực, chuyển vị, phản lực gối tựa ứng với kếtquả của bàitóantốiưu : DISPLACEMENTS Joint X Y Z XX YY ZZ 1 0.000e+000 0.000e+000 0.000e+000 5.241e-004 -6.290e-004 -1.526e-003 2 0.000e+000 0.000e+000 0.000e+000 5.425e-004 -1.032e-003 -3.344e-004 3 0.000e+000 0.000e+000 0.000e+000 1.492e-003 -4.452e-004 -1.349e-003 4 6.168e-001 1.756e-001 1.756e-001 7.163e-004 -1.373e-003 -2.010e-003 5 1.756e-001 -1.219e-015 1.756e-001 6.386e-004 -1.443e-003 -1.247e-003 6 4.648e-001 -2.165e-001 4.648e-001 1.818e-003 -8.280e-004 -1.918e-003 7 1.449e+000 1.756e-001 3.511e-001 6.031e-004 -2.899e-003 -2.191e-003 8 5.677e-001 -1.667e-015 3.511e-001 6.348e-004 -2.718e-003 -1.860e-003 9 1.449e+000 -4.087e-001 1.233e+000 1.504e-003 -2.907e-003 -2.574e-003 10 2.034e+000 1.756e-001 5.267e-001 5.676e-004 -2.936e-003 -1.955e-003 11 1.152e+000 -1.655e-015 5.267e-001 5.561e-004 -3.007e-003 -1.953e-003 12 2.034e+000 -4.087e-001 1.408e+000 3.285e-004 -2.961e-003 -1.791e-003 FORCES Member x y z xx yy zz 1 1 -5.000e+003 1.704e-017 2.071e-018 6.612e-016 -2.610e-017 3.272e-015 4 5.000e+003 -1.704e-017 -2.071e-018 -6.612e-016 -5.952e-016 1.839e-015 2 2 3.473e-011 -1.215e-017 3.129e-019 3.651e-016 9.533e-017 -4.728e-016 5 -3.473e-011 1.215e-017 -3.129e-019 -3.651e-016 -1.892e-016 -3.173e-015 26 11 0.000e+000 -1.413e-018 1.339e-018 1.732e-016 -3.322e-016 -2.515e-016 12 0.000e+000 1.413e-018 -1.339e-018 -1.732e-016 -2.360e-016 -3.479e-016 27 10 0.000e+000 4.410e-018 5.871e-019 2.123e-016 -5.154e-017 4.182e-016 12 0.000e+000 -4.410e-018 -5.871e-019 -2.123e-016 -1.246e-016 9.049e-016 REACTIONS Joint X Y Z XX YY ZZ 1 -5.000e+003 -1.000e+004 9.396e-018 0.000e+000 4.930e-031 -1.578e-030 2 1.883e-017 5.474e-011 -2.001e-011 1.972e-031 -5.916e-031 -7.889e-031 3 1.819e-012 1.300e+004 -1.819e-012 -7.889e-031 3.944e-031 -2.761e-030 Nhận xét: Kếtquảtốiưu của bàitoán đạt được ứng với các ràng buộc thứ 63, 75, 109, 110, 112, 113, 114, 115, 116, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 130, 131, 131, 132, 133, 134, 135, 199, 201 đạt active. Điều này có nghĩa là: Điều kiện ổn định Euler phầntử số 9, 21 (tương ứng với số thứ tự ràng buộc :63, 75) đạt dấu “=” Điều kiện độ mảnh giới hạn của phầntử số 1,2,4,5, 6, 7, 8, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 22, 23, 24, 25, 26, 27 (tương ứng với số thứ tự ràng buộc 109, 110, 112, 113, 114, 115, 116, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 130, 131, 131, 132, 133, 134, 135) đạt dấu “=”. Điều kiện chuyển vị theo phương X tại các nút số 10, 12 (tương ứng với số thứ tự ràng buộc: 199, 201) đạt dấu “=”. 6. Kết luận Với việc sử dụng chương trình tự động hóa thiếtkếtốiưu “MAINPROGRAMME.M” được xây dựng trên ngôn ngữ lập trình Matlab giúp cho ta tìm được kích thước tiếtdiện hình ống ứng với giá trị hàm mục tiêu (trọng lượng dàn) là nhỏ nhất một cách gần đúng. TÀI LIỆU THAM KHẢO 1. CHU QUỐC THẮNG. Phươngpháp PTHH. NXB Khoa học và kỹ thuật, Hà Nội, 1997. 2. PHAN QUỐC KHÁNH, TRẦN HUỆ NƯƠNG.Quy hoạchtuyến tính. NXB Giáo dục, Hà Nội, 2000. 3. HOWARD B.WILSON, LOUIS H.TURCOTTE. Advanced mathematics and mechanics application using Mathlab second. CRC press LLC, 1997. 4. DAN M.FRANGOPOL, FRANKLIN Y. CHENG. Advances in structural optimization. ASCE American Society of Civil Engineers, 1996. 5. GARRET N. VANDERPLAATS. Nummerical optimization technique for engineering design. McGraw-Hill, 1984. 6. A.J.MORRIS. Foundation of structural optimization: A unifield approach. John Wiley & Sons, 1982. 7. EDWARD J.HAUG;JASBIR S.ARORA - “Applied optimal design (Structural systems)” - John Wiley & Sons, 1979. 8. URI KIRSCH. Optimum structural design (Concepts, Methods and Applications). McGraw-Hill, 1981. 9. “MATLAB (High - Performance Numeric Computation and Visualization Software)” - The Math Works INC. . THIẾT KẾ TỐI ƯU TIẾT DIỆN TRONG KẾT CẤU DÀN THÉP BẰNG PHƯƠNG PHÁP PHẦN TỬ HỮU HẠN THÔNG QUA VIỆC GIẢI QUYẾT BÀI TOÁN QUI HOẠCH PHI TUYẾN ThS . NGUYỄN HỮU THỊNH Công. giới hạn nội, hoặc bài toán không giới hạn nội. 4. Thiết lập bài toán thiết kế tối ưu cho kết cấu dàn thép tiết diện ống Các thông số hình học kết cấu nemax: số lượng các thanh trong kết cấu. thanh phương pháp phần tử hữu hạn để phân tích kết cấu tác giả đã lập chương trình tự động hóa thiết kế tối ưu kết cấu dàn thép “MAINPROGRAMME.M”, sau đây là ví dụ áp dụng số : Ví dụ: Dàn không