matlab如何求空间一点到直线距离,一组空间点,求一条直线,使这些点到这个直线距离都相等...

本帖最后由 qiqik0521 于 2015-1-27 16:52 编辑

各位大侠,小弟初接触模拟退火算法,现在做一个程序,问题的描述是:

6个空间点,p1-p6.已知各点坐标x1,y1,z1。求一条直线,使该直线到上述点距离都相等。

空间直线可以用参数方程表达,x=at+px,y=bt+py,z=ct+pz(其中a,b,c是直线的方向向量。px,py,pz是直线上一点。t是直线参数。)

假设参数方程已知,我可以通过点到空间直线距离公式计算各点到直线距离。将计算得到的直线距离取平均值,然后用各距离减平均值,以该差值作为收敛目标(也就是各点到直线距离的差距越小越好,越接近目标)

我的问题是我的理论可以实现对直线方程的求解吗?以下是我的matlab程序,收敛不了,请大家帮小弟挑错

% 初始化过程 计算初始状态

pp=[361.954086685118,222.958293409968,57.3284760947955,-282.138702545910,-357.764981326235,-321.219260549933;

12.7017055583522,283.682166162709,355.435259006668,221.691115425287,0.0772113586361366,-157.707415860041;

-471.015149591140,-236.049854262889,-150.230911572783,-306.421592445076,-479.622244334522,-514.184148298648;

1,1,1,1,1,

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值