基于复杂曲线表示的切比雪夫多项式拟合并行算法
第。7卷第6期上海交通大学学报
V01.钾N¨-6
===========2====;==2==========;=====z==================;===========;;;==z==!==============k=22222=;==f=!=========一一一
20(日年6月
J()URNALOFSHAN(;HATJIAoToNGUNlVERSlTY
J…1
2…嵋
文章编号:1006
2467(2003)06一0906一od
基于复杂曲线表示的切比雪夫多项式拟合并行算法
邓倩妮1,
陈
笠2,
陆鑫达1,
何赢潮1
(1.1海交通大学计算机科学与工程系,上海20。030;2.上海交通大学机械与动力工程学院,r海200030)
摘
要:骨科临床造型系统中进行假体再造时,要对CT片上的原始点采用数学逼近法进行优化
处理.常用的数学逼近法中切比雪夫多项式拟和法误差较小,对此,提出一种基于复杂曲线表示的切比雪夫多项式拟合并行算法.并采用两种】ava方案实现并行程序.实验结果表明,与一般的切比雪夫多项式拟舍串行算法相比,基于复杂曲线表示的切比雪夫多项式拟合并行算法保持了较高的计算精度,并获得了显著的加速比.
关键词:并行计算;数据拟合;切比雪夫多项式;多线程;Java远程方法调用
中圈分类号:TP
338.6
文献标识码:A
ChebysheVMuItinomialApproximationPara¨elA190rlthm
Based
0n
COmplexCurVeRepresentation
DENGQjan—mt,CHENL12、£UXtnci0,HEY1ngchaoj
(1
Dept.ofC。mputerScience&Eng.,Sha“ghalJia。t。“guniv.,Sha“ghai200030,ch¨1a2.school。fMechanical
Eng.,shanghaiJiaotonguniv.,sha“ghai200030,chlna)
Abstract:1ntheprocessofre—sculptinga九mcialboneinclinicorthopaedicssculptlng8ystem。t11csamplI“gdatafr。mCT
scan
im89emustbeoptimizedandsmoothedwithmathematicalapproximatingmel}1。ds.
In
generic
mathematicalapproximationmethodsChebyshevmultinomialapproximat沁nalgom}、mhasbetlereffect
on
reducingappr。xlmati。n
err。r.Thispaperbro“ghtf。rward
a
parallelChebyshevmultlnomla】ap
proximat】onalgorlthmbasedon
a
uniquerepresentationofconlplexcurve,andimplemcnted
the
paraIlel
p呻gram
In
two
Javameth。ds.Theexpe“mentresu工tsshow仆Lattheparallc【Chebyshevmultirmmialap~
proximatiunalgorithmbased
on
complex
curve
representatio“gdthesignmcantspeedupandbettercah
L【-
lati“gprecisioncomparedwithnormalsequentiaIChebyshevmuh】nomialapproxlmati。nalgorithnl.
Key
words:parallelc。mputing;dataapproxlmatio“;Chebyshevmultinomial;multi—thread;JavaRMI
骨科临床造型系统中,为病人定做人工髋关节形式存放在磁盘上,以便输入机械设计软件或加工时,首先对病人髋关节部位进行cT扫描得到图像设备进行设计和加工.但这种方法存在着种种弊端,灰度图,然后通过人工提取或图像处理软件提取骨如人工取点时位置误差、取点次序错误、点的疏密不骼内侧,即髓腔曲线的各点.这些原始数据以文件的
均、图像软件处理存在误差等,如果直接用其来造
收椭日期;2002一()3
16
基金璃目:国家自然科学基金资助项目(69773014)
作者简介一邶情妮(1
973),女,广西柳州人,副教授(在职博士生),主要研究网络计算和并行计算.电话(Tel.)021—62932632
E伽Il:qflde“g@8】tu.edu
cn
万方数据
第6期
邓倩妮,等:基于复杂曲线表示的切比雪夫多项式拟合并行算法
907
型,曲面的轮廓会非常粗糙,生产的人工关节应力分布不理想.造成人工关节的稳定性下降.因此,要对
原始采样点进行数学逼近,用平顺光滑的曲线来表
示人].关节的轮廓.在常用的数学逼近方法中切比雪夫多项式拟合法…”误差较小,囡此,本文提出了
一个纂于复杂曲线表示的切比雪夫多项式拟合并行
算法j“,并用Java语言“o实现了该算法.
1数学逼近方法的比较
常用的数学逼近方法有:最小二乘多项式拟合法和切比雪夫多项式拟合法.
(1)最小二乘多项式拟合法.对一批点(z,,计)
(一l,2,…,m)构成的函数关系表,构造”次代数
多项式:
.1)。(z)一“o+“Iz+…+n。一
使得
s一∑扛P(妁一y,]2
达到最小,则称多项式P(x)为y(x)的最小二乘拟台多项式.在求解P(x)的过程中,会产生较大的误差,使结果变得不可靠甚至难以求解““.
(2)切比雪夫多项式拟合.切比雪夫多项式:
71。(』)一cos(n・arccosz),
一1≤z≤1
对一批点(x.,y.)(i一1,2,…,n1)构成的函数关系表,构造n次代数多项式:
Q。(})=d。,,,。0)+Ⅱ,丁,0)+…+n。丁。(})使得
s一∑击[Q(矗)一M]2
达到最小,则称多项式Q(x)为y(x)的切比雪夫拟合多项式.随着切比雪夫多项式拟合次数的上升,拟合曲线各部分的误差同时减小,且减小得非常迅
速““.
2平面CT轮廓曲线的特殊表示方法
平面cT曲线轮廓是一个形状复杂的封闭曲线.由图】可见,复杂的曲线无法用单值函数y一,(z)来表示.因此,引人参数方程组
丁一z(£),y—y(£)
来表示复杂曲线,参数£的物理意义为从曲线上某一基准点起的曲线长度.对不封闭的曲线,这个点一般可以取为曲线的一个端点;对于封闭曲线则可以任意取某个点.参数r的定义区间为[o,工](L为曲线总长),也町以将参数£标准化到区间[o,1].
万方数据
y1D
图1
同一横坐标对应多个纵坐标
Fig.1
OneT—coordinatecorresponded
to
several
v
coordiantes
实际拟合时,每个平面cT曲线原始输入的是1列点户,,户。,…,户,,其中点户-与户。。相同.将户。作为基准点,把从户。开始到A之间的折线长度£,作为参数£的近似值(j=1,2,…,m).参数计算简例如
图2所示.
图2参数计算简例
Fig.2
AnexampleofparametercalcuIating
因此,要将原始的数据点户-(z。,∥,),A(上:,
y2),…,户。(z。,y。)转换为ql(£i,z1),q2(f2,茁2),…,g。(£,,z。)和rl(fl,一1),r2(屯,y2),…,r。(f。,y。).其
中“一0,
轳∑・庀ii了耳瓦了i了
J一0
l一2,3,…,m
3切比雪夫多项式拟合并行算法
3.1切比重夫多项式拟台串行算法
切比雪夫多项式拟台串行算法可分5个步骤:(1)求拟合用的参数.对原始cT片上的每一个数据点户,(z。,y1),声2(z2,弛),…,声。(z,,%)计算它们到基准点户。的折线长度£,,其中£,=O,
f,一f,一1+ ̄/“.一卫,一1)。+(j,,一y一】)。
≠一2,3,…,m
(2)自变量映射.如果所给区间■,6]上的列表函数为(f.,z.)(i一1,2,…,m,Ⅲ为原始点数目),则通过线形变换
908
上海交通大学学报
第3F卷
f’一}2f一(d+6)j/(Ⅱ一6)
把点列£,∈[“,6]映射到z‘,∈[一】,1]上,从而得到
一组新的点列(一,z.)(i一1,2,…,m).
(3)若最终要得到的拟合多项式次数为”,则求切比雪夫”+1次多项式的n+1个零点,
”,一。08瓦而“,7一l,2,…,”+l
w,一cos害三去“,i—l'2'…,”+l
(4)以新的列表函数(f:,z,)(f一1,2,…朋)为
原始数据进行分段低次插值,再以切比雪夫”+1次
多项式71一(z)的零点W,为自变量代人插值多项
式求出对应的z:.
(5)将(w,,z÷)代人下式:
一、;塾一一詈窑r㈨“
求出d,(i—o,1,…,n),得n次多项式
Q。(f)一日。Y10(f)+“l丁l(f)+…+n。71。(f)3.2切比雷夫多项式拟合并行算法
设共有m—c×d个点,其中并行处理机为c
台,d>n将计算参数“,o矿”,£。的任务平均分配到
r台处理器.每台处理器并行地以该处理器分配到的第一个输入点(对J号处理器该点为户Ⅳ)为基准开始计算参数‘,即:
处理器1,输入户l,A,…,∞,计算£。,f2,…,“;处理器2,输入加,pd十1,…,户2d,计算如+l,£¨2,
:
处理器f,输入A一一,加一“,,…,户。,计算
tⅢ一d}1,}m
d+2'…'£。.
对第,(J=l,2,…,f)台处理器,令如一o,
z,=£,一1+ ̄/(z.一七.一1)2+(弘一”_1)2
i一∥+1,…,(J+1)d
当处理器1计算出白,立即将之传给处理器2,
处理器2在完成初始计算后,将所有的参数£,(一d
+1,d+2,…,2d+1)都加上“如果此时处理器2已经计算出fⅢ则马上计算}。一一£口+妇,并将£。一立即传递给处理器3.处理器3在计算参数f时要加上f。一,这时处理器2可以并行地做余下的加法操作.以此类推.而处理器f则需要把£,广播给所有处理器3,以便下一步计算.
该方法在计算点与点距离时可以完全地并行,最后相加时类似流水操作.计算步为2d十c一1,而不采用并行流水操作,串行计算需要2出步.
在剩余步骤中,数据相关性主要表现在同一组数据前后的相关性,并将它们平均分配给多台处理
万方数据
器.整个并行计算的时空图如图3所示.在求取参数的过程中,各台处理器之间存在通信,以流水线的方式工作;在后面的各步中,处理器之间不存在通信,它们可以并行求出切比雪夫多项式系数的部分值,然后传给一个主控程序求出切比雪夫多项式系数.
5
髂4副3
烈2
1
口计算■通信开销
计算步骤
图3切比雪夫多项式拟合并行计算时空图
F19.3
rI、1mcgraph。f
paraI】el
Chebysh㈣u【tlllomla
approⅪmati。nalgorltbm
4实现并行处理
目前主流的并行编程环境有共享变量和消息传递等模式.共享变量编程模型(如Pthread)假设单地址空间,无需进行数据分配,适于开发细粒度并行性,但它们不存在广泛接受的标准+对平台依赖性很大;而在消息传递程序(如PvM,MPI)中,用户必广泛使用并已经成为并行计算中事实上的标准,但在开发细粒度并行性和平台间无缝移植上仍存在问于解决传统方法中存在的问题.本文采用多线程和远程方法调用(RMI)两种方法实现了切比雪夫多项式拟合并行计算.
(1)用Java多线程进行切比雪夫多项式拟合.Enterprise450上
度由线程数目(1,2,3,4)表示,服务器配置为:4路对称多处理SUN
UltraSPARC一Ⅱ(296MHz)
MB内存,solaris2.6操作系统,JDKl.2
(JIT,NativeThread).90次切比雪夫多项式拟合性
能测试结果如表1所示.
4个cPu服务器sun
Ente7prjse
450的性能测试结果
Tab.1
Performance
tes“ngresults
on
Sun
Ente。prise
4S0
(2)用JavaRMI在工作站Clu“cf上进行切比
须为进程显式地分配数据和工作负载,虽然它已被题.Java语言所具有的可移植性和平台无关性有利在一台4个cPu的服务器sun
用多Java线程实现切比雪夫多项式拟合并行计算,线程之间通过修改共享变量来传递数据.程序并行cPu.512
裹l
第6期
邓倩妮,等:基于复杂曲线表示的切比雪夫多项式拟合并行算法
g()9
雪夫多项式拟合.在4台1二作站上用多Java线程实现切比雪夫多项式拟合并行计算,线程之间通过RMI传递消息.程序并行度由线程数目(1,2,3,4)表示,工作站的配置为:SuN
UltrasPARc(143
采用消息传递模式的实验方案获得更高的加速比,因此,切比雪夫多项式拟合的并行算法是细粒度级的网络密集型计算,适合用共享变量的模式来实现
MHz)cPu,64MB内存,100Base—T网络接口(与
Baystack350T交换机相连),s01aris
5结语
基于Java并行编程环境的性能测试表明,提出的切比雪夫多项式拟和并行算法具有较高的加速比.随着Java语言优化技术的不断提高,纯Java解决方案和并行数值计算一定可以得到完美的结合.
参考文献:[1]
黄友谦,李岳生.数值逼近[M]第2版.北京:高等教
育出版社,1987.77
[2]
136.
2.51操作系
统,儿)K1.1.7(儿T,NaljveThread).90次切比雪
夫多项式拟合性能测试结果如表2所示.
衰2
Tab.2
4台sunUltra工作站上选代5次的性能测试结果
Performnnce
workstations
tes“n£results
oⅡfour
Sun
UItra
欧阳联渊计算机数值计算方法[M].北京:国防_:l‘业
出版社.199755—76.
[3]孙家昶,张林波,迟学斌,等.网络并行计算与分布式编程环境[M].北京:科学出版社,199710j一123
由表1和2可见,这两种方案在处理器台数增加时可以获得较好的加速比.这是由于本文中的切比雪夫多项式拟合并行算法中除了计算参数时各台处理器之间需要同步和通信之外,剩下的步骤各台处理器之间不需要进行通信.由此可见,该并行算法的有效性.另外,采用共享变量多线程的实验方案比
[4]
Sunderam
VS,GeistGA
Heterogene。usparn¨e
Par8HeI
anddistrmuted
computmg[JJcompunng,
1999,25:1699—1721.
[s]HorstmanncsJava2核心技术卷1:基础知识
203.
[M].北京:机械工业出版社,1999.155
上海港国际集装箱运输系统规划
王坚英,
张仁颐
(上海交通大学船舶与海洋工程学院,上海200030)
摘要:综合两种灰色模型得出上海港集装箱吞吐量发展水平的预测值.选取3条主要的国际航线,分别是上海~美国,上海一欧洲、上海一日本.建立单航线单船模型,用黄金分割击进行船型优选.以此为基础.从系统工程的角度结合港、航、船、货4个方面,对上述航线上的船舶进行优化配置,给出船队发展规划,从而为上海国际集装箱枢纽港的建设提供参考.
我国进口液化天然气的海上运输船队
郑海明,
张仁颐
(上海交通大学船舶与海洋工程学院,上海200030)
摘要:探讨了我国进口液化天然气(I.NG)海上运输船队的组织,为我国进口LNG项目建立了合理的船队规划模
型.一些文献中采用的船队规划模型在胃j单纯形法求解时得出构成船队的船舶数量为非整数而与实际情况不符,
但采取圆整的方法叉会带来较大误差.针对这种情况,在提出的新模型外屡加入对船舶数量进行模失搜索的方法,
使得求解出的船队规划符合实际情况,得出了我国进口LNG船队的最优规划,为我国进口LNG项目的开展提供了参考
万方数据