第一问思路
求解目标
若将吸收塔建于该圆形定日镜场中心,定日镜尺寸均为 6 m×6 m,安装高度均为4 m,且给定所有定日镜中心的位置(以下简称为定日镜位置,相关数据见附件),请计算该定日镜场的年平均光学效率、年平均输出热功率,以及单位镜面面积年平均输出热功率(光学效率及输出热功率的定义见附录)。请将结果分别按表 1 和表 2 的格式填入表格。
复述为:
在定日镜尺寸,安装高度与所有定日镜中心位置均固定的情况下,计算该定日镜场的年平均光学效率、年平均输出热功率,以及单位镜面面积年平均输出热功率。
需要设计一个算法能够通过定日镜的具体的参数去计算输出热功率这一指标。
计算过程
符号说明
符号 | 说明 | 单位 |
---|---|---|
α s \alpha_s αs | 太阳高度角 | |
γ s \gamma_s γs | 太阳方位角 | |
δ \delta δ | 太阳赤纬 | |
φ \varphi φ | 当地纬度 | |
ω \omega ω | 太阳时角 | |
α p \alpha_p αp | 定日镜俯仰角 | |
γ p \gamma_p γp | 定日镜方位角 | |
R R R | 定日镜场的半径 | |
H H H | 当地所在海拔高度 | |
H T H_T HT | 集热器中心到地面的距离 | |
H t H_t Ht | 吸收塔的高度 | |
H r H_r Hr | 集热器的高度 | |
E year E_{\text{year}} Eyear | 定日镜场的年平均输出热功率 | |
E u ‾ \overline{E_u} Eu | 单位面积镜面年平均输出热功率 | |
DNI \text{DNI} DNI | 法向直接辐射照度 | |
P i P_{i} Pi | 第 i i i面定日镜在镜面坐标系下的坐标 | |
V i V_{i} Vi | 第 i i i面定日镜在镜场坐标系下的坐标 | |
η \eta η | 定日镜的光学效率 | |
η ref \eta_{\text{ref}} ηref | 镜面反射率 | |
η sb \eta_{\text{sb}} ηsb | 阴影遮挡效率 | |
η cos \eta_{\text{cos}} ηcos | 余弦效率 | |
η at \eta_{\text{at}} ηat | 大气透射率 | |
η trunc \eta_{\text{trunc}} ηtrunc | 集热器截断效率 | |
e ⃗ i \vec{e}_i ei | 入射到定日镜的光线向量 | |
e ⃗ o \vec{e}_o eo | 定日镜反射的光线向量 | |
e ⃗ n \vec{e}_n en | 定日镜法向量 | |
W a W_a Wa | 定日镜镜面长度 | |
W b W_b Wb | 定日镜镜面宽度 |
具体计算
太阳方位的确定
太阳高度角:
sin
α
s
=
cos
δ
cos
φ
cos
ω
+
sin
δ
sin
φ
\sin\alpha_s=\cos\delta\cos\varphi\cos\omega+\sin\delta\sin\varphi
sinαs=cosδcosφcosω+sinδsinφ
其中, α s \alpha_s αs为太阳高度角,其范围为 [ 0 , 9 0 ∘ ] , δ [0,90^{\circ}],\delta [0,90∘],δ为太阳赤纬,即太阳直射纬度, φ \varphi φ为当地纬度, ω \omega ω为太阳时角,即正午时圈到当地时圈的角度。
太阳赤纬:
sin
δ
=
sin
2
π
D
365
sin
(
2
π
360
23.45
)
(
2
)
\sin\delta=\sin\frac{2\pi D}{365}\sin\left(\frac{2\pi}{360}23.45\right) (2)
sinδ=sin3652πDsin(3602π23.45)(2)
其中,
δ
\delta
δ为太阳赤绯,以北绯为正向,其范围为[-23.26°,23.26°],当
δ
>
0
\delta>0
δ>0时,太阳直射纬度在北半球,当
δ
=
0
\delta=0
δ=0时,太阳直射绯度在赤道上,当
δ
<
0
\delta<0
δ<0时,太阳直射纬度在南半球。
D
D
D表示当日距离春分日的天数。
太阳方位角
γ
s
\gamma_s
γs
cos
γ
s
=
sin
δ
−
sin
α
s
sin
φ
cos
α
s
cos
φ
\cos\gamma_s=\frac{\sin\delta-\sin\alpha_s\sin\varphi}{\cos\alpha_s\cos\varphi}
cosγs=cosαscosφsinδ−sinαssinφ
其中
φ
\varphi
φ为当地纬度,北纬为正;
ω
\omega
ω为太阳时角
ω
=
π
12
(
S
T
−
12
)
\omega=\frac\pi{12}(ST-12)
ω=12π(ST−12),
δ
\delta
δ为太阳赤纬
sin
δ
=
sin
2
π
D
365
sin
(
2
π
360
23.45
)
\sin\delta=\sin\frac{2\pi D}{365}\sin\left(\frac{2\pi}{360}23.45\right)
sinδ=sin3652πDsin(3602π23.45)
根据 α s \alpha_s αs, γ s \gamma_s γs计算得到太阳的具体方位,示意图如下图所示(A是太阳方位角,h是太阳高度角,两者可确定太阳位置):
定日镜光学效率计算
建立定日镜坐标系
首先需要建立定日镜坐标系,包括镜场坐标系和镜面坐标系
-
镜场坐标系,以集热器吸收塔为原点,正东方向为 X X X轴正向,正北方向 为 Y Y Y轴正向,垂直于地面向上为 Z Z Z轴正向建立镜场坐标系 X Y Z XYZ XYZ
-
对任意定日镜,令定日镜中心为原点 o o o,平行于镜面左右两边向上方向为 x x x轴的正方向,平行于镜面上下两边向右方向为 y y y 轴的正方向,以垂直于镜面向外方向为 z z z轴的正方向,建立镜面坐标系 x y z xyz xyz。
确定入射光线与出射光线方程
由题定义入射光线为
e
⃗
i
(
x
i
,
y
i
,
z
i
)
\vec{e}_{i}\left(x_{i},y_{i},z_{i}\right)
ei(xi,yi,zi)由于在镜场坐标系下太阳方位角与高度角已经确定,故根据几何关系入射光线计算公式为写为:
{
x
i
=
−
cos
α
s
cos
(
90
°
−
γ
s
)
y
i
=
−
cos
α
s
sin
(
90
°
−
γ
s
)
z
i
=
−
sin
α
s
\begin{cases}x_{i}=-\cos\alpha_s\cos(90°-\gamma_s)\\y_{i}=-\cos\alpha_s\sin(90°-\gamma_s)\\z_{i}=-\sin\alpha_s\end{cases}
⎩
⎨
⎧xi=−cosαscos(90°−γs)yi=−cosαssin(90°−γs)zi=−sinαs
即此时入射光线方程为:
e
⃗
i
=
(
−
cos
α
s
sin
γ
s
,
−
cos
α
s
cos
γ
s
,
−
sin
α
s
)
\vec{e}_{i}=(-\cos\alpha_s\sin\gamma_s,-\cos\alpha_s\cos\gamma_s,-\sin\alpha_s)
ei=(−cosαssinγs,−cosαscosγs,−sinαs)
对于反射光线,由于题目要求入射光线经定日镜中心应反射到集热器中心,因此 在定日镜中心和集热器中心的坐标确定时,两者的连线即为反射光线。同时由于入射光线与反射光关于镜面法向量对称,基于上述分析,设任意定日镜在镜场坐标系下中心点的坐标为:
P
i
(
X
i
,
Y
i
,
h
i
)
P_i(X_i,Y_i,h_i)
Pi(Xi,Yi,hi),其中
h
i
h_i
hi为定日镜中心点距离地面的高度,集热器在镜场坐标系下的坐标为:
I
(
0
,
0
,
H
T
)
I(0,0,H_T)
I(0,0,HT)因此可确定反射光线的单位向量为:
e
⃗
o
=
(
−
X
i
,
−
Y
i
,
H
T
−
h
i
)
x
2
+
y
2
+
(
H
T
−
h
i
)
2
\vec{e}_{o}=\frac{(-X_i,-Y_i,H_T-h_i)}{\sqrt{x^2+y^2+(H_T-h_i)^2}}
eo=x2+y2+(HT−hi)2(−Xi,−Yi,HT−hi)
联立
e
⃗
i
\vec e_i
ei与
e
⃗
o
\vec e_o
eo两式,根据入射光线,反射光线与平面法向量的关系可推导出镜面单位法向量的公式为:
e
⃗
=
e
⃗
o
−
e
⃗
i
∣
e
⃗
o
−
e
⃗
i
∣
\vec{e}=\frac{\vec{e}_{o}-\vec{e}_{i}}{|\vec{e}_{o}-\vec{e}_{i}|}
e=∣eo−ei∣eo−ei
定日镜姿态确定
根据已经推导得到的定日镜法向量 e n ⃗ ( e x , e y , e z ) \vec{e_n}\left(e_{x},e_{y},e_{z}\right) en(ex,ey,ez),可对定日镜姿态进行进一步推导,以确定定日镜的俯仰角和方向角:
-
定日镜的俯仰角
定日镜通过水半转轴的转动,其反射镜与水半地面形成的夹角即为定日镜的俯仰角 α p \alpha_p αp,其中根据简单几何推导可知,其值与定日镜的法向量与竖直 向形成的夹角相等,公式表达为:
cos α p = e z \cos\alpha_p=e_z cosαp=ez -
定日镜的方向角
定日镜通过纵向转轴的转动,其法向量在水平面的投影与正北方向的夹角即为定日镜的方位角 γ p \gamma_{p} γp,同样根据简单的几何推导,可知其方位角的表示公式为:
tan γ p = e x e y \tan\gamma_p=\frac{e_x}{e_y} tanγp=eyex
定日镜镜面反射率计算
镜面反射率与镜面的材料及清洁程度等因素有关,通过查阅资料可知,在大多数情况下,镜面反射率可取为一个常数,即:
η
r
e
f
=
0.92
\eta_{ref}=0.92
ηref=0.92
定日镜大气透射率计算
当太阳光在大气中传播时,部分太阳辐射能量会被大气吸收,造成实际到达集热器 的太阳辐射能量小于定日镜反射光线的太阳辐射能量。大气透射率能够刻画反射光线的 传播过程中大气吸收对太阳辐射能传递的影响。根据附录,大气透射率是关于镜面中心至集热器中心距离的二次函数,对于任意定日镜的大气透射率计算公式为:
η
a
t
=
0.99321
−
0.0001176
d
H
R
+
1.97
×
1
0
−
8
×
d
H
R
2
(
d
H
R
⩽
1000
)
\eta_{at}=0.99321-0.0001176d_{HR}+1.97\times10^{-8}\times d_{HR}^2 (d_{HR}\leqslant1000)
ηat=0.99321−0.0001176dHR+1.97×10−8×dHR2(dHR⩽1000)
其中,
d
H
R
d_{HR}
dHR为该定日镜镜面中心与集热器中心之间的距离,其公式表示为:
d
H
R
,
i
=
∣
P
i
−
I
∣
=
X
i
2
+
Y
i
+
(
h
i
−
H
T
)
2
d_{\mathrm{HR},i}=|P_i-I|=\sqrt{X_i^2+Y_i+(h_i-H_T)^2}
dHR,i=∣Pi−I∣=Xi2+Yi+(hi−HT)2
此处
I
I
I代指集热器中心坐标。
定日镜余弦效率的计算
入射光线倾斜入射到定日镜所在平面时,与定日镜中心法线存在着夹角 ,当 不为 0 时会产生一定的能量损失,即为余弦损失 ,减去这部分损失的能量之后即为余弦效率。查阅资料可得,
c
o
s
θ
cos\theta
cosθ在数值上恰好与余弦效率相等,可得到余弦效率的计算公式为:
η
cos
=
cos
θ
=
−
e
⃗
i
⋅
e
⃗
n
∣
e
⃗
i
∣
⋅
∣
e
⃗
n
∣
\eta_{\cos}=\cos\theta=-\frac{\vec{e}_i\cdot\vec{e}_n}{\left|\vec{e}_i\right|\cdot\left|\vec{e}_n\right|}
ηcos=cosθ=−∣ei∣⋅∣en∣ei⋅en
定日镜阴影遮挡效率计算
阴影遮挡的损失主要包括两个部分:吸收塔与集热器的阴影对太阳光线的遮挡以 及前排定日镜对后排定日镜的遮挡,对其进行分开考虑。
-
吸收塔遮挡面积 S t S_t St
此处假设吸收塔与集热器构成一个完整的圆柱体,则总高度 H s H_s Hs可表示为: H s = H t + H r H_s=H_t+H_r Hs=Ht+Hr,底面半径为集热器半径 d d d,在任意时刻,规则圆柱体的影子永 远为一矩形,该矩形的长为由圆柱高度和太阳高度角决定,如图 7 所示,矩形的宽即 为圆柱体的底面直径。因此,吸收塔与集热器的阴影区域面积 S t S_t St的计算公式如下:
S t = ( H t + H r ) tan α s ⋅ d S_t=\frac{(H_t+H_r)}{\tan\alpha_s}\cdot d St=tanαs(Ht+Hr)⋅d
同时定义0-1变量 b 0 b_0 b0对定日镜进行标记,判断其是否收到吸收塔遮挡的影响,其中 b 0 b_0 b0的计算公式为:
b 0 i = { 1 , x i 2 + y i 2 ≤ ( H t + H r tan α s ) 2 且 z 0 > z 1 ′ , 0 , 其他 . ( 8 ) b_0^i = \begin{cases} 1, & x_i^2 + y_i^2 \leq \left(\frac{H_t + H_r}{\tan \alpha_s}\right)^2 \text{ 且 } z_0 > z'_1, \\ 0, & \text{其他}. \end{cases} \quad (8) b0i=⎩ ⎨ ⎧1,0,xi2+yi2≤(tanαsHt+Hr)2 且 z0>z1′,其他.(8) -
定日镜遮挡面积
场地中的任何定日镜都有可能受到前排定日镜的遮挡。遮挡情况主要有两种:第一种是前排定日镜 B 在阳光照射下产生的阴影,其在后排定日镜 A 上的投影形成入射光线的遮挡区域;第二种是后排定日镜 A 反射的光线被前排定日镜 B 阻挡,该区域称为反射光线的遮挡区域。如下图所示:
首先定义在镜面坐标系下定日镜四个顶点的坐标表示为:
P
i
=
{
(
W
a
2
,
W
b
2
,
0
)
,
(
W
a
2
,
−
W
b
2
,
0
)
,
(
−
W
a
2
,
W
b
2
,
0
)
,
(
−
W
a
2
,
−
W
b
2
,
0
)
}
P_i=\left\{\left(\frac{W_a}2,\frac{W_b}2,0\right),\left(\frac{W_a}2,-\frac{W_b}2,0\right),\left(-\frac{W_a}2,\frac{W_b}2,0\right),\left(-\frac{W_a}2,-\frac{W_b}2,0\right)\right\}
Pi={(2Wa,2Wb,0),(2Wa,−2Wb,0),(−2Wa,2Wb,0),(−2Wa,−2Wb,0)},通过坐标变换将其投影到镜场坐标系下,其转换公式为:
V
i
=
R
Z
⋅
R
X
⋅
(
x
n
y
n
z
n
)
+
C
B
V_{i}=R_Z\cdot R_X\cdot\begin{pmatrix}x_n\\y_n\\z_n\end{pmatrix}+C_B
Vi=RZ⋅RX⋅
xnynzn
+CB
其中:
R
Z
R_Z
RZ是绕
Z
Z
Z轴的旋转矩阵,
R
X
R_X
RX是绕
X
X
X轴的旋转矩阵,
C
B
C_B
CB是平移向量,表示镜面中心在镜场坐标系中的位置。依据前面推导得到的入射光线向量方程与镜面法向量方程,可求解出三者分别为:
R Z = ( cos γ p − sin γ p 0 sin γ p cos γ p 0 0 0 1 ) R_Z=\begin{pmatrix}\cos\gamma_p&-\sin\gamma_p&0\\\sin\gamma_p&\cos\gamma_p&0\\0&0&1\end{pmatrix} RZ= cosγpsinγp0−sinγpcosγp0001 R X = ( 1 0 0 0 cos α p − sin α p 0 sin α p cos α p ) R_X=\begin{pmatrix}1&0&0\\0&\cos\alpha_p&-\sin\alpha_p\\0&\sin\alpha_p&\cos\alpha_p\end{pmatrix} RX= 1000cosαpsinαp0−sinαpcosαp C B = ( X i Y i h i ) C_B=\begin{pmatrix}X_i\\Y_i\\h_i\end{pmatrix} CB= XiYihi
通过求解上式可得
V
i
=
(
x
i
1
,
y
i
1
,
z
i
1
)
V_{i}=(x_{i1},y_{i1},z_{i1})
Vi=(xi1,yi1,zi1),构造在入射光线方向且过点
V
i
V_i
Vi的直线方程:
x
−
x
i
1
cos
α
s
sin
γ
s
=
y
−
y
i
1
cos
α
s
cos
γ
s
=
z
−
z
i
1
sin
α
s
\frac{x-x_{i1}}{\cos\alpha_s\sin\gamma_s}=\frac{y-y_{i1}}{\cos\alpha_s\cos\gamma_s}=\frac{z-z_{i1}}{\sin\alpha_s}
cosαssinγsx−xi1=cosαscosγsy−yi1=sinαsz−zi1
联立该直线方程与定日镜平面方程,即可求解
V
i
V_i
Vi沿着光线方向在镜场坐标系上的坐标
T
i
T_i
Ti,再将其进行反向坐标变换,从镜场坐标系投影到被遮挡定日镜A平面,得到最终投影点
T
i
′
T_i'
Ti′:
T
i
′
=
(
x
i
′
y
i
′
z
i
′
)
=
(
cos
γ
A
−
sin
γ
A
0
sin
α
A
sin
γ
A
sin
α
A
cos
γ
A
cos
α
A
−
cos
α
A
sin
γ
A
−
cos
α
A
cos
γ
A
sin
α
A
)
(
T
i
−
C
A
)
T_i'=\begin{pmatrix}x_i'\\y_i'\\z_i'\end{pmatrix}=\begin{pmatrix}\cos\gamma_A&-\sin\gamma_A&0\\\sin\alpha_A\sin\gamma_A&\sin\alpha_A\cos\gamma_A&\cos\alpha_A\\-\cos\alpha_A\sin\gamma_A&-\cos\alpha_A\cos\gamma_A&\sin\alpha_A\end{pmatrix}(T_i-C_A)
Ti′=
xi′yi′zi′
=
cosγAsinαAsinγA−cosαAsinγA−sinγAsinαAcosγA−cosαAcosγA0cosαAsinαA
(Ti−CA)
最终确定入射遮挡区域为:
S
m
1
=
{
(
−
W
a
2
,
y
i
1
′
,
0
)
,
(
x
i
1
′
,
y
i
1
′
,
0
)
,
(
x
i
1
′
,
−
W
b
2
,
0
)
,
(
−
W
a
2
,
−
W
b
2
,
0
)
}
S_{m1} = \left\{ \left(-\frac{W_a}{2}, y'_{i1}, 0\right), \left(x'_{i1}, y'_{i1}, 0\right), \left(x'_{i1}, -\frac{W_b}{2}, 0\right), \left(-\frac{W_a}{2}, -\frac{W_b}{2}, 0\right) \right\}
Sm1={(−2Wa,yi1′,0),(xi1′,yi1′,0),(xi1′,−2Wb,0),(−2Wa,−2Wb,0)}
同时定义决策变量
b
1
b_1
b1,用来判断入射光线是否被遮挡,其公式为:
b 1 i = { 1 , x ∈ [ − W a 2 , W a 2 ] , y ∈ [ − W b 2 , W b 2 ] , z 0 > z i 1 , 0 , 其他 . b_1^i=\begin{cases}1,&x\in\left[-\frac{W_a}{2},\frac{W_a}{2}\right],y\in\left[-\frac{W_b}{2},\frac{W_b}{2}\right],z_0>z_{i1},\\0,&\text{其他}.\end{cases} b1i={1,0,x∈[−2Wa,2Wa],y∈[−2Wb,2Wb],z0>zi1,其他.
即判断第i根入射光线是否被遮挡。
反射光线计算过程与入射光线计算过程类似,但是在光线方向与变换矩阵上存在不同。由前文对反射光线的计算中可得:
e
⃗
o
=
2
(
e
⃗
n
⋅
e
⃗
i
)
×
e
⃗
i
−
e
⃗
n
=
(
a
o
,
b
o
,
c
o
)
\vec{e}_{o}=2(\vec{e}_n\cdot\vec{e}_{i})\times\vec{e}_{i}-\vec{e}_n=(a_{o},b_{o},c_{o})
eo=2(en⋅ei)×ei−en=(ao,bo,co),依此推导出对任意定日镜,其反射光线方程为:
x
−
x
o
′
a
o
=
y
−
y
o
′
b
o
=
z
−
z
o
′
c
o
\frac{x-x_o^{\prime}}{a_\mathrm{o}}=\frac{y-y_o^{\prime}}{b_\mathrm{o}}=\frac{z-z_o^{\prime}}{c_\mathrm{o}}
aox−xo′=boy−yo′=coz−zo′
剩下计算步骤与入射遮挡一致,最终计算得到结果为:
S
m
1
=
{
(
−
W
a
2
,
y
o
1
′
,
0
)
,
(
x
o
1
′
,
y
o
1
′
,
0
)
,
(
x
o
1
′
,
−
W
b
2
,
0
)
,
(
−
W
a
2
,
−
W
b
2
,
0
)
}
S_{m1} = \left\{ \left(-\frac{W_a}{2}, y'_{o1}, 0\right), \left(x'_{o1}, y'_{o1}, 0\right), \left(x'_{o1}, -\frac{W_b}{2}, 0\right), \left(-\frac{W_a}{2}, -\frac{W_b}{2}, 0\right) \right\}
Sm1={(−2Wa,yo1′,0),(xo1′,yo1′,0),(xo1′,−2Wb,0),(−2Wa,−2Wb,0)}
同样定义决策变量
b
2
b_2
b2,用来判断反射光线是否被遮挡,其公式为:
b 1 i = { 1 , x ∈ [ − W a 2 , W a 2 ] , y ∈ [ − W b 2 , W b 2 ] , z 0 > z o 1 , 0 , 其他 . b_1^i=\begin{cases}1,&x\in\left[-\frac{W_a}{2},\frac{W_a}{2}\right],y\in\left[-\frac{W_b}{2},\frac{W_b}{2}\right],z_0>z_{o1},\\0,&\text{其他}.\end{cases} b1i={1,0,x∈[−2Wa,2Wa],y∈[−2Wb,2Wb],z0>zo1,其他.
根据光线追踪法,若光线传递的某一过程中被遮挡,则 不需要再计算后续过程.由此,根据上述三部分的阴影遮挡损失,得到阴影遮挡效率为:
η
s
b
=
1
−
∑
i
=
1
N
[
b
0
i
+
(
1
−
b
0
i
)
b
1
i
+
(
1
−
b
0
i
)
(
1
−
b
1
i
)
b
2
i
]
/
N
.
\eta_{\mathrm{sb}}=1-\sum_{i=1}^N\begin{bmatrix}b_0^i+(1-b_0^i) b_1^i+(1-b_0^i) (1-b_1^i) b_2^i\end{bmatrix}/N .
ηsb=1−i=1∑N[b0i+(1−b0i)b1i+(1−b0i)(1−b1i)b2i]/N.
定日镜集热器截断效率计算
由于太阳入射光并非完美的平行光,而是具有一定锥形角的一束锥形光线,因此,其反射光线也为一锥形光线,随着距离的增加,锥形光线的横截面不断变大,最后到达集热器时有可能成为一个巨大的锥形光斑,超过了集热器的吸收范围,造成了能量的溢出,进而影响了截断效率。
KaTeX parse error: Can't use function '$' in math mode at position 2: $̲n_r$为集热器接收到的光线,…
其中,
Q
r
Q_{r}
Qr为集热器接收能量,
Q
a
Q_{a}
Qa为镜面全反射能量,
Q
s
b
Q_{sb}
Qsb为阴影遮挡损失能量。
为了简化计算,我们假设所有的光线携带的能量相同,则上述公式可化简为:
η
t
r
u
n
c
=
n
r
n
a
−
n
s
b
\eta_{trunc}=\frac{n_{r}}{n_{a}-n_{sb}}
ηtrunc=na−nsbnr
其中
n
r
n_r
nr为集热器接收到的光线,
n
a
n_a
na为镜面反射的光线个数,
n
s
b
n_{sb}
nsb为阴影遮挡的光线个数。为了能够便于计算,此处结合阴影遮挡部分计算结果,仍然使用光线追踪法进行计算,入射光线与反射光线计算公式如上
(
15
)
(
19
)
(15)~(19)
(15) (19)所示,再分析集热器的吸收范围。
集热器接收锥形反射光线的范围
D
R
D_{_R}
DR仅为集热器圆柱外表面的曲面,即:
{
x
2
+
y
2
=
(
d
2
)
2
H
T
−
1
2
l
T
⩽
z
⩽
H
T
+
1
2
l
T
\begin{cases}\:x^2+y^2=\left(\dfrac{d}{2}\right)^2\\[2ex]H_T-\dfrac{1}{2}l_T\leqslant z\leqslant H_T+\dfrac{1}{2}l_T\end{cases}
⎩
⎨
⎧x2+y2=(2d)2HT−21lT⩽z⩽HT+21lT
其中, H T H_T HT为集热器中心点的高度, l T l_T lT为集热器的高, d d d 为集热器的直径。
联立反射光线的方程和集热器接受范围的方程,并对该联立方程组是否有解进行判别,通过数学推导,得到了判别式如下:
{
Δ
=
4
(
a
o
x
o
′
+
b
o
y
o
′
)
2
−
4
(
a
o
+
b
o
)
(
x
o
′
2
+
y
o
′
2
−
R
2
)
H
T
−
1
2
l
T
−
z
o
′
c
o
⩽
−
(
a
o
x
o
′
+
b
y
o
′
)
±
Δ
2
(
a
o
+
b
o
)
⩽
H
T
+
1
2
l
T
−
z
o
′
c
o
\left.\left\{\begin{array}{c}\Delta=4\left(a_{o}x'_{o}+b_{o}y'_{o}\right)^{2}-4\left(a_{o}+b_{o}\right)\left(x'_{o}{}^{2}+y'_{o}{}^{2}-R^{2}\right)\\\frac{H_{T}-\frac{1}{2}l_{T}-z'_{o}}{c_{o}}\leqslant\frac{-\left(a_{o}x'_{o}+b_{}y'_{o}\right)\pm\sqrt{\Delta}}{2\left(a_{o}+b_{o}\right)}\leqslant\frac{H_{T}+\frac{1}{2}l_{T}-z'_{o}}{c_{o}}\end{array}\right.\right.
{Δ=4(aoxo′+boyo′)2−4(ao+bo)(xo′2+yo′2−R2)coHT−21lT−zo′⩽2(ao+bo)−(aoxo′+byo′)±Δ⩽coHT+21lT−zo′
其中
e
⃗
o
=
(
a
o
,
b
o
,
c
o
)
\vec{e}_{o}=(a_o,b_o,c_o)
eo=(ao,bo,co)为反射光线,
(
x
o
′
,
y
o
′
,
z
o
′
)
(x'_o,y'_o,z'_o)
(xo′,yo′,zo′)为锥形入射光束在镜面上的落点在镜场坐标系中的表示坐标。
若满足以上条件,则说明方程组有解,集热器吸收了反射光线,若不满足,则说明方程组无解,集热器没有吸收到反射光线。
最后统计 n r n_r nr, n a n_a na与 n s b n_{sb} nsb,带入公式 ( 22 ) (22) (22)即可确定截断效率 η t r u n c \eta_{trunc} ηtrunc
年平均光学效率与输出热功率
通过上述对阴影遮挡效率
η
s
b
\eta_sb
ηsb、余弦效率
η
c
o
s
\eta_\mathrm{cos}
ηcos、大气透射率
η
a
t
\eta_at
ηat、集热器截断效率
η
t
r
u
n
c
\eta_{trunc}
ηtrunc以及镜面反射率
η
r
e
f
\eta_ref
ηref等的计算,最终可求得每一块定日镜的光学效率
η
\eta
η,根据附件其公式为:
η
=
η
s
b
η
c
o
s
η
a
t
η
t
r
u
n
c
η
r
e
f
\eta=\eta_\mathrm{sb}\eta_\mathrm{cos}\eta_\mathrm{at}\eta_\mathrm{trunc}\eta_\mathrm{ref}
η=ηsbηcosηatηtruncηref
则年平均光学功率为:
η
‾
=
∑
i
=
1
12
∑
j
=
1
5
∑
k
=
1
N
η
i
j
k
60
N
\overline{\eta}=\frac{\sum_{i=1}^{12}\sum_{j=1}^{5}\sum_{k=1}^{N}\eta_{ijk}}{60N}
η=60N∑i=112∑j=15∑k=1Nηijk
其中
i
i
i表示月份,
j
j
j表示一天的五个时刻,
k
k
k表示第
k
k
k个定日镜,
N
N
N表示定日镜的总个数
根据附件与查阅资料,某时刻的输出热功率的计算公式为:
E
f
i
e
l
d
=
D
N
I
⋅
∑
k
=
1
N
A
k
η
k
E_{field}=DNI\cdot\sum_{k=1}^NA_k\eta_k
Efield=DNI⋅k=1∑NAkηk
其中
A
k
A_k
Ak表示第
k
k
k面的采光面积,
D
N
I
DNI
DNI表示法向直接辐射辐照度,题目中给出的计算公式为:
{
D
N
I
=
G
0
[
a
+
b
exp
(
−
c
sin
α
s
)
]
a
=
0.4237
−
0.00821
(
6
−
H
)
2
b
=
0.5055
+
0.00595
(
6.5
−
H
)
2
c
=
0.2711
+
0.01858
(
2.5
−
H
)
2
\begin{cases}DNI=G_0\bigg[a+b\exp\bigg(-\frac c{\sin\alpha_s}\bigg)\bigg]\\a=0.4237-0.00821\left(6-H\right)^2\\b=0.5055+0.00595\left(6.5-H\right)^2\\c=0.2711+0.01858\left(2.5-H\right)^2\end{cases}
⎩
⎨
⎧DNI=G0[a+bexp(−sinαsc)]a=0.4237−0.00821(6−H)2b=0.5055+0.00595(6.5−H)2c=0.2711+0.01858(2.5−H)2
基于上述公式,可写出年平均输出热功率
E
y
e
a
r
‾
\overline{E_{\mathrm{year}}}
Eyear为:
E
y
e
a
r
‾
=
1
12
∑
i
=
1
12
1
5
∑
j
=
1
5
∑
k
=
1
N
D
N
I
i
j
⋅
A
k
⋅
η
i
j
k
\overline{E_{\mathrm{year}}}=\frac1{12}\sum_{i=1}^{12}\frac15\sum_{j=1}^5\sum_{k=1}^NDNI_{ij}\cdot A_k\cdot\eta_{ijk}
Eyear=121i=1∑1251j=1∑5k=1∑NDNIij⋅Ak⋅ηijk
故单位面积镜面年平均输出热功率
E
u
‾
\overline{E_{\mathrm{u}}}
Eu为:
E
u
‾
=
E
y
e
a
r
‾
∑
k
=
1
N
A
k
=
∑
i
=
1
12
∑
j
=
1
5
∑
k
=
1
N
D
N
I
i
j
⋅
A
k
⋅
η
i
j
k
60
⋅
∑
k
=
1
N
A
k
=
∑
i
=
1
12
∑
j
=
1
5
∑
k
=
1
N
D
N
I
i
j
⋅
η
i
j
k
60
⋅
N
\overline{E_u}=\frac{\overline{E_{\mathrm{year}}}}{\sum_{k=1}^NA_k}=\frac{\sum_{i=1}^{12}\sum_{j=1}^5\sum_{k=1}^NDNI_{ij}\cdot A_k\cdot\eta_{ijk}}{60\cdot\sum_{k=1}^NA_k}=\frac{\sum_{i=1}^{12}\sum_{j=1}^5\sum_{k=1}^NDNI_{ij}\cdot\eta_{ijk}}{60\cdot N}
Eu=∑k=1NAkEyear=60⋅∑k=1NAk∑i=112∑j=15∑k=1NDNIij⋅Ak⋅ηijk=60⋅N∑i=112∑j=15∑k=1NDNIij⋅ηijk
第一问求解
第一问中如镜面反射率,大气透射率与余弦效率等可单独依靠公式进行计算,但是如阴影遮挡效率与集热器截断效率则必须通过具体的光线入射与出射进行计算,于是最终选择采取3D全仿真建模与蒙特卡洛法进行求解,通过使用Python中的Vedo来实现3D建模,并且模拟了1744*255束锥形光线入射到定日镜阵列的场景计算阴影效率和其集热器截断效率。其具体的求解步骤如下:
-
场景构建
吸收塔和集热器:吸收塔被建模为一个立柱形的物体,集热器位于吸收塔顶部。吸收塔的高度固定,集热器
也被简化为一个圆柱体,放置在吸收塔的顶端。
镜子: 每个镜子在3D空间中被表示为一个带有法向量的平面。镜子的大小、位置和朝向由输入文件中的数据提供。为了更精确地计算反射,选取了将进行划分为16*16的网格,从而模拟每个小部分入射,反射和遮挡的情况。
-
光线的路径计算
太阳光线: 由于锥形光线切向角不超过 4.3 × 1 0 − 3 4.3\times10^{-3} 4.3×10−3,故在其范围内随机生成一条入射光线向量,入射方向由太阳高度角( α s α_s αs)和方位角( γ s γ_s γs)决定。
光线反射: 每个镜子根据其法向量将入射的太阳光线反射到吸收塔的方向。将集热器的曲面方程与反射光线方程联立,通过有无实数解可以判断该反 射光线是否落在集热器上
-
遮挡情况计算:
在光线传播过程中,需要判断它们是否会被其他镜子或吸收塔本身遮挡,依据光线追踪法,只要光线与其他物体相交则判断其无法继续下一步光路,将光线方程,平面镜方程与吸收塔阴影方程联立,即可判断该光线是否被遮挡。
-
重复步骤2,模拟1744*255条锥形光线随机入射的情况,统计被遮挡光线与抵达光线的数量,带入公式即可计算出阴影效率和集热器截断效率。
下面是具体建模场景与光线入射情况可视化图,通过3D建模的方式可详细把握每一个光线入射的过程:
第一问结论
根据可视化结果,可得出如下结论:
- 平均余弦效率、平均光学效率具有季节性,平均阴影遮挡效率、平均阶段效率与 日期关系较小。
- 定日镜在夏季的输出功率大于冬季。从 1 月至 12 月,定日镜的输出功率先增大, 后减小,并在 6 月取得最大值。上述情况产生的原因可能是夏季太阳直射点位于北半球, 辐射至定日镜场的太阳辐射能比冬季多。
第二问思路
问题2要求在吸收塔位置坐标,定日镜尺寸,安装高度,定日镜数目与位置均可变的条件下,确定最佳的参数使得定日镜场的年平均输出热功率达到60MW额定功率的条件下,其单位面面积年平均输出热功率尽量大。将其视为对于单位镜面面积的年平均输出热功率的优化问题,以题目中给出可变的参数为决策变量,同时基于题意和实际情况给出多个约束条件,转换为一个多变量非线性规划问题,由于题目具有较多的决策变量与非线性的特点,经过分析,采取某某算法结合某某算法对该问题进行求解。
基于非线性单目标规划的定日镜场优化模型
目标函数
在问题1中,已经推导得到了单位镜面面积的年平均输出热功率的表达式,问题2目标是使得单位镜面面积的年平均输出热功率达到最大,故目标函数可定义为如下形式:
max
L
,
W
a
,
W
b
,
h
i
,
N
,
M
i
E
‾
u
(
L
,
W
a
,
W
b
,
h
i
,
N
,
M
i
)
=
∑
i
=
1
12
∑
j
=
1
5
∑
k
=
1
N
D
N
I
i
j
⋅
η
i
j
k
60
N
\max_{L,W_a,W_b,h_i,N,M_i}\overline{E}_u\left(L,W_a,W_b,h_i,N,M_i\right)=\frac{\sum_{i=1}^{12}\sum_{j=1}^5\sum_{k=1}^NDNI_{ij}\cdot\eta_{ijk}}{60N}
L,Wa,Wb,hi,N,MimaxEu(L,Wa,Wb,hi,N,Mi)=60N∑i=112∑j=15∑k=1NDNIij⋅ηijk
其中
L
(
x
,
y
)
L(x,y)
L(x,y)为吸收塔所在位置坐标,
W
a
W_a
Wa与
W
b
W_b
Wb为定日镜的长度和宽度,
h
i
h_i
hi为定日镜统一按照的高度,
N
N
N为定日镜的数目,
M
i
(
x
i
,
y
i
)
M_i(x_i,y_i)
Mi(xi,yi)为第
i
i
i个定日镜所在的位置坐标。
约束条件
- 根据题意,吸收塔周围 100m 以内不设置定日镜,故吸收塔位置 L ( x , y ) L(x,y) L(x,y)与任意定日镜位置 M i ( x i , y i ) M_{i}(x_i,y_i) Mi(xi,yi)之间的关系应该满足:
∀ i ∈ { 1 , 2 , . . . , N } , ( x i − x ) 2 + ( y i − y ) 2 ≥ 100 \forall i\in\{1,2,...,N\},\quad\sqrt{(x_i-x)^2+(y_i-y)^2}\geq100 ∀i∈{1,2,...,N},(xi−x)2+(yi−y)2≥100
其向量定义为:
∀
i
∈
{
1
,
2
,
…
,
N
}
,
∥
M
i
−
L
∥
≥
100
\forall i\in\{1,2,\ldots,N\},\quad\|\mathbf{M}_i-\mathbf{L}\|\geq100
∀i∈{1,2,…,N},∥Mi−L∥≥100
- 镜面宽度不得小于镜面高度,故约束方程为:
{ W a , W b ∈ [ 2 , 8 ] W a ⩽ W b \left\{\begin{aligned}&W_a,W_b\in[2,8]\\&W_a\leqslant W_b\end{aligned}\right. {Wa,Wb∈[2,8]Wa⩽Wb
- 镜面边长在2m到8m之间且定日镜的安装高度在2m至6m之间,故有
{ h i ∈ [ 2 , 6 ] h i > 1 2 W a \left\{\begin{aligned}&h_i\in[2,6]\\&h_i>\frac12W_a\end{aligned}\right. ⎩ ⎨ ⎧hi∈[2,6]hi>21Wa
- 定日镜个数,虽然题目未明确指出个数的范围,但是其数量应该控制在一个较大且合理的范围内,故定义定日镜个数约束方程为:
N ∈ [ 1000 , 5000 ] N\in[1000\text{,}5000] N∈[1000,5000]
- 根据题意,为保持清洁,相邻的定日镜底座中心之间的距离比镜面宽度多 5m 以上,故:
∀ i , j ∈ { 1 , 2 , … , N } , i ≠ j , ∥ M i − M j ∥ ≥ 100 \forall i, j \in \{1, 2, \ldots, N\}, \quad i \neq j, \quad \|\mathbf{M}_i - \mathbf{M}_j\| \geq 100 ∀i,j∈{1,2,…,N},i=j,∥Mi−Mj∥≥100
- 定日镜均位于定日镜场的范围内,即在半径为350m的圆内,故:
∀ i ∈ { 1 , 2 , . . . , N } , x i 2 + y i 2 ≤ 350 \forall i\in\{1,2,...,N\},\quad\sqrt{x_i^2+y_i^2}\leq350 ∀i∈{1,2,...,N},xi2+yi2≤350
- 定日镜场的额定年平均输出热功率还需要达到 60MW,故:
E y e a r ‾ = 1 12 ∑ i = 1 12 1 5 ∑ j = 1 5 ∑ k = 1 N D N I i j ⋅ A k ⋅ η i j k ≥ 60 M W \overline{E_{\mathrm{year}}}=\frac1{12}\sum_{i=1}^{12}\frac15\sum_{j=1}^5\sum_{k=1}^NDNI_{ij}\cdot A_k\cdot\eta_{ijk} \geq 60MW Eyear=121i=1∑1251j=1∑5k=1∑NDNIij⋅Ak⋅ηijk≥60MW
综上所述,非线性单目标规划的定日镜场优化模型建立如下:
max
L
,
W
a
,
W
b
,
h
i
,
N
,
M
i
E
‾
u
(
L
,
W
a
,
W
b
,
h
i
,
N
,
M
i
)
=
∑
i
=
1
12
∑
j
=
1
5
∑
k
=
1
N
D
N
I
i
j
⋅
η
i
j
k
60
N
{
W
a
,
W
b
∈
[
2
,
8
]
W
a
⩽
W
b
h
i
∈
[
2
,
6
]
h
i
>
1
2
W
a
N
∈
[
1000
,
5000
]
x
i
2
+
y
i
2
⩽
R
(
x
i
−
x
)
2
+
(
y
i
−
y
)
2
⩾
100
(
x
i
−
x
j
)
2
+
(
y
i
−
y
j
)
2
>
W
b
+
5
E
‾
y
e
a
r
=
∑
i
=
1
12
∑
j
=
1
5
∑
k
=
1
N
D
N
I
i
j
⋅
A
k
⋅
η
i
j
k
60
⩾
60
M
W
\begin{aligned}&\\&\max_{L,W_a,W_b,h_i,N,M_i}\overline{E}_u\left(L,W_a,W_b,h_i,N,M_i\right)=\frac{\sum_{i=1}^{12}\sum_{j=1}^5\sum_{k=1}^NDNI_{ij}\cdot\eta_{ijk}}{60N}\\&\begin{cases}W_a,W_b\in[2,8]\\W_a\leqslant W_b\\h_i\in[2,6]\\h_i>\frac{1}{2}W_a\\N\in[1000,5000]\\\sqrt{{x_{i}}^{2}+{y_{i}}^{2}}\leqslant R\\\sqrt{{(x_{i}-x)}^{2}+(y_{i}-y)^{2}}\geqslant100\\\sqrt{{(x_{i}-x_{j})}^{2}+(y_{i}-y_{j})}^{2}>W_b+5\\\overline{E}_{{year}}=\frac{\sum_{i=1}^{12}\sum_{j=1}^{5}\sum_{k=1}^{N}DNI_{ij}\cdot A_{k}\cdot\eta_{ijk}}{60}\geqslant60MW&&\end{cases}\end{aligned}
L,Wa,Wb,hi,N,MimaxEu(L,Wa,Wb,hi,N,Mi)=60N∑i=112∑j=15∑k=1NDNIij⋅ηijk⎩
⎨
⎧Wa,Wb∈[2,8]Wa⩽Wbhi∈[2,6]hi>21WaN∈[1000,5000]xi2+yi2⩽R(xi−x)2+(yi−y)2⩾100(xi−xj)2+(yi−yj)2>Wb+5Eyear=60∑i=112∑j=15∑k=1NDNIij⋅Ak⋅ηijk⩾60MW
模型求解
由于本题决策变量较多,方程较为复杂,直接求解数值最优解难度较大,综合分析后,采取GA-BFGS混合优化算法求解上述模型最优解。具体的算法步骤如下所示:
-
Step1
给定吸收塔位置坐标、定日镜尺寸、安装高度、定日镜数目的初始值作为初始种群,根据各自数据的量纲在其范围内进行大步长遍历。
-
Step2
定义适应度函数为目标函数 E ‾ u ( L , W a , W b , h i , N , M i ) \overline{E}_u(L,W_a,W_b,h_i,N,M_i) Eu(L,Wa,Wb,hi,N,Mi),根据遍历指标计算适应度高低,选择较优个体进入下一代,并且对部分个体进行变异操作,随机调整个体的某些变量值,进行适应度比较,选择较高适应度个体生存。反复迭代直至选出最终种群,作为GA部分的中间最优解。
-
Step3
从遗传算法得到的最终种群中,选择适应度最高的个体作为BFGS算法的初始解,根据 E ‾ u \overline{E}_{u} Eu计算初始解的梯度与其Hessian矩阵,带入BFGS更新公式确定迭代方向和迭代步长,进行迭代得到最新解。
-
Step4
重复计算梯度和更新解的步骤,直到梯度小于设定的最终值。
第三问思路
过问题二的求解和查阅相关资料,我们发现定日镜的最优分布接近于以吸收塔塔底为圆心的同心圆上的等距分布。因此,为了简化模型,在问题三中提出了EB分区域同心圆规划策略,假设定日镜的最优排布方式为同心圆分布。相比于问题二,问题三中各定日镜的尺寸和安装高度可能会有所不同,但由于同心圆具有各向同性的特性,我们可以进一步假设每层同心圆上的所有定日镜具有相同的尺寸和安装高度。
在此基础上,问题三中的目标仍然是最大化单位镜面面积的年平均输出热功率。为此,我们在问题二的模型基础上,新增了关于每层同心圆上定日镜的尺寸和安装高度的决策变量,并更新了相关约束条件,从而构建了一个包含可变尺寸和高度的定日镜单目标优化模型。
EB分区域同心圆规划策略
EB分区域同心圆规划策略为:以吸收塔中心为圆心绘制同心圆,将定日镜场划分为多 个不同的区域,每个区域内划分为多层,定日镜底座安装在同心圆上。在每个区域内采 取不同的定日镜部署策略,使得每一层的定日镜均匀排布。
其具体布局如下图所示:
根据题目要求,相邻定日镜之间的间距至少比镜面宽度长 5m 以上,因此径向间距
Δ
D
\Delta D
ΔD满足条件:
Δ
D
=
W
a
+
5
\Delta D=W_a+5
ΔD=Wa+5
在第一个部署区域,即镜场半径较小,不会出现遮挡损失的区域,定日镜的部署策略是同一层的定日镜应尽可能地紧密排列,每一层的定日镜应该以径向间距
Δ
D
\Delta D
ΔD为直径的圆始终保持相切。
故此时每一层之间的间距满足的关系是:
Δ
R
i
,
j
=
Δ
D
\Delta R_{i,j}=\Delta D
ΔRi,j=ΔD
在第二个到第
N
c
N_c
Nc个部署区域中,定日镜的部署策略为在同一个区域内,每一层布置的定 日镜数量相同,不同层之间定日镜交错排列;不同区域间第一层的周向间距相等。并且定义方位间距因子
A
s
f
A_{sf}
Asf与周距因子
A
r
A_r
Ar来确定每个区域的层数。
根据上述关系,镜场中各区域首环定日镜方位间距计算公式为:
Δ
A
2
,
1
=
Δ
A
3
,
1
=
⋯
=
Δ
A
z
,
1
=
A
s
f
⋅
W
a
\Delta A_{2,1}=\Delta A_{3,1}=\cdots=\Delta A_{z,1}=A_{sf}\cdot W_a
ΔA2,1=ΔA3,1=⋯=ΔAz,1=Asf⋅Wa
区域内后层定日镜的方位间距满足关系:
Δ
A
i
,
j
=
2
R
i
,
j
s
i
n
(
Δ
α
i
,
j
2
)
\Delta A_{i,j}=2R_{i,j}sin(\frac{\Delta\alpha_{i,j}}2)
ΔAi,j=2Ri,jsin(2Δαi,j)
此时根据几何关系,除第1个区域外的区域内定日镜的排布规律如下图:
显然两层之间满足关系:
Δ
R
i
,
j
≥
(
Δ
D
)
2
−
(
Δ
A
i
,
j
2
)
2
\Delta R_{i,j}\geq\sqrt{(\Delta D)^2-(\frac{\Delta A_{i,j}}2)^2}\
ΔRi,j≥(ΔD)2−(2ΔAi,j)2
基于上述同心圆规划策略,在给定具体的
W
a
,
W
,
L
,
h
i
W_a,W_,L,h_i
Wa,W,L,hi等决策变量的条件下可唯一确定定日镜坐标
M
M
M这一决策变量,从而实现求解的简化。
目标函数
max L , W a , W b , h i , N , M i E ‾ u ( L , W a n , W b n , h n , N , M i ) = ∑ i = 1 12 ∑ j = 1 5 ∑ k = 1 N D N I i j ⋅ A k ⋅ η i j k 60 ∑ k = 1 N A k \max_{L,W_a,W_b,h_i,N,M_i}\overline{E}_u\left(L,W_{an},W_{bn},h_n,N,M_i\right)=\frac{\sum_{i\operatorname{=}1}^{12}\sum_{j\operatorname{=}1}^5\sum_{k\operatorname{=}1}^NDNI_{ij}\cdot A_k\cdot\eta_{ijk}}{60\sum_{k\operatorname{=}1}^NA_k} L,Wa,Wb,hi,N,MimaxEu(L,Wan,Wbn,hn,N,Mi)=60∑k=1NAk∑i=112∑j=15∑k=1NDNIij⋅Ak⋅ηijk
其中 L ( x , y ) L(x,y) L(x,y)为吸收塔所在位置坐标, W a n W_{an} Wan与 W b n W_{bn} Wbn为第n圈中定日镜的长度和宽度, h n h_n hn为第n圈定日镜的高度, N N N为定日镜的数目, M i ( x i , y i ) M_i(x_i,y_i) Mi(xi,yi)为第 i i i个定日镜所在的位置坐标。
规划变量与约束条件
在问题二的约束条件的基础上,需要修改的内容如下:
- 第n层同心圆上的定日镜的高度满足:
{ h n ∈ [ 2 , 6 ] h n > 1 2 W a \left\{\begin{aligned}&h_n\in[2,6]\\&h_n>\frac12W_a\end{aligned}\right. ⎩ ⎨ ⎧hn∈[2,6]hn>21Wa
-
第n层同心圆上的定日镜的尺寸满足:
{ W a n , W b n ∈ [ 2 , 8 ] W a n ⩽ W b n \left\{\begin{aligned}&W_{an},W_{bn}\in[2,8]\\&W_{an}\leqslant W_{bn}\end{aligned}\right. {Wan,Wbn∈[2,8]Wan⩽Wbn -
每一层定日镜的数量满足:
N n = 2 π r n d n N_n=\frac{2\pi r_n}{d_n} Nn=dn2πrn
其中,
r
n
r_n
rn为第
n
n
n层同心圆的半径,
d
n
d_n
dn为定日镜之间的最小间距,由此可推导同心圆总层数
N
c
N_c
Nc满足:
N
c
=
max
{
n
∣
∑
i
=
1
n
⌊
2
π
r
n
d
n
⌋
≤
N
}
N_c=\max\left\{n\mid\sum_{i=1}^n\left\lfloor\frac{2\pi r_n}{d_n}\right\rfloor\leq N\right\}
Nc=max{n∣i=1∑n⌊dn2πrn⌋≤N}
综上所述,问题三非线性单目标规划的定日镜场修改优化模型建立如下:
max
L
,
W
a
n
,
W
b
n
,
h
n
,
N
,
M
i
E
‾
u
(
L
,
W
a
n
,
W
b
n
,
h
n
,
N
,
M
i
)
=
∑
i
=
1
12
∑
j
=
1
5
∑
k
=
1
N
D
N
I
i
j
⋅
A
k
⋅
η
i
j
k
60
∑
k
=
1
N
A
k
{
W
a
n
,
W
b
n
∈
[
2
,
8
]
W
a
n
⩽
W
b
n
h
n
∈
[
2
,
6
]
h
n
>
1
2
W
a
N
∈
[
1000
,
5000
]
x
i
2
+
y
i
2
⩽
R
(
x
i
−
x
)
2
+
(
y
i
−
y
)
2
⩾
100
(
x
i
−
x
j
)
2
+
(
y
i
−
y
j
)
2
>
W
b
+
5
E
‾
y
e
a
r
=
∑
i
=
1
12
∑
j
=
1
5
∑
k
=
1
N
D
N
I
i
j
⋅
A
k
⋅
η
i
j
k
60
∑
k
=
1
N
A
k
⩾
60
M
W
\begin{aligned}&\\&\max_{L,W_{an},W_{bn},h_n,N,M_i}\overline{E}_u\left(L,W_{an},W_{bn},h_n,N,M_i\right)=\frac{\sum_{i\operatorname{=}1}^{12}\sum_{j\operatorname{=}1}^5\sum_{k\operatorname{=}1}^NDNI_{ij}\cdot A_k\cdot\eta_{ijk}}{60\sum_{k\operatorname{=}1}^NA_k}\\&\begin{cases}W_{an},W_{bn}\in[2,8]\\W_{an}\leqslant W_{bn}\\h_n\in[2,6]\\h_n>\frac{1}{2}W_a\\N\in[1000,5000]\\\sqrt{{x_{i}}^{2}+{y_{i}}^{2}}\leqslant R\\\sqrt{{(x_{i}-x)}^{2}+(y_{i}-y)^{2}}\geqslant100\\\sqrt{{(x_{i}-x_{j})}^{2}+(y_{i}-y_{j})}^{2}>W_b+5\\\overline{E}_{{year}}=\frac{\sum_{i\operatorname{=}1}^{12}\sum_{j\operatorname{=}1}^5\sum_{k\operatorname{=}1}^NDNI_{ij}\cdot A_k\cdot\eta_{ijk}}{60\sum_{k\operatorname{=}1}^NA_k}\geqslant60MW&&\end{cases}\end{aligned}
L,Wan,Wbn,hn,N,MimaxEu(L,Wan,Wbn,hn,N,Mi)=60∑k=1NAk∑i=112∑j=15∑k=1NDNIij⋅Ak⋅ηijk⎩
⎨
⎧Wan,Wbn∈[2,8]Wan⩽Wbnhn∈[2,6]hn>21WaN∈[1000,5000]xi2+yi2⩽R(xi−x)2+(yi−y)2⩾100(xi−xj)2+(yi−yj)2>Wb+5Eyear=60∑k=1NAk∑i=112∑j=15∑k=1NDNIij⋅Ak⋅ηijk⩾60MW
模型求解
由于在考虑EB布局的情况下,模型仍然过于复杂,直接套用第二问的GA-BFGS算法,在大区域的搜索能力仍然需要进行很长时间的求解计算,为了能够简化计算且较好的搜索到最优解,本文提出了PSO-GABF算法,即在第二问的基础上加入粒子群搜索算法,引入了粒子群算法的大规模搜索能力,与GA-BFGS的小规模精细搜索相结合,从而更好的搜索到最优解,下面是模型的具体求解步骤:
-
Step1 初始化粒子群
依据EB策略和前文获得的布局结论,给出一个较好解作为每个粒子的初始位置,包括 L , W a n , W b , n h n , N L,W_{an},W_{b,n}h_n,N L,Wan,Wb,nhn,N以及各层同心圆的相关决策变量,并且定义每个粒子的初始速度代表其在全空间中的搜索方向和步长。
-
Step2 粒子群搜索
根据粒子当前的位置和速度,更新粒子的下一位置: X i t + 1 = X i t + V i t X_i^{t+1}=X_i^t+V_i^t Xit+1=Xit+Vit,并且结合结合当前速度、个体最佳位置、全局最佳位置以及随机权重,对粒子速度进行更新: V i t + 1 = ω ⋅ V i t + c 1 ⋅ r 1 ⋅ ( P i b e s t − X i t ) + c 2 ⋅ r 2 ⋅ ( G b e s t − X i t ) V_i^{t+1}=\omega\cdot V_i^t+c_1\cdot r_1\cdot(P_i^{best}-X_i^t)+c_2\cdot r_2\cdot(G^{best}-X_i^t) Vit+1=ω⋅Vit+c1⋅r1⋅(Pibest−Xit)+c2⋅r2⋅(Gbest−Xit)其中, ω \omega ω是惯性权重, c 1 , c 2 c_1, c_2 c1,c2是学习因子, r 1 , r 2 r_1, r_2 r1,r2是随机数, P i b e s t P_i^{best} Pibest是个体最佳位置, G b e s t G^{best} Gbest是全局最佳位置。再将最新坐标带入适应度函数 E ‾ u \overline E_u Eu中,比较更新个体最佳和全局最佳适应度,直到迭代到规定次数或全局最佳适应度不再显著提升则停止粒子群搜索。
-
Step3 遗传算法迭代
将粒子群算法得到的最终解作为遗传算法的初始解进行迭代,给定较大步长进行步进,反复迭代直至选出最终种群,作为GA部分的中间最优解。
-
Step4 BFGS算法搜索
将GA得到的最优解作为BFGS算法的初始解,根据目标函数的梯度和Hessian矩阵,确定迭代方向,反复迭代直至收敛。
结合PSO的全局搜索和GA-BFGS的局部精细搜索,输出最终的最优解,即满足约束条件下单位镜面面积年平均输出热功率最大化的参数组合。
更新: V i t + 1 = ω ⋅ V i t + c 1 ⋅ r 1 ⋅ ( P i b e s t − X i t ) + c 2 ⋅ r 2 ⋅ ( G b e s t − X i t ) V_i^{t+1}=\omega\cdot V_i^t+c_1\cdot r_1\cdot(P_i^{best}-X_i^t)+c_2\cdot r_2\cdot(G^{best}-X_i^t) Vit+1=ω⋅Vit+c1⋅r1⋅(Pibest−Xit)+c2⋅r2⋅(Gbest−Xit)其中, ω \omega ω是惯性权重, c 1 , c 2 c_1, c_2 c1,c2是学习因子, r 1 , r 2 r_1, r_2 r1,r2是随机数, P i b e s t P_i^{best} Pibest是个体最佳位置, G b e s t G^{best} Gbest是全局最佳位置。再将最新坐标带入适应度函数 E ‾ u \overline E_u Eu中,比较更新个体最佳和全局最佳适应度,直到迭代到规定次数或全局最佳适应度不再显著提升则停止粒子群搜索。
-
Step3 遗传算法迭代
将粒子群算法得到的最终解作为遗传算法的初始解进行迭代,给定较大步长进行步进,反复迭代直至选出最终种群,作为GA部分的中间最优解。
-
Step4 BFGS算法搜索
将GA得到的最优解作为BFGS算法的初始解,根据目标函数的梯度和Hessian矩阵,确定迭代方向,反复迭代直至收敛。
结合PSO的全局搜索和GA-BFGS的局部精细搜索,输出最终的最优解,即满足约束条件下单位镜面面积年平均输出热功率最大化的参数组合。