Tạp chí Khoa học Công nghệ Xây dựng NUCE 2019. 13 (1V): 56–65<br />
<br />
<br />
<br />
TỐI ƯU CÂN BẰNG THỜI GIAN CHI PHÍ TRONG TIẾN ĐỘ<br />
CÁC DỰ ÁN CÓ CÔNG TÁC LẶP LẠI<br />
<br />
Trần Đức Họca,∗<br />
a<br />
Khoa Kỹ thuật Xây dựng, Trường Đại học Bách khoa TP. Hồ Chí Minh,<br />
268 Lý Thường Kiệt, quận 10, TP. Hồ Chí Minh, Việt Nam<br />
Nhận ngày 14/02/2019, Sửa xong 29/03/2019, Chấp nhận đăng 29/03/2019<br />
<br />
<br />
Tóm tắt<br />
Các vấn đề chi phí thời gian trong dự án lặp đi lặp lại đã được xác định là yếu tố quan trọng của quá trình<br />
ra quyết định. Các tiến độ của dự án hiện nay đều sử dụng phương pháp sơ đồ mạng nút PDM (Precedence<br />
Diagramming Method) có hai điểm giới hạn đó là (1) giả thiết các công tác là tuyến tính; (2) mối quan hệ được<br />
thể hiện ở thời điểm bắt đầu và kết thúc. Bài báo này đưa ra một phương pháp tính toán tiến độ sử dụng hàm<br />
phân phối cho các dự án xây dựng có quan hệ thứ tự giữa các công tác gần liên tục và sản xuất theo dạng không<br />
tuyến tính. Nghiên cứu này trình bày một thuật toán sinh học cộng sinh tìm kiếm tự điều chỉnh đa mục tiêu<br />
(AMOSOS) để giải quyết bài toán cân bằng chi phí thời gian trong các dự án có công tác lặp lại. Một ví dụ được<br />
sử dụng để diễn đạt phương pháp tính toán tiến độ, cũng như để chứng minh khả năng của AMOSOS trong việc<br />
tối ưu thời gian chi phí của các dự án có công tác lặp lại.<br />
Từ khoá: tiến độ; thuật toán tiến hóa; thời gian – chi phí; đa mục tiêu.<br />
OPTIMIZING TIME-COST TRADEOFF IN REPETITIVE PROJECT SCHEDULING<br />
Abstract<br />
The time-cost problems in repetitive project have been identified as crucial factors of decision-making process.<br />
Almost currently used repetitive project scheduling are the precedence diagramming method (PDM) which<br />
has two fundamental limitations (1) assumed to progress linearly from their start to their finish; (2) connected<br />
only via their end points. The paper proposes a scheduling method using singularity function for continuous<br />
precedence relations and nonlinear activity-time-production functions. This study further presents an adaptive<br />
multiple objective symbiotic organisms search algorithm (AMOSOS) to solve time-cost tradeoff in repetitive<br />
projects. An application example is analyzed to validate the scheduling method, as well as to demonstrate the<br />
capabilities of AMOSOS in optimizing time-cost tradeoffs in repetitive construction projects.<br />
Keywords: scheduling; evolutionary algorithms; time-cost tradeoff; multiple objectives.<br />
c 2019 Trường Đại học Xây dựng (NUCE)<br />
https://doi.org/10.31814/stce.nuce2019-13(1V)-06 <br />
<br />
<br />
1. Giới thiệu<br />
<br />
Vấn đề tối ưu hóa cân bằng đồng thời chi phí và thời gian trong quá trình lập kế hoạch thi công<br />
xây dựng thông qua việc lựa chọn phương án tổ đội thi công là một trong những nhiệm vụ quan trọng<br />
của nhà quản lý dự án. Thông thường, thời gian dự án ngắn sẽ phát sinh chi phí xây dựng cao và ngược<br />
lại. Một công ty xây dựng có khả năng giảm thiểu đồng thời cả thời gian và chi phí dự án có thể có lợi<br />
thế đáng kể so với các đối thủ cạnh tranh. Có nhiều phương pháp đã được đề xuất để giải bài toán cân<br />
bằng tiến độ, chi phí từ khi phương pháp đường găng được phát triển. James E. Kelley and Walker<br />
<br />
∗<br />
Tác giả chính. Địa chỉ e-mail: tdhoc@hcmut.edu.vn (Học, T. Đ.)<br />
<br />
56<br />
Học, T. Đ. / Tạp chí Khoa học Công nghệ Xây dựng<br />
<br />
[1] tiên phong trong việc dùng phương pháp toán học để giải bài toán thời gian chi phí. Sau đó các<br />
phương pháp khác như heuristic, mô phỏng toán học, thuật toán tiến hóa được áp dụng để giải quyết<br />
vấn đề tối ưu thời gian chi phí.<br />
Các dự án có công tác lặp lại (RP) thường gặp trong thi công xây dựng, sự lặp lại có thể là do đặc<br />
điểm hình học và vị trí dẫn đến sự phân chia các phân khu (zone). Các dự án có công tác lặp lại có<br />
thể được phân thành hai nhóm: (1) các dự án lặp đi lặp lại do sự lặp lại thống nhất của một công việc<br />
trong suốt các dự án (nhiều ngôi nhà tương tự, nhà cao tầng); (2) các dự án lặp đi lặp lại do cấu tạo<br />
hình học của chúng (đường cao tốc, đường hầm, đường ống). Dự án lặp lại thường yêu cầu tài nguyên<br />
(ví dụ: Nhân công) thực hiện cùng một nhiệm vụ ở nhiều phân khu (địa điểm, phân khúc) khác nhau<br />
bằng cách chuyển từ phân khu này sang phân khu tiếp theo. Nhiều phương pháp đã được đề xuất để<br />
lập tiến độ cho các dự án xây dựng có công tác lặp lại.<br />
Phương pháp đường găng có hai điểm giới hạn đó là (1) giả thiết các công tác là tuyến tính; (2)<br />
mối quan hệ được thể hiện ở thời điểm bắt đầu và kết thúc. Thực tế, giả định hạn chế này hầu như<br />
luôn không chính xác [2]. Ví dụ, trong thi công xây dựng đường ống, tốc độ thi công được đo dọc<br />
đường, tốc độ thi công nhanh nếu độ sâu của rãnh giảm và chậm lại nếu độ sâu của rãnh tăng. Do đó,<br />
mối quan hệ giữa thời gian và khối lượng công việc là phi tuyến (Hình 1a). Đối với giả thuyết thứ 2<br />
về phương pháp đường Găng, Hình<br />
Tạp<br />
Tạp chí 1b,<br />
chíKhoacho<br />
Khoa họcthấy<br />
học mối<br />
Công<br />
Công quan<br />
nghệ<br />
nghệ hệ giữa<br />
Xâydựng<br />
Xây dựng công<br />
NUCE<br />
NUCE tác A (tuyến tính) và công tác<br />
2019<br />
2019<br />
B (phi tuyến) là vi phạm mối quan hệ ở thời điểm bắt đầu và kết thúc.<br />
<br />
Khốilượng<br />
Khối lượng Khốilượng<br />
Khối lượng<br />
côngviệc<br />
công việc (đơnvị)<br />
(đơn vị)<br />
Công<br />
Công táctác<br />
B:B:<br />
Công<br />
Côngtác<br />
tácA:<br />
A: Công<br />
Côngtác<br />
tácB:B:Phi<br />
Phituyến<br />
tuyến Lắp<br />
Lắpđặtđặt<br />
ốngống<br />
Tuyến<br />
Tuyếntính<br />
tính (tăng<br />
(tăngnăng<br />
năngsuất)<br />
suất) FF+2<br />
FF+2<br />
80<br />
80 8080 Công<br />
CôngtáctácA:A:<br />
Đào<br />
Đàođấtđất<br />
60<br />
60 Vùng<br />
Vùngcủa<br />
củaBB 6060<br />
Vùng đệm<br />
Vùng (buffer)<br />
đệm (buffer)<br />
4040 2 ngày<br />
2 ngày<br />
40<br />
40<br />
Vùng<br />
Vùngcủa<br />
củaAA<br />
20<br />
20 2020 Thời<br />
Thờigian<br />
gian<br />
Thời<br />
Thờigian<br />
gian (ngày)<br />
(ngày)<br />
20<br />
20 4040 6060 SS+22 2<br />
SS+2 44 66 88<br />
<br />
(a)<br />
(a)Mối<br />
(a) quan<br />
Mối quanhệ<br />
hệcác<br />
Mối quan<br />
cáccông<br />
hệ các côngtác<br />
công tác<br />
tác (b) Vi<br />
(b)<br />
(b) Viphạm<br />
Vi phạm mối<br />
phạm mốiquan<br />
mối quan hệhệ<br />
quan hệ<br />
Hình<br />
Hình 1.<br />
Hình 1.1.Quan hệhệcông<br />
Quanhệ<br />
Quan công<br />
công tác<br />
táctác<br />
Thuật<br />
Thuậttoán toánsinh<br />
sinhhọchọccộng<br />
cộngsinhsinhtìm tìmkiếm<br />
kiếm(Symbiotic<br />
(SymbioticOrganisms<br />
OrganismsSearch SearchSOS) SOS)làlà<br />
Thuật<br />
một toán sinh học cộng sinh tìm kiếm (Symbiotic Organisms Search SOS) là một thuật toán tối<br />
mộtthuật<br />
thuậttoántoántối tốiưu<br />
ưuhóahóamạnh<br />
mạnhđượcđượcgiới giớithiệu<br />
thiệubởi bởiCheng<br />
Chengand andPrayogo<br />
Prayogo[3]. [3].ƯuƯuđiểmđiểm<br />
ưu hóa mạnh được giới thiệu bởi Cheng and Prayogo [3]. Ưu điểm cơ bản chính của thuật toán này so<br />
cơ bản chính của củathuật toán này<br />
nàylàsoso với<br />
vớihầu hầuhết hếtcác thuật toán tiếntiếnhóahóakhác làlàthuật<br />
với hầucơ hếtbản<br />
các chính<br />
thuật toán thuật<br />
tiến hóatoánkhác thuật toán chỉ cáchai<br />
có thuật<br />
thamtoánsố điều khiển khác<br />
cơ bản thuật<br />
đó là kích<br />
cỡ quầntoán<br />
thể chỉ<br />
toán và có<br />
chỉsố hai<br />
haitham<br />
cóvòng thamCác<br />
lặp. số<br />
sốđiều<br />
điềukhiển<br />
nghiên cứucơ<br />
khiển cơbản<br />
trướcbảnvềđóđó<br />
SOSlàlàkích<br />
kíchra<br />
chỉ cỡcỡ quần<br />
rằngquần thể<br />
thuật vàvàsốsố<br />
thểtoán vòng<br />
SOS vòng lặp.<br />
vượt lặp. Các<br />
trội Các<br />
hơn các<br />
nghiên<br />
nghiên<br />
thuật toán cứu<br />
cứutrước<br />
di truyền trước<br />
(Geneticvề<br />
vềSOS<br />
SOSchỉ chỉrararằng<br />
algorithm-GA), rằngbầythuậtđàntoán<br />
thuật toán SOS<br />
SOSvượt<br />
(Particle vượttrội<br />
swarm trộihơn<br />
hơncác cácthuật<br />
thuậttoán<br />
optimization-PSO), toán didi<br />
tiến hóa vi<br />
truyền (Genetic<br />
truyền (Genetic<br />
phân (Differential algorithm-GA),<br />
algorithm-GA),<br />
evolution-DE) bầy<br />
và thuậtbầy đàn<br />
toánđàn (Particle<br />
bầy(Particle<br />
ong nhânswarmswarm optimization-PSO),<br />
tạo (Bees optimization-PSO),<br />
algorithm-BA) trong tiến hóa<br />
tiến việc<br />
hóa giải<br />
vi phân tối(Differential<br />
ưu toàn cầu evolution-DE)<br />
đơn mục tiêu. và<br />
Trước thuật<br />
những toán bầy<br />
điểm ong<br />
vi phân (Differential evolution-DE) và thuật toán bầy ong nhân tạo (Bees algorithm- cứu<br />
quyết vấn đề mạnh nhân<br />
của tạo<br />
SOS, (Bees<br />
một sốalgorithm-<br />
nhà nghiên<br />
đã phátBA)<br />
triểntrong<br />
BA) và ápviệc<br />
trong dụnggiải<br />
việc thành<br />
giải quyết<br />
côngvấn<br />
quyết SOS<br />
vấn đềđềđểtối ưu<br />
giải<br />
tối toàn<br />
toàncầu<br />
ưuquyết các đơn<br />
cầuvấn đơnđề mục tiêu.<br />
đa mục<br />
mục Trước<br />
tiêu.tiêu với những<br />
Trước hiệu<br />
những điểm<br />
suất vượt trội<br />
điểm<br />
so với mạnh<br />
các thuật toán đa mục tiêu khác [4, 5]. Do đó, nghiên cứu này phát triển thuật toán sinh học<br />
mạnh của củaSOS,SOS,một mộtsố sốnhà<br />
nhànghiên<br />
nghiêncứu cứuđãđãphát pháttriểntriểnvàvàápápdụng dụngthành<br />
thànhcôngcôngSOS SOSđểđể<br />
cộng sinh<br />
giải tìm kiếm tự điều chỉnh đa mục tiêu để tối ưu hóa cân bằng thời gian chi phí trong dự án có<br />
giảiquyết<br />
quyếtcác cácvấnvấnđề đềđađamục<br />
mụctiêutiêuvớivớihiệu<br />
hiệusuấtsuấtvượtvượttrộitrộisosovới<br />
vớicác cácthuật<br />
thuậttoán<br />
toánđađamục mục<br />
công tác lặp lại.<br />
tiêu<br />
tiêu khác<br />
khác[4, [4,5].<br />
5].DoDođó, đó,nghiên<br />
nghiêncứu cứunày nàyphátpháttriểntriểnthuật<br />
thuậttoántoánsinhsinhhọchọccộng<br />
cộngsinhsinhtìm tìm<br />
kiếm tự điều chỉnh đa mục tiêu để tối ưu hóa cân bằng thời<br />
kiếm tự điều chỉnh đa mục tiêu để tối ưu hóa cân bằng thời gian chi phí trong dự án có gian chi phí trong dự án có<br />
công<br />
côngtác táclặp<br />
lặplại.<br />
lại.<br />
57<br />
2.2.Bài<br />
Bàitoán<br />
toánthờithờigian<br />
gianchichiphí<br />
phítrong<br />
trongdự dựán áncócócông côngtác táclặp lặplại<br />
lại<br />
Một<br />
Một dự<br />
dự án<br />
án bao<br />
baogồm<br />
gồmcác<br />
cáccông<br />
côngviệc<br />
việcM,<br />
M,cócóthể<br />
thểđược<br />
đượclặp<br />
lặplạilạitrong<br />
trongcác<br />
cácphân<br />
phânkhu<br />
khu<br />
(tầng, zone) U. Tiến độ mỗi phân khu được lập sử dụng sơ đồ mạng nút, trong<br />
(tầng, zone) U. Tiến độ mỗi phân khu được lập sử dụng sơ đồ mạng nút, trong đó các đó các<br />
Học, T. Đ. / Tạp chí Khoa học Công nghệ Xây dựng<br />
<br />
2. Bài toán thời gian chi phí trong dự án có công tác lặp lại<br />
Một dự án bao gồm các công việc M, có thể được lặp lại trong các phân khu (tầng, zone) U. Tiến<br />
độ mỗi phân khu được lập sử dụng sơ đồ mạng nút, trong đó các công việc M được thể hiện dưới dạng<br />
nút. Các công việc này được lặp lại trong các phân khu U. Các tài nguyên sử dụng cho từng công việc<br />
(i), được sử dụng lặp đi lặp lại trong các phân khu (không gian) U từ phân khu 1 đến U. Bài toán thời<br />
gian chi phí trong dự án có công tác lặp lại yêu cầu các nhà hoạch định dự án lựa chọn biện pháp thi<br />
công phù hợp cho tất cả các công tác (i) trong các phân khu U để lập tiến độ tối ưu trong khi đáp ứng<br />
tất cả các ràng buộc của dự án. Vấn đề lập tiến độ phải cân bằng hai mục tiêu mâu thuẫn, đó là giảm<br />
thiểu đồng thời thời gian và chi phí dự án. Các mục tiêu này được tính toán theo công thức đề xuất<br />
của Long and Ohsato [6] năm 2009.<br />
Mục tiêu 1: Giảm thiểu thời gian dự án T p ⇒ T pMin , được tính theo công thức (1).<br />
<br />
<br />
T p = min Max (FT i, j ) = min Max (ST i, j + Di, j ) (1)<br />
<br />
i=1,...,M i=1,...,M <br />
j=1,...,U j=1,...,U<br />
<br />
trong đó FT i, j là thời gian hoàn thành của công việc (i) ở phân khu ( j). ST i, j là thời gian bắt đầu, Di, j<br />
là thời gian thực hiện công việc.<br />
Mục tiêu 2: Giảm thiểu chi phí dự án TC p ⇒ TC Min<br />
p , được tính theo công thức (2).<br />
M X<br />
X U<br />
TC p = C D + C I = ci, j + C0 + bT P (2)<br />
i=1 j=1<br />
<br />
Chi phí gián tiếp C I = C0 + bT P . Trong đó T P là tổng thời gian hoàn thành dự án được xác định theo<br />
phương trình (1). Hệ số b là chi phí gián tiếp của dự án được lựa chọn dựa vào bởi nhà quản lý dự án.<br />
C0 là tổng chi phí ban đầu (có thể bao gồm chi phí huy động, chi phí cho các cơ sở tạm thời và các<br />
XM X U<br />
chi phí ban đầu khác). Chi phí trực tiếp C D = ci, j , trong đó ci, j chi phí trực tiếp để hoàn thành<br />
i=1 j=1<br />
công tác (i) ở phân khu ( j).<br />
<br />
3. Đề xuất thuật toán tối ưu thời gian chi phí<br />
Phần này mô tả thuật toán sinh học cộng sinh tìm kiếm tự điều chỉnh đa mục tiêu (Adaptive<br />
multiple objective symbiotic organisms search algorithm - AMOSOS) để giải quyết bài toán chi phí<br />
thời gian trong dự án có công tác lặp bằng cách tối ưu hóa đồng thời thời gian và chi phí dự án. Trong<br />
mô hình đề xuất, thuật toán tìm kiếm đa mục tiêu AMOSOS được phát triển dựa trên phiên bản gốc<br />
của thuật toán SOS. Sơ đồ nguyên lý của thuật toán AMOSOS được mô tả trong Hình 2. Hình này<br />
biểu thị các giai đoạn khác nhau của thuật toán được đề xuất như khởi tạo, giai đoạn tương tác thích<br />
nghi, giai đoạn hội sinh, giai đoạn ký sinh và điều kiện dừng. Các bước chi tiết của thuật toán thích<br />
ứng được giải thích trong các bước sau. Đầu tiên thuật toán khởi tạo quần thể ban đầu dựa vào đặc<br />
điểm của dự án, tiếp theo sẽ đi vào quá trình tối ưu hóa thông qua các cơ chế hoạt động chính. Ở mỗi<br />
giai đoạn bao gồm (tương tác, hội sinh, cộng sinh) mỗi cá thể trong quần thể sẽ tạo ra một cá thể (giải<br />
pháp) mới, cá thể mới sẽ so sánh với cá thể cũ thông qua các giá trị hàm mục tiêu. Sau đó quá trình<br />
lựa chọn sẽ chọn ra các cá thể đi vòng lặp tiếp theo. Quá trình tối ưu kết thúc khi điều kiện dừng thỏa<br />
mãn. Một tập hợp các giải pháp không vượt trội (Pareto) sẽ được tạo ra. Nhiệm vụ của nhà quản lý dự<br />
án là chọn lựa những phương án thi công thích hợp dựa vào tiêu chí của dự án.<br />
58<br />
Tạp chí Khoa học Công nghệ Xây dựng NUCE 2019<br />
Học, T. Đ. / Tạp chí Khoa học Công nghệ Xây dựng<br />
<br />
Bắt đầu Công cụ<br />
tính toán<br />
Khởi tạo tiến độ Dừng<br />
<br />
Giai đoạn tương tác Thời<br />
Tập không<br />
Thời<br />
gian<br />
Tiến độ<br />
gian<br />
AMOSOS Thuật toán<br />
<br />
Sai vượt trội Zone 1 Zone 2 Zone 3 Công<br />
tác 3<br />
Giai đoạn hội sinh 2<br />
<br />
<br />
<br />
<br />
Kết quả<br />
Giai đoạn cộng sinh 1<br />
<br />
<br />
Chi phí Công<br />
Quá trình lựa chọn việc<br />
<br />
<br />
<br />
Điều kiện dừng Các giải pháp không vượt trội<br />
<br />
<br />
HìnhHình<br />
2. Mô hình<br />
2. Mô tốitốiưuưuthời<br />
hình thời gian chiphí<br />
gian chi phí<br />
3.1. Khởi tạo<br />
3.1. Khởi tạo<br />
Mô Môhìnhhình<br />
yêu cầu yêu đầu<br />
cầuvàođầuthông<br />
vào thông<br />
tin dự tin dự án<br />
án bao gồmbao mốigồmquanmối quancông<br />
hệ các hệ các côngphân<br />
tác, hàm tác, phối<br />
hàm phânfunctions)<br />
(singularity phối (singularity<br />
của các côngfunctions)<br />
tác tại của<br />
mỗi các<br />
phâncôngkhu,tác<br />
tổngtạichi<br />
mỗiphíphân<br />
hoạt khu,<br />
độngtổng chi phí<br />
của mỗi công tác<br />
hoạttính<br />
được động<br />
theocủacông mỗithức<br />
công (2).tácNgoài<br />
đượcra, tính theodùng<br />
người côngcũng thứcphải<br />
(2).đặt<br />
Ngoài<br />
thamra,sốngười dùngcụcũng<br />
cho công tìm kiếm<br />
phải đặt tham số cho công cụ tìm kiếm (AMOSOS), chẳng hạn như giá trị của kích<br />
(AMOSOS), chẳng hạn như giá trị của kích thước hệ sinh thái, số lượng biến D, số hàm mục tiêu O,<br />
số lượng thế hệ Gmax tối đa, cận dưới (LB) và cận trên (U B) của các biến quyết định. Các giá trị đầu<br />
thước hệ sinh thái, số lượng biến D, số hàm mục tiêu O, số lượng thế hệ Gmax tối đa,<br />
vào phụ thuộc vào dự án cần tối ưu. Với các đầu vào này, quy trình tối ưu hóa tiến hành tính toán tự<br />
cậnđể<br />
động dưới (LB) một<br />
có được và cận trênchọn<br />
bộ tùy (UB) tốicủa<br />
ưu cáccáctổbiến<br />
đội quyết<br />
thi công định.<br />
cho Các<br />
tất cảgiá<br />
cáctrịcông<br />
đầutác<br />
vàocủaphụ<br />
dự thuộc<br />
án.<br />
vào<br />
Quá trình khởi tạo quần thể ban đầu tạo ra một điểm trong không gian D chiều X = {x1 , x2 , .tự<br />
dự án cần tối ưu. Với các đầu vào này, quy trình tối ưu hóa tiến hành tính toán . . , xD }<br />
động<br />
trong đóđểx1có<br />
, x2được<br />
, . . . , xmột<br />
D ∈< bộvàtùyxi chọn tối Quần<br />
∈ [0, 1]. ưu cácthểtổđầu<br />
độitiên<br />
thi sẽ<br />
công<br />
đượcchotạotất<br />
ra cả<br />
nhưcác công tác của<br />
sau:<br />
dự án.<br />
j = LBi + xi, j ∗ (U Bi − LBi );<br />
Xi,G=0 i = 1, 2, . . . , D; j = 1, 2, . . . , NP (3)<br />
Quá trình khởi tạo quần thể ban đầu tạo ra một điểm trong không gian D chiều<br />
Giải pháp tiềm năng được biểu diễn dưới dạng vectơ D phần tử như sau: X = [X1, j , X2, j , . . . , Xi, j ,<br />
. . .X, X=D,{jx].1 ,Trong<br />
x2 ,..., xđó,<br />
D} D trong<br />
là số đó<br />
lượng x1, biến xD ÎÂ<br />
x2 ,...,quyết định xi Î[0,1]<br />
vàtrong . Quần<br />
bài toán. Rõ thể<br />
ràngđầu<br />
là Dtiên<br />
cũngsẽlàđược tạo công<br />
số lượng<br />
ra như<br />
việc trongsau: dự án. Chỉ số j biểu thị cá nhân thứ j trong hệ sinh thái. Phần tử Xi, j đại diện cho một<br />
biện pháp thi công công việc i, mỗi tổ đội sẽ thực hiện theo cách khác nhau. Phần tử Xi, j là một số<br />
X iG, j=0trong<br />
nguyên = LB i + xvi<br />
phạm *(UB<br />
i , j [1, Mi ] i(i-=LB ) ;D),<br />
1 iđến i = nghĩa<br />
1, 2,...,<br />
là D; jvị=trí1,trong<br />
một 2,...,tất<br />
NPcả các biện pháp(3) thi công<br />
công việc Mi .<br />
Giải pháp tiềm năng được biểu diễn dưới dạng vectơ D phần tử như sau:<br />
3.2. Tính<br />
[ X 1,toán tiến độ<br />
X = j , X 2, j ,..., X i , j ,..., X D , j ] . Trong đó, D là số lượng biến quyết định trong bài toán.<br />
<br />
RõĐầuràngtiên, từ thông tin của dự án, đầu vào tiến độ bao gồm số công tác, thời gian thi công của các<br />
là D cũng là số lượng công việc trong dự án. Chỉ số j biểu thị cá nhân thứ j<br />
công tác, mối quan hệ công tác, khối lượng và các loại gián đoạn về mặt thời gian và khối lượng và<br />
trong<br />
các hệ(m,<br />
giá trị sinhk) thái.<br />
để tạoPhần hàm tử phân Xi,phối<br />
j đại diện cho một biện pháp thi công công việc i, mỗi tổ<br />
cho các công tác. Bước 2, tương tự phương pháp tính toán tiến<br />
độ của Hajdu và cs. [2], cần chuyển đổi tấtPhần<br />
đội sẽ thực hiện theo cách khác nhau. tử phân<br />
cả hàm Xi, j làphối<br />
mộttừsốcông<br />
nguyên trongthời<br />
việc theo phạm<br />
gianviw(t)<br />
[1, sang<br />
Mi]gian<br />
thời (i =theo1 đến công D),việcnghĩa t(w)làđể một đápvịứng<br />
trí trong tất cả<br />
mục tiêu cácưubiện<br />
là tối hóapháp thi Nghiên<br />
tiến độ. công công<br />
cứu việc Mi. nghĩa<br />
này định<br />
hàm phân phối cho tất cả các công việc trong dự án như công thức (4).<br />
3.2. Tính toán tiến độ<br />
XU<br />
Đầu<br />
tact (w)tiên, từ −<br />
= k1 hw thông<br />
a1 im tin<br />
+ củaki hw<br />
dự −án,<br />
ai iđầu<br />
m<br />
− kvào tiến<br />
i−1 hw − ađộ<br />
i−1 ibao<br />
m gồm số công tác, thời gian<br />
; i = 1, U; w = 0 : ∆w : L (4)<br />
thi công của các công tác, mối i=2 quan hệ công tác, khối lượng và các loại gián đoạn về<br />
<br />
mặtđó<br />
trong thời gian<br />
w là biếnvàtrên<br />
khối<br />
trụclượng và cácaigiá<br />
khối lượng; trị (m,<br />
là giá k) để tạo<br />
trị ngưỡng trên hàm<br />
khối phân<br />
lượng phối<br />
w màcho cáchàm<br />
tại đó côngđặt biệt<br />
trởtác.<br />
nênBước<br />
có giá2,trị;<br />
tương<br />
U làtự<br />
sốphương<br />
phân khupháp tínhán.toán<br />
của dự Cáctiến<br />
giá độ củawHajdu<br />
trị của và các<br />
nằm trong cộngvisự<br />
phạm [0;[2], cần<br />
L]. L là tổng<br />
59<br />
<br />
5<br />
Học, T. Đ. / Tạp chí Khoa học Công nghệ Xây dựng<br />
<br />
khối lượng. Số lượng phần tử trong mảng w phụ thuộc vào giá trị của bước làm việc (∆w). Sau khi<br />
xác định được các hàm phân phối cho các công tác. Ở bước 3, dựa vào tính chất của dự án xác định<br />
các mối quan hệ công tác trong dự án, các mối quan hệ ràng buộc sẽ được phân ra các cặp (ví dụ A<br />
và B sẽ là FS: Finish-Start, kết thúc bắt đầu). Tiếp theo dựa vào các loại gián đoạn về mặt thời gian<br />
và khối lượng để xác định giá trị gián đoạn ở bước 4 và 5, sau đó ghép sát các công tác sau để có tiến<br />
độ thi công hợp lý ở bước 6 (Hình 3).<br />
<br />
Bước 3: Xác định quan hệ công tác i:=1<br />
Bắt đầu<br />
Các cặp quan hệ công tác (FS,SS,SF,FF)<br />
X [ X 1, j , X 2, j ,..., X i , j ,..., X D , j ]<br />
Bước 4: Xác định vùng đệm Lựa chọn tổ đội<br />
Bước<br />
Thời gian: 3: Xác<br />
Chuyển côngđịnh quan<br />
tác trước củahệ công<br />
i lên trướctác<br />
theo i:=1<br />
hướng<br />
Bắt đầu<br />
Cácthời<br />
cặpgian.<br />
quant(w)hệ<br />
buffercông<br />
= t(w)tác<br />
+ timelead<br />
(FS,SS,SF,FF) Bước 1: Nhập thông số<br />
Khối lượng: Chuyển công tác trước của i sang trái theo<br />
hướng khối lượng. t(w)buffer = t(w) + worklead Công tác,XThời<br />
[ Xgian, Trình tự, khối lượng<br />
1, j , X 2, j ,..., X i , j ,..., X D , j ]<br />
Bước 4: Xác định vùng đệm công việc, và loại chờ tiến độ và giá trị<br />
Lựa chọn tổ đội<br />
Thời gian: Chuyển công tác trước của i lên trước theo<br />
Bước 5: Tính toán giá trị ghép sát<br />
Sai hướng thời gian. t(w)buffer = t(w) + timelead Bước 2: Lập 1:<br />
hàm phânthông<br />
phối số<br />
= t(w) công tác trước<br />
Khối lượng: Chuyển predecessor_<br />
all_predecessor buffer - t(w)successor_temp<br />
của i sang trái theo<br />
Bước Nhập<br />
w(t) t(w)<br />
hướng khối lượng. t(w)buffer = t(w) + worklead Công tác, Thời gian, Trình tự, khối lượng<br />
công việc, và loại chờ tiến độ và giá trị<br />
Bước 6: Lập tiến độ công tác i<br />
t(w)activity_i = t(w)successor_temp +<br />
max( all_predecessor)<br />
Sai Bước 5: Tính toán giá trị ghép sát<br />
all_predecessor = t(w)predecessor_buffer - t(w)successor_temp<br />
Bước 2: Lập hàm phân phối<br />
Thời gian: {max FTi,j | i=1,2, ,N} w(t) t(w)<br />
i:=i+1 Đúng<br />
i=N? Tất cả công việc Kết thúc<br />
Chi phí: C i<br />
Bước 6: Lập tiến độ công tác i 1<br />
<br />
t(w)activity_i = t(w)successor_temp +<br />
max( all_predecessor)<br />
Hình<br />
Hình Các<br />
3. 3. bước<br />
Các bướctính tínhtoán tiến độ<br />
toántiến độ<br />
Thời gian: {max FT i,j | i=1,2, ,N}<br />
i:=i+1 Đúng<br />
Lấy dự án đào rãnh làm ví dụ, ∆w được đặt là 1 mét.<br />
i=N? Tất cả công việc<br />
Tại bước 3 chỉ ra các Kết<br />
cặp thúc<br />
quan hệ công việc.<br />
Chi phí: Ci<br />
Trong nghiên α1 –xem<br />
cứu này<br />
Luôn luôn: α2 xét<br />
vùnghaiđệm<br />
loạithời<br />
vùnggian<br />
đệm (gián 1Luônđoạn). luôn: w 1 – wđệm<br />
Vùng 2 vùng<br />
thời đệm<br />
gian khối lượng<br />
yêu cầu công việc<br />
sau phải duy trì Thời<br />
so với<br />
gian công việc trước một khoảng thời gian trênThời trục thời gian. Vùng đệm khối lượng<br />
có nghĩa là công tác sau phải luônHình điVùng<br />
trước3. Các một bước<br />
đệm công<br />
tính<br />
khoảng toán<br />
cách thiểuđộvề bên phải so với<br />
tốitiến<br />
gian<br />
công tác trước<br />
Vùng đệm công<br />
tác trước<br />
Công tác sauHình 4 minh họa bước 4 đến 6 trong quá trình tính toán tiếntácđộ.<br />
dọc theo trục khối lượng. trước<br />
Công tác sau<br />
Khoảng dịch Khoảng dịch Vùng đệm<br />
khối lượng<br />
chuyển xa nhất chuyển xa nhất<br />
Vùng đệm<br />
Luôn αluôn: α1 – α2 vùng đệm thời gian<br />
thời gian Luôn luôn: w1 – w2 vùng đệm khối lượng<br />
2<br />
i α2 i Công tác trước<br />
Công tác trước<br />
α1 Thời gian α1 Thời gian<br />
max( i) Công tác sau_tạm<br />
Vùng đệm công<br />
Khối lượng max( i) Công tác sau_tạm Khối<br />
Vùnglượng<br />
đệm công<br />
tác trước tác trước<br />
Công tác sau<br />
w w1 w2 Công tác sau<br />
Khoảng dịch Vùng đệm thời gian Khoảng dịch Vùng đệm khối Vùng đệm<br />
lượng<br />
khối lượng<br />
chuyển xa nhất chuyển xa nhất<br />
Vùng đệm<br />
thời gian<br />
α2<br />
i<br />
Hình 4. Tính toán tiến độ giữa 2 công<br />
α tác i Công tác trước<br />
2<br />
Công tác trước<br />
α1 α1<br />
max( i) Công tác sau_tạm Khối lượng max( i) Công tác sau_tạm Khối lượng<br />
w w1 w2<br />
Vùng đệm thời gian Vùng đệm khối lượng<br />
<br />
Hình4.4.Tính<br />
Hình Tính toán tiếnđộđộgiữa<br />
toántiến 2 công<br />
giữa tác tác<br />
2 công<br />
<br />
60<br />
Tạp chí Khoa học Công nghệ Xây dựng NUCE 2019<br />
Học, T. Đ. / Tạp chí Khoa học Công nghệ Xây dựng<br />
2 2<br />
yB (w) = 0,3 × w - 0 - 0,3 × w - 8<br />
Thời gian (h) Thời gian dự án 2 2<br />
+0,2 × w - 8 - 0,2 × w - 16<br />
42,2 2 2<br />
+0,1× w - 16 - 0,1× w - 24<br />
Phân khu 1 Phân khu 2 Phân khu 3<br />
40 A. B.<br />
37,4<br />
Công tác B Đào đất Đặt ống<br />
32 31<br />
Tất cả công việc<br />
Chi phí = åC<br />
1<br />
i<br />
<br />
<br />
24<br />
Vùng đệm thời<br />
19,2<br />
20 gian = 2h<br />
Công tác tạm B<br />
16 Vùng đệm khối<br />
lượng = 4m<br />
12<br />
1 1<br />
Công tác A yA (w) = 1× w - 0 - 1× w - 8<br />
8 8<br />
1 1<br />