2021数学建模国赛A题思路

        由于种种原因不能写A题,挺可惜的。分享一下思路。

这个题让我们做两件事情,第一就是给定星星的位置确定目标抛物面:

        这个事情很容易实现,因为确定半径是300了,可以直接求方程。

        第二个事情是让我们调节四周的拉锁,使得目标区域接近目标抛物面。很容易的想到构造一个两千多维的函数(因为有两千多个拉锁),再构造一个函数刻画当前拉锁所确定的目标区域的状态和目标抛物面的距离(就是差距)我们的目的是缩小这个差距。注意的是这个函数必须是连续函数。不然后面模拟退火没发做了。然后在论文里证明一些这个函数的连续性。然后我们就可以模拟退火求差距的最小值。

        很好的一点在于,对于这个两千多维的函数我们不选择偏导,因为这个函数比较难以构造。所以我们考虑直接用三分法确定这个函数在某点的偏导数的近似值。因为我们求偏导数只是为了确定下一个状态该往那走。所以三分法就可以。这个地方也可以证明一下三分的时候取偏移量为多少比较合适。

        这样我们完全不用构造这个函数就能把问题解决掉。

        复杂度方面,每一次模拟退火退1e5次左右(每次确定导数的近似值常数2e3)然后退1e2次左右。这样大约十分钟以内可以跑出来,且精度应当是很高的。

  • 0
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值