Matlab 变量数目未知的优化
由于原始问题更为复杂,下面用一个简单的例子来描述这个想法 例如,假设我们想把几个路由器天线放在一个房间的某个地方,这样手机就可以在桌子上获得最大的信号强度(接收功率>Pmax),而在床上获得最小的信号强度(接收功率Matlab 变量数目未知的优化,matlab,optimization,mathematical-optimization,genetic-algorithm,nonlinear-optimization,Matlab,Optimization,Mathematical Optimization,Genetic Algorithm,Nonlinear Optimization,由于原始问题更为复杂,下面用一个简单的例子来描述这个想法 例如,假设我们想把几个路由器天线放在一个房间的某个地方,这样手机就可以在桌子上获得最大的信号强度(接收功率>Pmax),而在床上获得最小的信号强度(接收功率R来测量,其中S在a处有一个单一的最大值S_0,并且由S(x)>const构造的集合是简单连接的,即S(x)=S_0*exp(-const*(x-a)^2) 给定一组天线a,得到的信号强度是单个天线的最大值 S_A(x) = max{S_a(x) : for all a in A} ,
a发送。它的信号强度可以通过一些S:R^3->R
来测量,其中S
在a
处有一个单一的最大值S_0
,并且由S(x)>const
构造的集合是简单连接的,即S(x)=S_0*exp(-const*(x-a)^2)
给定一组天线a
,得到的信号强度是单个天线的最大值
S_A(x) = max{S_a(x) : for all a in A} ,
这意味着我们“锁定”了最强的天线,这就是手机的功能
让K=R^3 x R
表示点的空间(位置、强度)。现在将K
的POI_min
和POI_max
的两个finite子集简化为K
。我们希望找到一组天线数量最少(|A |->min.
)的A
,满足以下条件:
for all (x,w) in POI_min : S_A(x) < w and for all (x,w) in POI_max : S_A(x) > w .
另一方面,您刚刚给出了一个示例问题,因此此解决方案可能不适用于您的情况,也不适用于您的情况。我确实做了一些假设。因此,在这个问题上更加具体可能会给你一个更好的答案。@AnderBiguri你的意思是这是一个没有人解决的问题吗?@AnderBiguri说的是你的问题太宽泛了。请在这里回答一个问题。提出一个特定的问题,指出您尝试了什么,并提供代码/。您是否使用了配置文件
?你试过先解决小问题吗?你确定这个问题不是由bug引起的吗?听起来你有一些代码不适合你。请包括代码,并说明哪些不起作用。
min_sphere = {(x_i,r_i) : from POI_min},
spheres_to_cover = {(x_i,r_i) : from POI_max}
A = {}
while not is_empty(spheres_to_cover)
power_set_score = struct // holds score, k
PS <- costruct power set of sphere_to_cover
for i = 1:number_of_elements(PS)
k = PS[i]
if intersection(k) \ min_sphere is not empty
power_set_score[i].score = |k|
else
power_set_score[i].score = 0
end if
power_set_score[i].k = k
end for
sort(power_set_score) // sort by score, biggest first
A <- add arbitrary point in (intersection(power_set_score[1].k) \ min_sphere)
spheres_to_cover = spheres_to_cover \ power_set_score[1].k
end while