APP下载

基于遍历搜索算法的太阳影子定位技术研究

2017-06-30王一凡张乐权尹泽文白昊东陶玲玲

科技创新导报 2017年12期
关键词:杆长影长影子

王一凡+张乐权+尹泽文+白昊东+陶玲玲

摘 要:该文对太阳影子定位技术进行了研究,在合理假设的基础上,结合Cooper经验公式,构建了消除物体长度的单目标优化模型。通过MATLAB编写遍历搜索算法进行求解,最终得到物体所在的经纬度,并且误差较小。由于该模型不需要物体的长度,适用范围较广,可以进一步应用到视频数据分析定位中。

关键词:太阳影子定位 Cooper经验公式 单目标优化模型 MATLAB遍历搜索算法

中图分类号:P128 文献标识码:A 文章编号:1674-098X(2017)04(c)-0237-02

伴随着21世纪大数据时代的到来,数据的利用显得越来越重要。对于生活中大量的视频数据,如何充分利用这些数据进行定位,在军事上和政治上显得尤为重要。在某些特殊的情况下,可以通过视频中的影子变化来定位;但是其核心还是太阳影子的定位问题。

太阳影子定位技术是通过在一段时间内,太阳影子随着时间的变化来对所处位置进行定位。

对于太阳影子定位技术主要考虑以下3个问题。

(1)建立太阳影子长度与各影响因素的数学模型。

(2)考虑到实际情况,该文着重研究在物体长度未知的情况下,如何通过太阳影子的变化确定物体所在地点和拍摄日期。

(3)通过对模型的改进,来消除物体高度未知对模型的影响。

1 数据来源及模型假设

該文中物体太阳影子的顶点坐标数据来自2015全国大学生数学竞赛A题附件[2]。

为了合理地解决问题提出以下假设:(1)不考虑大气对太阳光的折射。(3)太阳的运行速度是匀速运动。(4)太阳光为平行光。

2 定位模型的建立

2.1 研究思路

首先分析影子长度关于太阳高度角、杆长、时角的关系式;其次确定方位角关于太阳高度角、赤纬角的表达式。联立方程组得到最终的影长变化公式,再以影长变化平方最小建立单目标优化模型。

2.2 基础模型

2.2.1 影子长度

影子长度由太阳高度角hs和杆长直接决定,其中太阳高度角是太阳光射在地上与地面形成的夹角,可以得到初步的影长公式:

hs

2.2.2 太阳高度角hs

太阳高度角是太阳光的入射方向和地平面之间的夹角,更准确地说是太阳光的入射方向与地表切线形成的夹角,随太阳赤纬角δ、太阳方位角的变化而变化,表达式为:

式中:φ表示纬度,ω表示太阳时角。

2.2.3 太阳赤纬角δ

太阳赤纬角是太阳直射点的纬度,其变化造成了南北半球昼夜的长短变化,直射点在北半球昼长夜短,直射点在南半球昼短夜长(以北半球为例),直射点纬度范围在-N。由Cooper经验方程得:

式中:n表示某时期距1月1日的天数,1月1日时n。

2.2.4 太阳时角ω

太阳时角是某时太阳光线与当地正午时间太阳光线所成的角度,每隔1个小时变化15°,当地正午时刻太阳时角为。查阅相关文献[2],可知:

式中:表示子午线当地标准时间, 表示当地经度。

2.3 目标优化模型

由于特定时期、特定经纬度的影子太阳高度角和太阳方位角都可以求出,且一天中的不同时刻杆的影长仅与太阳高度角有关,故特定时期、特定经纬度的影长与太阳方位角都可求出。

常见的定位问题是已知影长和杆长寻找目标地点、拍摄日期,若是不知道杆的长度,那么目标模型需要去除杆长的影响。

对于任意,时刻,分别为对应时刻的太阳高度角,由影长公式hs,两时刻理论影长比值为,从而就可以消除杆长的影响。

模型将实际影长比值与理论影长比值差值的平方和最小为目标函数:

注:由文献附件提供的数据有21组,为使数据有明显差异性,以间隔10个点为分组,即第1个数据和第11个数据为一组,第2个数据和第12个数据为一组,以此类推。

3 算法求解

对于定位问题,有拟牛顿迭代法、多重搜索算法、人工鱼群算法等多种算法。其中遍历算法是一种较为可行的、操作性强的方法。算法流程:

(1)设定初始状态、循环条件、候选解确定准则。

(2)初步确定范围。设定精度ε1、幅度,满足判定准则,输出候选解,继续循环,直至循环结束。

(3)确定估计值。设定精度、幅度,以候选解为中心确定搜索范围,分部式循环搜索。

在笔者模型求解过程中设定精度为,幅度为,以参考文献[2]附件1数据为例,定位地点为(109.9E,19.4N),参考标准给的(110E,18N)。经纬度相差不超过,可以进行精确的定位。

误差主要来源:模型中部分公式为经验公式,存在误差;幅度过大,可进行三重搜索。

4 结语

该文通过建立单目标优化模型来研究太阳影子定位技术,研究了在物体长度未知的情况下,如何通过太阳影子的变化确定物体所在地点和拍摄日期。

创新点在于通过以影长变化平方和最小建立单目标优化模型,消除了物体长度未知的影响。最后结合Matlab使用遍历算法进行求解,解出较为精确的拍摄地址。由于没有考虑大气折射的影响,因此在后续的研究中可以将大气折射等影响因素加入,从而进一步定位的精确度。

参考文献

[1] 温欣妍.Matlab R2016a从入门到精通[M].北京:清华大学出版社,2017.

[2] 2015年高教社杯全国大学生数学建模竞赛赛题[EB/OL].(2016-09-22).http://special.univs.cn/service/jianmo/sxjmtmhb/2015/0910/1107276.shtml.

[3] Position of the Sun[EB/OL].(2016-11-13).https://en.wikipedia.org/wiki/Position_of_the_Sun.

[4] SundialTime Correction - Equation of Time[EB/OL].(2016-11-03).http://www.mb-soft.com/public3/equatime.html.

[5] 蔡志杰.太阳影子定位[J].数学建模及其应用,2015(4):25-33.

猜你喜欢

杆长影长影子
“拐弯”的影子
一种铰链四杆机构仿真教学课件的开发
和影子玩耍
利用相似形解决影子问题
不可思议的影子
谁不在谁不在
动力触探杆长修正系数试验研究
公路工程标准贯入试验与杆长校正参数的探讨