第1章 软件可靠性 1
1.1 软件可靠性工程简介 1
1.1.1 软件危机与软件可靠性工程 1
1.1.2 软件可靠性概念 2
1.1.3 软件可靠性工程的定义 5
1.2 软件可靠性建模 5
1.2.1 软件可靠性理论 5
1.2.2 软件可靠性模型 6
1.2.3 软件可靠性建模方法 13
1.3 计算智能概述 14
1.3.1 计算智能简介 14
1.3.2 模型优化 18
参考文献 19
第2章 人工神经网络 22
2.1 人工神经元 22
2.1.1 神经元构成及其行为机理 22
2.1.2 神经元的数学模型 26
2.1.3 人工神经几何 27
2.1.4 人工神经元学习 28
2.2 有监督学习神经网络 29
2.2.1 神经网络类型 30
2.2.2 监督学习规则 34
2.2.3 单层神经网络 37
2.2.4 组合神经网络 40
2.2.5 混合专家系统 41
2.3 无监督学习神经网络 43
2.3.1 背景 43
2.3.2 赫伯学习规则 44
2.3.3 主成分学习规则 45
2.3.4 学习向量量化-1 47
2.3.5 自组织特征映射 49
2.3.6 聚类分析 53
2.4 径向基函数网络 63
2.4.1 学习向量量化-2 63
2.4.2 径向基函数神经网络 63
2.5 递归式神经网络 67
2.5.1 全局反馈神经网络 68
2.5.2 局部反馈神经网络 69
2.5.3 学习算法 70
2.6 增强学习 71
2.6.1 增强学习原理和结构 72
2.6.2 模型无关的增强学习 73
2.6.3 增强学习在神经网络训练中的应用 76
思考题 77
参考文献 77
第3章 模糊系统 80
3.1 模糊集 81
3.1.1 定义 81
3.1.2 隶属函数 81
3.1.3 模糊算子 83
3.1.4 模糊集特征 85
3.1.5 模糊性和随机性 87
3.2 模糊逻辑和推理 87
3.2.1 模糊逻辑 87
3.2.2 模糊推理 88
3.3 模糊控制器 89
3.3.1 模糊控制器组件 89
3.3.2 模糊控制器类型 90
3.4 粗糙集 92
3.4.1 粗糙集概念 92
3.4.2 粗糙集的模糊性 94
3.4.3 粗糙集的不确定性 94
思考题 95
参考文献 96
第4章 演化计算 97
4.1 演化计算的基本框架 97
4.1.1 演化算法的基本框架 97
4.1.2 个体的表示 98
4.1.3 群体初始化 100
4.1.4 适应度函数 101
4.1.5 遗传操作 102
4.1.6 停止条件 102
4.2 遗传算法 103
4.2.1 标准遗传算法 103
4.2.2 选择 103
4.2.3 交叉 106
4.2.4 变异 113
4.2.5 控制参数 115
4.2.6 遗传算法的变种 115
4.2.7 高级主题 118
4.3 演化策略 122
4.3.1 (1+1)-ES 123
4.3.2 演化策略的一般算法 124
4.3.3 策略参数和自适应 125
4.3.4 演化策略操作 128
4.3.5 高级主题 130
4.4 演化规划 134
4.4.1 基本演化规划 134
4.4.2 演化规划操作 135
4.4.3 策略参数 139
4.4.4 演化规划的实现 143
4.4.5 高级主题 144
4.5 遗传程序设计 145
4.5.1 树型表示 145
4.5.2 初始化群体 147
4.5.3 适应度函数 148
4.5.4 交叉操作 148
4.5.5 变异操作 148
4.6 差分演化 151
4.6.1 差分演化基本理论 151
4.6.2 DE/x/y/z 154
4.6.3 基本差分演化变体 156
4.6.4 高级主题 160
4.7 协同演化 161
4.7.1 协同演化的类型 161
4.7.2 竞争演化 161
4.7.3 协作演化 163
思考题 165
参考文献 167
第5章 计算群体智能 177
5.1 粒子群优化算法 177
5.1.1 基本原理 177
5.1.2 拓扑结构 178
5.1.3 工作流程及参数设置 178
5.1.4 算法改进 180
5.1.5 高级主题 187
5.2 蚁群优化算法 189
5.2.1 基本原理 189
5.2.2 工作流程 190
5.2.3 算法改进 192
5.3 蜂群算法 194
思考题 196
参考文献 196
第6章 人工免疫系统 202
6.1 自然免疫系统 202
6.1.1 经典观点 202
6.1.2 抗体和抗原 203
6.1.3 白细胞 204
6.1.4 免疫类型 207
6.1.5 学习中的抗原结构 207
6.1.6 网络理论 208
6.1.7 危险理论 208
6.2 人工免疫模型 208
6.2.1 人工免疫系统算法 209
6.2.2 经典观点模型 211
6.2.3 克隆选择理论模型 213
6.2.4 网络理论模型 218
6.2.5 危险理论模型 226
6.2.6 人工免疫系统的应用和其他模型 229
思考题 229
参考文献 230
第7章 统计学习方法 234
7.1 统计学习 234
7.1.1 统计学习理论 234
7.1.2 监督学习 234
7.1.3 非监督学习 236
7.1.4 半监督学习 236
7.1.5 集成学习 237
7.1.6 用于计算智能的其他统计学习方法 238
7.2 支持向量机 240
7.2.1 支持向量机的基本问题 240
7.2.2 两类SVM 243
7.2.3 多类SVM 245
7.2.4 SVM的应用 247
7.3 聚类分析 248
7.3.1 聚类的基本问题 248
7.3.2 K均值和模糊C均值聚类算法 249
7.3.3 K-medoids聚类算法 250
7.3.4 密切关系传播算法 251
思考题 254
参考文献 254
第8章 计算智能在软件可靠性工程中的应用 256
8.1 计算智能与软件可靠性 256
8.2 人工神经网络的应用 257
8.2.1 基于人工神经网络的可靠性模型 258
8.2.2 可靠性模型的选择 268
8.2.3 可靠性模型的组合 268
8.2.4 混合专家系统模型 271
8.2.5 存在的问题 275
8.3 演化计算在可靠性工程中的应用 275
8.3.1 基于遗传程序设计的可靠性模型 275
8.3.2 可靠性模型的优化 278
8.4 模糊逻辑在软件可靠性工程中的应用 281
8.4.1 基于模糊推断系统的可靠性预测 281
8.4.2 模糊神经网络 281
8.4.3 模糊度量 282
8.5 支持向量机在软件可靠性工程中的应用 283
8.5.1 基于支持向量机的二分类可靠性模型 283
8.5.2 基于模拟退火的支持向量机模型 284
8.5.3 支持向量回归 286
8.6 无监督学习方法在软件可靠性工程中的应用 287
8.6.1 基于Gaussian混合模型的可靠性模型 287
8.6.2 聚类方法的应用 288
思考题 289
参考文献 290
附录A 矩阵运算 293
A1 矩阵的基本性质 293
A2 矩阵的微分 294
A2.1 矩阵对数值变量的微分 294
A2.2 矩阵函数对矩阵的微分 294
A2.3 常用的微分公式 294
A3 矩阵的特征值和特征向量 295
附录B Gaussian积分 297
B1 单变量的Gaussian积分 297
B2 多变量的Gaussian积分 297
B3 带有线性项的Gaussian积分 298
附录C Lagrange乘子法 300