全文HTML
--> --> -->目前, 国内外已有许多研究人员从表征体元尺度和孔隙尺度对多孔介质内流体输运问题开展了研究[6,7], 结果表明多孔介质内流体流动和传热问题与传统流体输运问题有较大不同. 不同于前人研究工作, 本文聚焦于多孔介质微观孔隙结构与和宏观有效导热率之间的映射关系. 关于此问题, 已有不少****通过采用计算流体力学中的各类数值方法, 数值模拟多孔介质内传热过程, 进而预测出多孔介质的有效导热率[8,9]. 例如Fang等[8]考虑传导和辐射的综合作用, 采用离散纵坐标法求解辐射传递方程, 采用格子Boltzmann方法(LBM)预测了多孔介质的有效导热系数. Wang和Pan[9]采用LBM对开孔泡沫材料的有效热导率进行了预测, 并将预测结果与实验结果进行了对比, 结果显示吻合较好. 需要指出, 这种直接数值模拟方式尽管为预测多孔介质有效导热率提供了一种行之有效的计算方法, 但该方法往往需要较高的计算成本和计算时间. 近年来, 机器学习方法迅速发展, 其在多个工程应用邻域都展示了独特的优势, 其作为一种数据驱动的模型, 在完成模型训练后具有快速预测的特点[10,11]. 鉴于此, 最近Han等[12]通过使用二维多孔介质作为模型的输入, 训练了一个序列式的卷积网络模型进而对多孔介质的有效导热率进行预测, 结果表明基于卷积网络模型的预测结果与数值模拟方法得到的有效导热率数据吻合较好;他们还发现: 与传统数值模拟方法相比, 机器学习方法能够很大程度节省预测时间, 通过实验测得训练好的机器学习模型在单核2.4 GHz CPU工况下预测128 × 128尺寸多孔介质有效导热率只需0.06 s, LBM方法在相同的硬件下计算128 × 128的多孔介质导热率需106 s. 实际工程应用中, 除上述基于多孔介质结构进行有效导热率的直接预测外, 人们往往也关注其逆过程, 即基于人为给定的预定导热率设计出一类合理的多孔介质结构[13-16]. 针对该问题, 较为常用的方法是通过使用三维成像技术, 对有限个多孔介质的二维切片数据进行重构[17,18], 重构的方法包括多点统计(MPS)[19-21]、直接采样(DS)[22]和互相关的仿真算法(CCSIM) [23-27]等. 显然, 对于上述重构方法, 所获得的二维切片信息越多, 算法表现就越好. 但由于实验过程中只能获取局部的结构信息, 所以直接从不完善的二维图像信息重建三维图像往往十分困难. 为此, 已有科研人员提出另外一种重构思路, 即先对具有有限信息的二维图像进行重构, 然后再将所得的二维重构图像应用于三维图像的重建[28]. 基于这种思路, 研究人员将许多机器学习技术应用于多孔介质的重构过程中, 包括决策树方法[29,30]、二维生成对抗网络(GAN)和二维条件生成对抗网络(CGAN)[31-33], 三维GAN和三维CGAN [34-38], 以及基于卷积神经网络(CNN) [39]的方法等. 例如, Feng等[28]使用CGAN把多孔介质的二维多孔介质的局部结构作为输入用于恢复整体二维多孔介质结构. Denis等[40]使用二维多孔介质切片作为输入用于恢复完整的三维多孔介质结构. 这些工作的目的都是通过已知的局部多孔介质结构来重建整体结构, 评判的标准为重建结构与标签结构的相似性, 取得了较好的效果.
上述的机器学习方法在重建多孔介质孔隙结构方面表现良好, 但其关注的是多孔介质结构的宏观结构, 没有关注多孔介质结构与有效导热率之间的关系. 一般而言, 孔隙率大的多孔介质对应的有效导热率往往越小, 但应该注意相同孔隙率条件下, 不同的孔隙分布的多孔介质对应的有效导热率也会存在一定差异[41,42]. 如图1所示, 图1中各多孔介质的孔隙率皆为0.45, 黑色部分为孔隙,




图 1 不同孔隙分布多孔介质示意图 (a) K1 = 5.52; (b) K2 = 6.37; (c) K2 = 7.32Figure1. Schematic diagram of porous media with different pore distributions: (a) K1 = 5.52; (b) K2 = 6.37; (c) K2 = 7.32
图 2 局部结构差异 (a) K1 = 6.0; (b) K2 = 6.4Figure2. Local structural differences: (a) K1 = 6.0; (b) K2 = 6.4
| Along the foam growing direction | Across the foam growing direction | |||||
| Prediction/(W·mK–1) | Experiment/(W·mK–1) | Deviation/% | Prediction/ (W·mK–1) | Experiment/(W·mK–1) | Deviation/% | |
| 0.0253 | 0.0220 | 15.0 | 0.0265 | 0.0245 | 8.16 | |
表1LBM计算多孔介质导热率与实验值比较
Table1.Comparison between LBM calculation of thermal conductivity of porous media and experimental values.
2.1.使用QSGS算法和LBM制作训练数据
QSGS算法是一种十分简单快捷的多孔介质生成法, 它主要由生成多孔介质尺寸、孔隙率、初始成核概率以及各方向生成概率参数等控制多孔介质的生成. 主要的工作原理是, 先设置生成的多孔介质尺寸为












图 3 二维多孔介质各方向生成示意图Figure3. Schematic diagram of the generation of two-dimensional porous media in all directions.
图 4 四参数随机生成法生成二维多孔介质示例图Figure4. An example of two-dimensional porous media generated by the four-parameter random production method.
2
2.2.条件生成对抗网络
32.2.1.原 理
CGAN是GAN的拓展, 下面先介绍生成对抗网络的原理. 生成对抗网络由两个对抗模块组成: 生成模型G和判别模型D. 生成模型G用于学习数据的分布, 判别模型D用于估计样本是来自训练数据而不是生成模型G的概率大小, 生成模型G和判别模型D都与多层感知机类似为一个非线性的映射函数.为了在训练数据x上学习到生成分布















命题 对于给定的生成器G, 最优判别器D为








如果生成器和判别器包含了一个额外的输入数据y, 则生成对抗网络可以拓展为条件生成对抗网络, y可以是任意类型的辅助输入信息, 如输入数据的类别标签或用其他方法表示的输入数据. 可以把条件生成对抗网络中的条件表现为一个使用y来填充的额外输入层添加到生成器和判别器中. 在生成器中, 由先验高斯噪声




3
2.2.2.生成器网络结构
首先使用三个全连接层把三个输入扩展为包含16384个元素的向量, 把这个向量转换为128

图 5 生成器网络结构图Figure5. Generator network structure diagram.
3
2.2.3.判别器网络结构
判别器的输入为生成器输出的多孔介质数据或训练数据中的多孔介质数据, 对输入的数据进行卷积核尺寸为(7, 7), 步长为(2, 2)卷积等多层次下采样操作提取其深层次的特征, 在每次卷积后进行批量归一化和激活操作, 在引入Dropout随机失活防止模型过拟合, 通过一系列的上采样卷积等操作得到一个深层次的特征矩阵, 然后把矩阵形式的数据拉平为一个长向量的形式, 再把长向量通过全连接层计算输出一个值, 这个值最后经过sigmoid激活函数变为一个0—1的输出, 表示输入的多孔介质数据来自训练数据的概率大小. 具体的判别器网络结构如图6所示.
图 6 判别器网络结构图Figure6. Discriminator network structure diagram.
3
2.2.4.局部结构损失函数
传统的条件生成对抗网络还不足以满足多孔介质数据生成, 因为其无法关注多孔介质中局部细微的结构, 生成的多孔介质如图7所示, 无法生成精确的局部细节, 而局部结构对于多孔介质的有效导热率有重大的影响, 所以在条件生成对抗网络原有的损失函数基础上, 设计加入了一个额外的局部结构损失函数, 它主要关注生成器输出的多孔介质局部结构与训练数据中多孔介质局部结构隐含的相似性, 确保生成器学习到正确有效的隐含映射. 局部结构损失函数如图8所示.
图 7 传统条件生成对抗网络生成的多孔介质Figure7. Porous media generated by traditional conditional generation adversarial network.
图 8 局部结构损失结构图Figure8. Structure diagram of local structure loss.
如图8所示, 局部结构损失函数的实现原理与卷积操作类似, 但是其滑动窗口中的权值都固定为1, 在生成器生成的多孔介质数据上使用这种特殊的损失核进行计算, 在对应的训练数据中的多孔介质上也进行同样的操作, 然后对分别其求和, 最后计算两者的平方误差. 如此设计的局部结构损失函数可以使得生成器从训练数据中学习到多孔介质局部结构对导热率影响的隐性映射.
图 9 生成多孔介质结构示意图Figure9. Schematic diagram of generating porous media.
图9中Kinput和Pinput分别为输入生成模型的人为预定导热率和人为预定孔隙率; Kverify和Pverify分别为生成模型生成多孔介质的有效导热率和孔隙率; Klabel为训练集中多孔介质对应的导热率标签.
生成的多孔介质导热率验证结果如图10所示, 图10包含5个子图, 每个子图表示输入不同孔隙率和导热率比生成多孔介质验证结果, 各子图右下角给出一个生成示例并标明生成导热率, 红色点数据点表示输入人为预定导热率与LBM验证生成多孔介质导热率的对比, 若生成的多孔介质导热率没有误差, 则数据点应表现为45o线, 可以明显看出数据点基本与45o的标签线重合, 说明生成多孔介质符合要求. 下面给出生成多孔介质导热率验证误差.
图 10 生成多孔介质有效导热率验证图Figure10. Generate verification chart of effective thermal conductivity of porous media.
图11中包含5个子图, 分别对应图10中各子图生成导热率的误差, 其误差计算公式为
图 11 生成多孔介质有效导热率误差图Figure11. Error chart of effective thermal conductivity of porous media.


图 12 生成多孔介质有效导热率验证数据集误差汇总图Figure12. The error summary of the validation data set for the effective thermal conductivity of porous media.
从图12中可看出, 生成多孔介质导热率验证误差随着孔隙率增大呈现单调递增, 这是因为多孔介质的导热率与其孔隙率基本呈反比关系, 孔隙率越大其导热率越小, 导致在大孔隙率条件下, 不同孔隙率分布对有效导热率的影响也变小, 出现较大差异的孔隙分布但导热率相差却很小的情况, 使得生成模型更难以学习多孔介质结构与导热率的隐藏映射, 所以误差会上升. 但即便如此, 生成多孔介质的导热率验证误差最大也没有超过2%, 说明生成模型取得了比较好的泛化性能.
下面给出生成多孔介质孔隙率的综合验证结构集误差, 如图13所示.
图 13 生成多孔介质孔隙对比图及误差Figure13. The effect diagram and error of generating pores in porous media.
图13中黑色的点代表输入模型的孔隙率, 红色的点代表模型生成的多孔介质的孔隙率, 红色点与黑色点的距离越近表示模型效果越好, 从图13中可明显看出, 红色点与黑色点距离都很小, 并给出孔隙率误差. 下面给出量化误差, 如表2所列. 从表2中也可看出整体的误差均值不超过4%.
| Porosity | 0.45 | 0.45 | 0.45 | 0.55 | 0.65 | Mean error |
| Keff ratio | 1∶1000 | 1∶800 | 1∶600 | 1∶1000 | 1∶1000 | |
| Keff error | 0.006 | 0.006 | 0.008 | 0.007 | 0.017 | 0.009 |
| Porosity error | 0.049 | 0.031 | 0.039 | 0.029 | 0.038 | 0.037 |
表2生成多孔介质导热率及孔隙率误差表
Table2.Generated thermal conductivity and porosity error table of porous media
