Luận án Tiến sĩ Tối ưu kết cấu giàn thép sử dụng thuật toán tiến hóa kết hợp công nghệ học máy

199 1 0
Luận án Tiến sĩ Tối ưu kết cấu giàn thép sử dụng thuật toán tiến hóa kết hợp công nghệ học máy

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

Thông tin tài liệu

BỘ GIÁO DỤC VÀ ĐÀO TẠO TRƯỜNG ĐẠI HỌC XÂY DỰNG HÀ NỘI Nguyễn Trần Hiếu TỐI ƯU KẾT CẤU GIÀN THÉP SỬ DỤNG THUẬT TỐN TIẾN HĨA KẾT HỢP CÔNG NGHỆ HỌC MÁY Optimization of steel truss structures using evolutionary algorithm and machine learning Ngành: Kỹ thuật xây dựng Mã số: 9580201 LUẬN ÁN TIẾN SĨ Hà Nội, năm 2023 BỘ GIÁO DỤC VÀ ĐÀO TẠO TRƯỜNG ĐẠI HỌC XÂY DỰNG HÀ NỘI Nguyễn Trần Hiếu TỐI ƯU KẾT CẤU GIÀN THÉP SỬ DỤNG THUẬT TỐN TIẾN HĨA KẾT HỢP CÔNG NGHỆ HỌC MÁY Optimization of steel truss structures using evolutionary algorithm and machine learning Ngành: Kỹ thuật xây dựng Mã số: 9580201 NGƯỜI HƯỚNG DẪN PGS.TS VŨ ANH TUẤN Hà Nội, năm 2023 i LỜI CAM ĐOAN Tôi xin cam đoan nội dung Luận án Tiến sĩ “Tối ưu kết cấu giàn thép sử dụng thuật tốn tiến hóa kết hợp cơng nghệ học máy” kết cơng trình nghiên cứu khoa học riêng tơi Các số liệu kết trình bày Luận án trung thực, khách quan chưa cơng bố cơng trình khác ngồi danh sách cơng trình khoa học nghiên cứu sinh liên quan đến Luận án Hà Nội, ngày 05/05/2023 Nguyễn Trần Hiếu ii LỜI CẢM ƠN Đầu tiên, xin gửi lời cảm ơn tới Ban giám hiệu Trường Đại học Xây dựng Hà Nội, Lãnh đạo Phòng Quản lý đào tạo, Lãnh đạo Phòng Tổ chức cán bộ, Ban chủ nhiệm Khoa Xây dựng Dân dụng Công nghiệp tạo điều kiện, hỗ trợ giúp đỡ tơi q trình thực Luận án Tơi xin bày tỏ biết ơn sâu sắc, kính trọng tới người hướng dẫn khoa học tôi, PGS TS Vũ Anh Tuấn Trong suốt trình học tập nghiên cứu, Thầy tận tình hướng dẫn, động viên, giúp đỡ, tạo điều kiện thuận lợi để tơi hồn thành Luận án Tơi xin gửi lời cảm ơn chân thành tới thầy cô Bộ mơn Cơng trình Thép - Gỗ, Trường Đại học Xây dựng Hà Nội - nơi học tập, nghiên cứu, công tác năm vừa qua Tôi xin ghi nhận giúp đỡ đóng góp ý kiến nhà khoa học Trường giúp tơi bổ sung, hồn thiện Luận án Xin trân trọng cảm ơn hỗ trợ tài quý báu thời gian thực Luận án Quỹ Đổi Sáng tạo Vingroup (VINIF) thuộc Viện Nghiên cứu Dữ liệu lớn, Tập đồn Vingroup Cuối cùng, tơi xin bày tỏ lòng biết ơn tới Cha Mẹ, người sinh thành, nuôi dưỡng, giáo dục, ủng hộ đường lựa chọn Xin cảm ơn Vợ bên cạnh chia sẻ, động viên, tạo động lực để sớm hoàn thành Luận án Xin tri ân người thân, bạn bè, đồng nghiệp quan tâm, giúp đỡ thời gian qua Nguyễn Trần Hiếu iii MỤC LỤC LỜI CAM ĐOAN i LỜI CẢM ƠN .ii MỤC LỤC iii Danh mục ký hiệu, chữ viết tắt viii Danh mục bảng xv Danh mục hình vẽ xvii MỞ ĐẦU 1 Lý chọn đề tài Mục đích mục tiêu nghiên cứu Đối tượng phạm vi nghiên cứu Phương pháp nghiên cứu Cơ sở khoa học đề tài Đóng góp luận án Ý nghĩa khoa học thực tiễn Những vấn đề tồn Cấu trúc nội dung luận án Chương Tổng quan ứng dụng công nghệ học máy thiết kế tối ưu kết cấu 1.1 Tổng quan thiết kế tối ưu kết cấu 1.1.1 Giới thiệu chung toán thiết kế tối ưu kết cấu 1.1.2 Lịch sử phát triển kỹ thuật tối ưu kết cấu 1.1.3 Phân loại toán thiết kế tối ưu kết cấu 1.1.4 Phân loại thuật toán tối ưu 12 1.1.5 So sánh hiệu thuật toán meta-heuristic tối ưu kết cấu 18 iv 1.2 Tổng quan ứng dụng Trí tuệ Nhân tạo kết cấu cơng trình 18 1.2.1 Giới thiệu chung 18 1.2.2 Một số lĩnh vực nghiên cứu Trí tuệ nhân tạo 19 1.2.3 Ứng dụng Trí tuệ Nhân tạo lĩnh vực kết cấu cơng trình 20 1.3 Tình hình nghiên cứu ứng dụng công nghệ học máy thiết kế tối ưu kết cấu giới 23 1.3.1 Phương pháp khảo sát 23 1.3.2 Thu thập liệu 23 1.3.3 Phân tích liệu 24 1.3.4 Các phương pháp sử dụng mơ hình Học máy trình tối ưu 28 1.4 Tình hình nghiên cứu ứng dụng công nghệ học máy thiết kế tối ưu kết cấu Việt Nam 29 1.4.1 Nghiên cứu tối ưu kết cấu Việt Nam 29 1.4.2 Nghiên cứu ứng dụng học máy vào tối ưu kết cấu Việt Nam 30 1.5 Hướng nghiên cứu Luận án 32 1.6 Giới hạn toán tối ưu nghiên cứu Luận án 33 1.7 Tóm tắt Chương 34 Chương Xây dựng quy trình đánh giá an tồn cho kết cấu giàn mơ hình học máy 35 2.1 Đặt vấn đề 35 2.2 Phát triển chương trình phân tích kết cấu giàn pyTruss theo phương pháp độ cứng trực tiếp 36 2.2.1 Giới thiệu 36 2.2.2 Phương pháp độ cứng trực tiếp cho kết cấu giàn phẳng 37 2.2.3 Phương pháp độ cứng trực tiếp cho kết cấu giàn không gian 40 2.2.4 Sơ đồ khối chương trình pyTruss 42 2.2.5 Đánh giá độ xác chương trình pyTruss 43 v 2.3 Công nghệ Học máy 46 2.3.1 Giới thiệu chung 46 2.3.2 Phân nhóm Học máy dựa phương thức học 47 2.3.3 Một số mơ hình phân loại phổ biến 49 2.4 Quy trình đánh giá an tồn cho kết cấu giàn mơ hình Học máy 56 2.4.1 Mục tiêu 56 2.4.2 Quy trình xây dựng mơ hình Học máy đánh giá an toàn cho kết cấu giàn 56 2.4.3 Kỹ thuật lấy mẫu Siêu khối lập phương La-tinh 59 2.5 So sánh hiệu mơ hình phân loại tốn đánh giá an toàn cho kết cấu giàn 60 2.5.1 Mơ tả tốn kết cấu sử dụng nghiên cứu 61 2.5.2 Khởi tạo liệu 65 2.5.3 Kết 66 2.5.4 Nhận xét 67 2.6 Khảo sát ảnh hưởng siêu tham số tới chất lượng mơ hình 68 2.6.1 Ảnh hưởng số lượng mẫu liệu huấn luyên 68 2.6.2 Ảnh hưởng số lượng phân loại yếu 69 2.7 Tóm tắt Chương 70 Chương Đề xuất phương pháp giảm số lần phân tích kết cấu q trình tối ưu mơ hình học máy 71 3.1 Đặt vấn đề 71 3.2 Tối ưu tiết diện giàn thuật toán DE 71 3.2.1 Bài toán xác định tiết diện tối ưu nhằm cực tiểu hóa trọng lượng giàn 71 3.2.2 Thuật toán DE 72 3.2.3 Kỹ thuật xử lý điều kiện ràng buộc 75 3.2.4 Ví dụ áp dụng thuật toán DE tối ưu tiết diện giàn 76 vi 3.3 Phương pháp CaDE 81 3.3.1 Ý tưởng 81 3.3.2 Sơ đồ khối 82 3.3.3 Ví dụ minh họa 85 3.4 Đánh giá hiệu phương pháp đề xuất CaDE 88 3.4.1 Mơ tả tốn tối ưu kết cấu giàn 88 3.4.2 Khảo sát ảnh hưởng tham số 98 3.4.3 Các thiết lập thử nghiệm 100 3.4.4 So sánh phương pháp CaDE thuật toán gốc DE 102 3.4.5 So sánh phương pháp CaDE với thuật tốn meta-heuristic khác 108 3.5 Tóm tắt Chương 110 Chương Tối ưu trọng lượng kết cấu giàn mái 111 4.1 Giới thiệu chung 111 4.2 Thiết kế kết cấu giàn mái thép 112 4.2.1 Cấu tạo kết cấu giàn mái 112 4.2.2 Một số vấn đề thiết kế giàn thép theo tiêu chuẩn Việt Nam 113 4.3 Đề xuất quy trình thiết kế tối ưu giàn mái thép 116 4.4 Tối ưu trọng lượng giàn mái thép dạng phẳng 118 4.4.1 Tối ưu giàn phẳng nhịp 24 m 118 4.4.2 Khảo sát tham số 123 4.4.3 Một số khuyến nghị thiết kế kết cấu giàn phẳng 128 4.5 Tối ưu trọng lượng giàn lưới không gian ba lớp 128 4.5.1 Tối ưu kết cấu giàn lưới khơng gian kích thước 30×30m 128 4.5.2 Khảo sát tham số 133 4.5.3 Một số khuyến nghị thiết kế kết cấu giàn lưới khơng gian 142 4.6 Tóm tắt Chương 142 vii KẾT LUẬN 144 Những đóng góp khoa học luận án 144 Các kết luận 144 Kiến nghị hướng nghiên cứu 145 DANH MỤC CƠNG TRÌNH KHOA HỌC CỦA TÁC GIẢ 147 TÀI LIỆU THAM KHẢO 149 Tài liệu Tiếng Việt 149 Tài liệu Tiếng Anh 150 PHỤ LỤC PL1 A MÃ THỰC THI CHƯƠNG TRÌNH pyTruss PL1 A.1 Mô-đun pyTruss2D PL1 A.2 Mô-đun pyTruss3D PL3 B MÃ THỰC THI CÁC THUẬT TOÁN TỐI ƯU BẰNG NGÔN NGỮ PYTHON PL5 B.1 Mã thực thi thuật toán DE PL5 B.2 Mã thực thi phương pháp CaDE PL6 C DỮ LIỆU SỬ DỤNG TRONG CHƯƠNG VÀ CHƯƠNG PL8 viii Danh mục ký hiệu, chữ viết tắt Danh mục chữ viết tắt Chữ viết tắt Tiếng Anh Tiếng Việt ABC Artificial Bee Colony Bầy ong ACO Ant Colony Optimization Tối ưu đàn kiến AdaBoost Adaptive Boosting Tăng cường thích ứng aeDE Adaptive elitist Differential Evolution Tiến hóa vi phân thích ứng tinh hoa ADEA Adaptive Differential Evolution Algorithm Tiến hóa vi phân thích ứng AI Artificial Intellgence Trí thông minh nhân tạo AISC American Institute of Steel Viện cơng trình thép Hoa Kỳ Construction ANFIS Adaptive Neuro Fuzzy Inference System Hệ thống suy luận mờ thần kinh thích ứng ASD Allowable Stress Design Thiết kế theo ứng suất cho phép AUC Area Under the Curve Diện tích phía đường cong BB-BC Big bang big crunch Vụ nổ lớn tiếng nổ lớn BBO Biogeography-based optimization Tối ưu hóa dựa địa lý sinh học BI Bat-inspired search Tìm kiếm đàn dơi CaDE Classification-assisted Thuật tốn DE có trợ giúp Differential Evolution mơ hình phân loại CBO Colliding Bodies Optimization Tối ưu dựa tượng vật thể va chạm CoDE Composite Differential Evolution Tiến hóa vi phân liên hợp PL1 PHỤ LỤC A MÃ THỰC THI CHƯƠNG TRÌNH pyTruss A.1 Mơ-đun pyTruss2D import numpy as np #material properties E = 70000 #N/mm2 A = 300 #mm2 #node coordinates nodeCords = np.array([[0,0], [0,3000], [3000,0], [3000,3000], [6000,0], [6000,3000]]) #member connectivities elemNodes = np.array([[0,1], [0,2], [1,2], [1,3], [0,3], [2,3], [2,5], [3,4], [3,5], [2,4], [4,5]]) numElem = elemNodes.shape[0] numNodes = nodeCords.shape[0] tdof = 2*numNodes xx = nodeCords[:,0] yy = nodeCords[:,1] #force F = np.zeros((tdof,1)) F[3] = -50000 #N F[7] = -100000 #N F[11] = -50000 #N #boundary conditions presDof=np.array([0,1,9]) actDof=np.setdiff1d(np.arange(tdof),presDof) #global stiffness matrix stiffness=np.zeros((tdof,tdof)) L = np.zeros((numElem,)) #lengths of members c = np.zeros((numElem,)) s = np.zeros((numElem,)) for e in range(numElem): indice = elemNodes[e,:] elemDof = np.array([indice[0]*2,indice[0]*2+1,indice[1]*2,indice[1]*2+1]) xa = xx[indice[1]]-xx[indice[0]] ya = yy[indice[1]]-yy[indice[0]] L[e] = np.sqrt(xa*xa+ya*ya) c[e] = xa/L[e] s[e] = ya/L[e] EA = E*A k1=(EA/L[e])* np.array([[ c[e]*c[e], c[e]*s[e],-c[e]*c[e],-c[e]*s[e]], [ c[e]*s[e], s[e]*s[e],-c[e]*s[e],-s[e]*s[e]], [-c[e]*c[e],-c[e]*s[e], c[e]*c[e], c[e]*s[e]], [-c[e]*s[e],-s[e]*s[e], c[e]*s[e], s[e]*s[e]]]) stiffness[np.ix_(elemDof,elemDof)]+=k1 PL2 #displacements U=np.zeros((tdof,1)) disp=np.linalg.solve(stiffness[np.ix_(actDof,actDof)],F[np.ix_(actDof)]); U[np.ix_(actDof)]=disp #stress S=np.zeros((numElem,1)) for e in range(numElem): indice= elemNodes[e,:] elemDof=np.array([indice[0]*2, indice[0]*2+1, indice[1]*2, indice[1]*2+1 ]) S[e]=(E/L[e])*np.dot(np.array([-c[e],-s[e],c[e],s[e]]),U[np.ix_(elemDof)]) PL3 A.2 Mô-đun pyTruss3D import numpy as np #material properties E = 70000 #N/mm2 A = 300 #mm3 #node coordinates nodeCords = np.array([[0,0,0], #node1 [4000,0,0], #node2 [4000,4000,0], #node3 [0,4000,0], #node4 [0,0,3000], #node5 [4000,0,3000], #node6 [4000,4000,3000], #node7 [0,4000,3000], #node8 [2000,2000,8000]]) #node9 #member connectivites elemNodes = np.array([[0,4], #member1-node1-node5 [1,5], #member2-node2-node6 [2,6], #member3-node3-node7 [3,7], #member4-node4-node8 [4,1], #member5-node5-node2 [1,6], #member6-node2-node7 [4,3], #member7-node5-node4 [7,2], #member8-node8-node3 [4,5], #member9-node5-node6 [5,6], #member10-node6-node7 [6,7], #member11-node7-node8 [7,4], #member12-node8-node5 [5,8], #member13-node6-node9 [6,8], #member14-node7-node9 [7,8]]) #member15-node8-node9 numElem = elemNodes.shape[0] numNodes = nodeCords.shape[0] tdof = 3*numNodes xx = nodeCords[:,0] yy = nodeCords[:,1] zz = nodeCords[:,2] #force F = np.zeros((tdof,1)) F[24] = 70710.6781186548 F[25] = 70710.6781186548 #boundary conditions presDof=np.array([0,1,2,3,4,5,6,7,8,9,10,11]) actDof=np.setdiff1d(np.arange(tdof),presDof) #global stiffness matrix stiffness=np.zeros((tdof,tdof)) L = np.zeros((numElem,)) #lengths of members cx = np.zeros((numElem,)) cy = np.zeros((numElem,)) cz = np.zeros((numElem,)) for e in range(numElem): indice= elemNodes[e,:] elemDof=np.array([indice[0]*3, indice[0]*3+1, indice[0]*3+2, indice[1]*3, indice[1]*3+1, indice[1]*3+2]) xa = xx[indice[1]]-xx[indice[0]] ya = yy[indice[1]]-yy[indice[0]] za = zz[indice[1]]-zz[indice[0]] L[e] = np.sqrt(xa*xa+ya*ya+za*za) cx[e] = xa/L[e] cy[e] = ya/L[e] cz[e] = za/L[e] T =np.array([[cx[e]*cx[e],cx[e]*cy[e],cx[e]*cz[e]], [cy[e]*cx[e],cy[e]*cy[e],cy[e]*cz[e]], PL4 [cz[e]*cx[e],cz[e]*cy[e],cz[e]*cz[e]]]) T1 = np.concatenate(( T,-T),axis=1) T2 = np.concatenate((-T, T),axis=1) EA = E*A k1 = (EA/L[e]) * np.concatenate((T1, T2),axis=0) stiffness[np.ix_(elemDof,elemDof)]+=k1 #displacements U = np.zeros((tdof,1)) disp = np.linalg.solve(stiffness[np.ix_(actDof,actDof)],F[np.ix_(actDof)]); U[np.ix_(actDof)] = disp #stress S = np.zeros((numElem,1)) for e in range(numElem): indice= elemNodes[e,:] elemDof = np.array([indice[0]*3, indice[0]*3+1, indice[0]*3+2, indice[1]*3, indice[1]*3+1, indice[1]*3+2]) S[e]=(E/L[e])*np.dot(np.array([-cx[e],-cy[e],-cz[e], cx[e],cy[e],cz[e]]), U[np.ix_(elemDof)]) N = S*A PL5 B MÃ THỰC THI CÁC THUẬT TOÁN TỐI ƯU BẰNG NGÔN NGỮ PYTHON B.1 Mã thực thi thuật toán DE import numpy as np import pandas as pd from pyDOE import lhs #define Differential Evolution algorithm def DE(bounds, mut, crossp, popsize, its): numberFEA = pop = lhs(nVar,samples=popsize) min_b, max_b = np.asarray(bounds).T diff = np.fabs(min_b - max_b) pop_denorm = min_b + pop * diff fitness = [None]*popsize for j in range(popsize): cv = StructAnalysis(pop_denorm[j]) numberFEA = numberFEA + fitness[j] = fitnessfunc(pop_denorm[j], cv) best_idx = np.argmin(fitness) best = pop[best_idx] best_denorm = pop_denorm[best_idx] for i in range(1, its): for j in range(popsize): idxs = [idx for idx in range(popsize) if idx != j] x1, x2 = pop[np.random.choice(idxs, 2, replace = False)] mutant = np.clip(pop[j]+mut*(best-pop[j])+mut*(x1-x2),0,1) cross_points = np.random.rand(nVar) < crossp if not np.any(cross_points): cross_points[np.random.randint(0, nVar)] = True trial = np.where(cross_points, mutant, pop[j]) trial_denorm = min_b + trial * diff cv = StructAnalysis(trial_denorm) numberFEA = numberFEA + f = fitnessfunc(trial_denorm, cv) if f < fitness[j]: fitness[j] = f pop[j] = trial if f < fitness[best_idx]: best_idx = j best = trial best_denorm = trial_denorm yield best_denorm, \ fitness[best_idx], \ numberFEA PL6 B.2 Mã thực thi phương pháp CaDE import numpy as np import pandas as pd from pyDOE import lhs from sklearn.ensemble import AdaBoostClassifier from sklearn.tree import DecisionTreeClassifier #define function for assigning label def assign_label(cv): if cv > 0.0: return -1 else: return +1 #define Classifier-assisted Differential Evolution def CaDE(mut, crossp, popsize, n_iter1, its): numberFEA = #initial iteraction nVar = len(bounds) pop = lhs(nVar,samples=popsize) min_b, max_b = np.asarray(bounds).T diff = np.fabs(min_b - max_b) pop_denorm = min_b + pop * diff fitness = [None]*popsize x_train = pop_denorm y_train = np.empty(shape=(popsize,1)) for j in range(popsize): cv = StructAnalysis(pop_denorm[j]) numberFEA = numberFEA + fitness[j] = fitnessfunc(pop_denorm[j], cv) y_train[[j,0]] = assign_label(cv) best_idx = np.argmin(fitness) best = pop[best_idx] best_denorm = pop_denorm[best_idx] # phase I: model building phase for i in range(1, n_iter1): for j in range(popsize): idxs = [idx for idx in range(popsize) if idx != j] x1, x2 = pop[np.random.choice(idxs, 2, replace = False)] mutant = np.clip(pop[j]+mut*(best-pop[j])+mut*(x1-x2),0,1) cross_points = np.random.rand(nVar) < crossp if not np.any(cross_points): cross_points[np.random.randint(0, nVar)] = True trial = np.where(cross_points, mutant, pop[j]) trial_denorm = min_b + trial * diff trial_cv = StructAnalysis(trial_denorm) numberFEA = numberFEA + trial_f = fitnessfunc(trial_denorm, trial_cv) if trial_f < fitness[j]: fitness[j] = trial_f pop[j] = trial pop_denorm[j] = trial_denorm if trial_f < fitness[best_idx]: best_idx = j best = trial best_denorm = trial_denorm #add more data points x_train = np.concatenate((x_train, \ PL7 trial_denorm.reshape((1,nVar)))) y_train = np.concatenate((y_train, \ np.asarray([[trial_cv]]))) yield best_denorm, \ fitness[best_idx], \ numberFEA #defining and training classification model clf = AdaBoostClassifier(DecisionTreeClassifier(max_depth=1), n_estimators=50) clf.fit(x_train, y_train.ravel()) #phase II: model employing phase for i in range(n_iter1, its): for j in range(popsize): idxs = [idx for idx in range(popsize) if idx != j] x1, x2 = pop[np.random.choice(idxs, 2, replace = False)] mutant = np.clip(pop[j]+mut*(best-pop[j])+mut*(x1-x2),0,1) cross_points = np.random.rand(nVar) < crossp if not np.any(cross_points): cross_points[np.random.randint(0, nVar)] = True trial = np.where(cross_points, mutant, pop[j]) trial_denorm = min_b + trial * diff trial_label_pred=clf.predict(trial_denorm.reshape(1,nVar)) if trial_label_pred == 1: trial_cv = StructAnalysis(trial_denorm) numberFEA = numberFEA + trial_f = fitnessfunc(trial_denorm, trial_cv) if trial_f < fitness[j]: fitness[j] = trial_f pop[j] = trial pop_denorm[j] = trial_denorm if trial_f < fitness[best_idx]: best_idx = j best = trial best_denorm = trial_denorm elif trial_label_pred == -1: if weight(trial_denorm) < weight(pop_denorm[j]): trial_cv = StructAnalysis(trial_denorm) numberFEA = numberFEA + trial_f = fitnessfunc(trial_denorm, trial_cv) if trial_f < fitness[j]: fitness[j] = trial_f pop[j] = trial pop_denorm[j] = trial_denorm if trial_f < fitness[best_idx]: best_idx = j best = trial best_denorm = trial_denorm yield best_denorm, \ fitness[best_idx], \ numberFEA PL8 C DỮ LIỆU SỬ DỤNG TRONG CHƯƠNG VÀ CHƯƠNG Bảng C.1 Tọa độ nút tháp thép 160 Nút X (cm) Y (cm) Z (cm) Nút X (cm) Y (cm) Z (cm) -105,000 -105,000 0,000 27 40,000 -40,000 1027,500 105,000 -105,000 0,000 28 214,000 0,000 1027,500 105,000 105,000 0,000 29 40,000 40,000 1027,500 -105,000 105,000 0,000 30 -40,000 40,000 1027,500 -93,929 -93,929 175,000 31 -40,000 -40,000 1105,500 93,929 -93,929 175,000 32 40,000 -40,000 1105,500 93,929 93,929 175,000 33 40,000 40,000 1105,500 -93,929 93,929 175,000 34 -40,000 40,000 1105,500 -82,859 -82,859 350,000 35 -40,000 -40,000 1256,500 10 82,859 -82,859 350,000 36 40,000 -40,000 1256,500 11 82,859 82,859 350,000 37 -207,000 0,000 1256,500 12 -82,859 82,859 350,000 38 40,000 40,000 1256,500 13 -71,156 -71,156 535,000 39 -40,000 40,000 1256,500 14 71,156 -71,156 535,000 40 -40,000 -40,000 1346,500 15 71,156 71,156 535,000 41 40,000 -40,000 1346,500 16 -71,156 71,156 535,000 42 40,000 40,000 1346,500 17 -60,085 -60,085 710,000 43 -40,000 40,000 1346,500 18 60,085 -60,085 710,000 44 -26,592 -26,592 1436,500 19 60,085 60,085 710,000 45 26,592 -26,592 1436,500 20 -60,085 60,085 710,000 46 26,592 26,592 1436,500 21 -49,805 -49,805 872,500 47 -26,592 26,592 1436,500 22 49,805 -49,805 872,500 48 -12,737 -12,737 1526,500 23 49,805 49,805 872,500 49 12,737 -12,737 1526,500 24 -49,805 49,805 872,500 50 12,737 12,737 1526,500 25 -214,000 0,000 1027,500 51 -12,737 12,737 1526,500 26 -40,000 40,000 1027,500 52 0,000 0,000 1615,000 PL9 Thanh Nhóm 1 41 13 18 81 17 25 31 121 29 36 40 2 42 14 17 82 17 28 32 122 29 38 41 3 43 14 19 83 17 28 33 123 29 39 42 4 44 15 18 84 17 25 34 124 29 35 43 45 15 20 85 18 26 31 125 30 40 41 2 46 16 19 86 18 27 32 126 30 41 42 2 47 16 17 87 18 29 33 127 30 42 43 48 13 20 88 18 30 34 128 30 43 40 49 17 21 89 19 26 32 129 31 35 36 10 50 18 22 90 19 27 31 130 31 36 38 11 51 19 23 91 19 29 34 131 31 38 39 12 52 20 24 92 19 30 33 132 31 39 35 13 53 10 17 22 93 20 27 33 133 32 40 44 14 10 54 10 18 21 94 20 29 32 134 32 41 45 15 11 55 10 19 24 95 20 30 31 135 32 42 46 16 12 56 10 20 23 96 20 26 34 136 32 43 47 17 10 57 11 18 23 97 21 26 29 137 33 40 45 18 58 11 19 22 98 21 27 30 138 33 41 46 19 11 59 11 20 21 99 22 31 35 139 33 42 47 20 10 60 11 17 24 100 22 32 36 140 33 43 44 21 12 61 12 21 26 101 22 33 38 141 34 44 45 22 11 62 12 22 27 102 22 34 39 142 34 45 46 23 63 12 23 29 103 23 33 39 143 34 46 47 24 12 64 12 24 30 104 23 32 35 144 34 44 47 25 13 65 13 21 27 105 23 31 36 145 35 44 48 26 10 14 66 13 22 26 106 23 34 38 146 35 45 49 27 11 15 67 13 23 30 107 24 32 38 147 35 46 50 28 12 16 68 13 24 29 108 24 33 36 148 35 47 51 29 14 69 14 22 29 109 24 34 35 149 36 45 48 30 10 13 70 14 23 27 110 24 31 39 150 36 46 49 j i j i j Nhóm i Nhóm Nút Thanh Nút Nhóm Nút Thanh Nút Thanh Bảng C.2 Số hiệu nút hai đầu tháp thép 160 i j 10 15 71 14 24 26 111 25 37 35 151 36 47 50 32 11 14 72 14 21 30 112 25 37 39 152 36 44 51 33 11 16 73 15 26 27 113 26 37 40 153 37 48 49 34 12 15 74 15 27 29 114 26 37 43 154 37 49 50 35 12 13 75 15 29 30 115 27 35 40 155 37 50 51 36 16 76 15 30 26 116 27 36 41 156 37 48 51 37 13 17 77 16 25 26 117 27 38 42 157 38 48 52 38 14 18 78 16 27 28 118 27 39 43 158 38 49 52 39 15 19 79 16 25 30 119 28 35 38 159 38 50 52 40 16 20 80 16 29 28 120 28 36 39 160 38 51 52 i j i j Nhóm j Thanh 31 i Nhóm Nhóm Nút Thanh Nút Nhóm Nút Thanh Nút Thanh PL10 i j PL11 Bảng C.3 Danh mục tiết diện thép góc sử dụng tháp thép 160 STT A r A r A r A r STT STT STT 2 2 (cm ) (cm) (cm ) (cm) (cm ) (cm) (cm ) (cm) 1,84 0,47 12 7,44 1,26 23 21,12 2,16 34 46,94 2,94 2,26 0,57 13 8,06 1,36 24 23,20 2,36 35 51,00 2,92 2,66 0,67 14 8,66 1,46 25 25,12 2,57 36 52,10 3,54 3,07 0,77 15 9,40 1,35 26 27,50 2,35 37 61,82 3,96 3,47 0,87 16 10,47 1,36 27 29,88 2,56 38 61,90 3,52 3,88 0,97 17 11,38 1,45 28 32,76 2,14 39 68,30 3,51 4,79 0,97 18 12,21 1,55 29 33,90 2,33 40 76,38 3,93 5,27 1,06 19 13,79 1,76 30 34,77 2,97 41 90,60 3,92 5,75 1,16 20 15,39 1,95 31 39,16 2,54 42 94,13 3,92 10 6,25 1,26 21 17,03 1,74 32 43,00 2,93 11 6,84 1,15 22 19,03 1,94 33 45,65 2,94 PL12 Bảng C.4 Danh mục tiết diện thép góc sử dụng tháp 244 Số hiệu A (mm2) r Số hiệu (mm) L35x3 203 6,7 L60x8 L35x4 266 6,7 L35x5 327 L35x6 A (mm2) r Số hiệu (mm) A (mm2) r (mm) 896 11,5 L100x6 1167 19,5 L60x10 1100 11,5 L100x8 1539 19,5 6,7 L65x5 625 12,6 L100x10 1903 19,4 386 6,7 L65x6 744 12,6 L100x12 2259 19,4 L40x3 234 7,7 L65x8 976 12,5 L110x8 1702 21,4 L40x4 307 7,7 L65x10 1200 12,5 L110x10 2106 21,4 L40x5 378 7,7 L70x5 677 13,6 L110x12 2502 21,3 L40x6 447 7,7 L70x6 806 13,6 L110x15 3081 21,3 L45x3 264 8,7 L70x8 1058 13,5 L130x8 2022 25,5 L45x4 347 8,7 L70x10 1302 13,5 L130x10 2506 25,4 L45x5 428 8,7 L75x5 727 14,6 L130x12 2982 25,4 L45x6 507 8,7 L75x6 866 14,6 L130x15 3681 25,3 L50x3 295 9,7 L75x8 1138 14,5 L150x10 2903 29,3 L50x4 388 9,7 L75x10 1402 14,5 L150x12 3459 29,3 L50x5 479 9,7 L80x6 929 15,6 L150x15 4278 29,2 L50x6 568 9,6 L80x8 1221 15,5 L150x18 5079 29,1 L55x5 527 10,6 L80x10 1505 15,5 L200x12 4661 39,2 L55x6 626 10,6 L80x12 1781 15,4 L200x15 5780 39,1 L55x8 818 10,6 L90x6 1047 17,5 L200x18 6881 39,0 L55x10 1002 10,6 L90x8 1379 17,5 L200x25 9380 38,8 L60x5 575 11,6 L90x10 1703 17,4 L60x6 684 11,5 L90x12 2019 17,4 PL13 Bảng C.5 Danh mục tiết diện thép hộp sử dụng giàn phẳng 24m Số hiệu A (cm2) r (cm) Số hiệu A (cm2) r (cm) 50×50×3 5,41 1,90 120×120×4 18,10 4,71 50×50×4 6,95 1,85 120×120×6 22,40 4,65 60×60×3 6,61 2,30 120×120×6 26,40 4,61 60×60×4 8,55 2,26 120×120×8 33,60 4,49 70×70×3 7,81 2,71 150×150×4 22,90 5,94 70×70×4 10,10 2,67 150×150×5 28,40 5,88 70×70×5 12,40 2,61 150×150×6 33,60 5,84 80×80×3 9,01 3,12 150×150×8 43,20 5,72 80×80×4 11,70 3,08 180×180×10 64,60 6,83 80×80×5 14,40 3,02 180×180×5 34,40 7,11 80×80×6 16,80 2,98 180×180×6 40,80 7,07 90×90×3 10,20 3,53 180×180×8 52,80 6,94 90×90×4 13,30 3,49 200×200×10 72,60 7,65 90×90×5 16,40 3,43 200×200×5 38,40 7,92 90×90×6 19,20 3,39 200×200×6 45,60 7,88 100×100×3 11,40 3,94 200×200×8 59,20 7,76 100×100×4 14,90 3,89 250×250×10 92,60 9,70 100×100×5 18,40 3,84 250×250×6 57,60 9,92 100×100×6 21,60 3,79 250×250×8 75,20 9,80 100×100×8 27,20 3,67 300×300×10 113,00 11,72 91,20 11,85 300×300×8 PL14 Bảng C.5 Danh mục tiết diện thép hộp sử dụng giàn phẳng 24m (tiếp) A (cm ) rx (cm) A (cm ) rx (cm) ry (cm) 100×50×3 8.41 3.6 2.1 150×100×6 27.6 5.5 4.0 100×50×4 10.9 3.5 2.0 150×100×8 35.2 5.4 3.9 100×50×5 13.4 3.4 2.0 150×100×10 42.6 5.2 3.8 100×50×6 15.6 3.4 1.9 200×100×4 22.9 7.2 4.2 120×60×3 10.2 4.3 2.5 200×100×5 28.4 7.2 4.2 120×60×4 13.3 4.3 2.5 200×100×6 33.6 7.1 4.1 120×60×5 16.4 4.2 2.4 200×100×8 43.2 7.0 4.0 120×60×6 19.2 4.1 2.4 200×100×10 52.6 6.8 3.9 150×100×3 14.4 5.7 4.2 300×200×6 57.6 11.3 8.3 150×100×4 18.9 5.6 4.1 300×200×8 75.2 11.2 8.2 150×100×5 23.4 5.5 4.1 300×200×10 92.6 11.0 8.1 300×200×12 108 10.9 8.0 Số hiệu ry Số hiệu (cm) PL15 Bảng C.6 Danh mục thép ống sử dụng giàn lưới không gian ba lớp Số hiệu A (cm2) r (cm) Số hiệu A (cm2) r (cm) 88,9×5,49 3,03 1,07 141,3×6,55 25,90 4,78 42,2×3,56 4,03 1,38 168,3×7,11 33,50 5,72 48,3×3,68 4,83 1,59 219,1×8,18 50,60 7,49 60,3×3,91 6,58 2,01 273×9,27 74,20 9,35 73×5,16 10,40 2,42 323,8×9,53 88,40 11,2 88,9×5,49 13,40 2,97 355,6×9,53 96,80 12,3 101,6×5,74 16,10 3,40 406,4×9,53 111,00 14,0 114,3×6,02 19,10 3,84 457×9,53 125,00 15,8

Ngày đăng: 24/07/2023, 15:16

Tài liệu cùng người dùng

Tài liệu liên quan