单代号搭接网络时间参数的计算与关键线路的确定.docx
《单代号搭接网络时间参数的计算与关键线路的确定.docx》由会员分享,可在线阅读,更多相关《单代号搭接网络时间参数的计算与关键线路的确定.docx(9页珍藏版)》请在冰豆网上搜索。
![单代号搭接网络时间参数的计算与关键线路的确定.docx](https://file1.bdocx.com/fileroot1/2023-1/9/44dd826a-bb86-41c6-8ad4-015ae461480b/44dd826a-bb86-41c6-8ad4-015ae461480b1.gif)
单代号搭接网络时间参数的计算与关键线路的确定
单代号搭接网络时间参数的计算与关键线路的确定
一、上机目的:
1、理解、掌握单代号搭接网络在计算机中的存贮方法;
2、掌握计算单代号搭接网络时间参数的算法思想;
3、学会编制与调试较复杂的应用程序。
二、上机内容与步骤
长永高速公路第九标段某装配式砼板桥网络图
其中:
D1=0;D2=17;D3=18;D4=1;D5=3;D6=4;D7=1;D8=3;D9=2;D10=2;D11=18;D12=17;D13=28;D14=2;D15=3;D16=0。
FTS=14
FTS=10
FTS=7FTS=28
FTS=20
FTS=7
步骤:
1、建立工作关系数据(D1KN.DBF)、工作资源消耗数据库(D2KN.DBF)及工作时间参数输出结果数据库文件(D3KN.DBF)。
(1)打开新建表(D1KN.DBF),然后设计表,结果如下
(2)命令输入“list—回车”,表格建立完成后,输入相关的数据。
如下图:
(3)打开新建表(D2KN.DBF),然后设计表,结果如下
(4)命令输入“list—回车”,表格建立完成后,输入相关的数据。
如下图:
(5)打开新建表(D3KN.DBF),然后设计表,结果如下
(6)命令输入“list—回车”,表格建立完成后,输入相关的数据。
如下图:
2、编制最早开始时间与最早结束时间计算程序:
SETTALKOFF
ACCEPT"请输入工作约束关系数据库文件名称:
"toK1
ACCEPT"请输入工作资源消耗数据库文件名称:
"toK2
ACCEPT"请输入工作时间参数输出数据库文件名称:
"toK3
INPUT"请输入开始工作的最早开始时间:
"toES
EF=ES
SELECT1
USE&K1
SELECT3
USE&K3
REPLFOR节点号=1最早开始WITHES最早结束WITHEF
SELE2
USE&K2
GOBOTTOM
I1=节点号
N1=2
DOWHILEN1<=I1
SELE2
GON1
D2=持续时间
SELE1
GOTOP
I2=0
DOWHILE.NOT.EOF()
IF终点节点=N1
IFN1>=3
N2=起始节点
SELE3
GON2
ES=最早开始
EF=最早结束
SELE1
ENDIF
ES1=ES+STS
ES2=EF+FTS
I2=I2+1
ES3=MAX(ES1,ES2)
IFI2=1
ES4=ES3
ELSE
IFES3>ES4
ES4=ES3
ENDIF
ENDIF
ENDIF
SKIP
ENDDO
ES=ES4
EF=ES+D2
SELE3
GON1
REPL最早开始WITHES,最早结束WITHEF
N1=N1+1
ENDDO
SETTALKON
最早开始时间与最早结束时间程序运行结果如下图:
3、编制最迟开始时间与最迟结束时间计算程序:
SETTALKOFF
ACCEPT"请输入工作约束关系数据库文件名称:
"toK1
ACCEPT"请输入工作资源消耗数据库文件名称:
"toK2
ACCEPT"请输入工作时间参数输出数据库文件名称:
"toK3
INPUT"请输入终点号工作的最迟结束时间:
"toLF
LS=LF
SELE1
USE&K1
SELE3
USE&K3
REPLFOR节点号=16最迟开始WITHLS,最迟结束WITHLF
N1=15
DOWHILEN1>=1
SELE2
use&K2
GON1
D2=持续时间
SELE1
GOtop
I2=0
DOWHILE.NOT.EOF()
IF起始节点=N1
IFN1<=14
N2=终点节点
SELE3
GON2
LS=最迟开始
LF=最迟结束
SELE1
ENDIF
LF1=LS-FTS
LF2=LS-STS+D2
I2=I2+1
LF3=Min(LF1,LF2)
IFI2=1
LF4=LF3
ELSE
IFLF3LF4=LF3
ENDIF
ENDIF
ENDIF
SKIP
ENDDO
LF=LF4
LS=LF-D2
SELE3
GON1
REPL最迟开始WITHLS,最迟结束WITHLF
N1=N1-1
ENDDO
replaceall工作总时差with最迟结束-最早结束
SETTALKON
最迟开始时间、最迟结束时间与工作总时差程序运行结果如下:
4、关键路线的确定
settalkoff
useD3KN
publick
k=1
DIMENSIONA(100)
dowhile.not.EOF()
if工作总时差=0
A(K)=节点号
K=K+1
ENDIF
skip
ENDDO
M=K-1
K=1
"此网络图的关键线路为:
"
dowhileK<=M
ifK=M
STR(A(K),2)
else
STR(A(K),2)+"-"
ENDIF
K=K+1
ENDDO
settalkon
关键路线程序运行结果如下:
(注:
可编辑下载,若有不当之处,请指正,谢谢!
)