第一部分 Swarm基础部分 1
第1章 Swarm概述 1
1.1复杂适应系统与Swarm 1
1.1.1复杂适应系统 1
1.1.2主体及其基本性质 2
1.1.3基于多主体的Swarm仿真 3
1.2 Swarm应用简介 4
1.2.1 Swarm在金融研究中的应用 4
1.2.2 Swarm在博弈论研究中的应用 6
1.2.3 Swarm在管理决策中的应用 7
1.2.4 Swarm在生态系统与人工生命中的应用 8
1.3 Java运行环境及开发工具简介 10
1.3.1 Java运行系统与开发流程 10
1.3.2 Java运行环境的安装和配置 11
1.3.3 Java开发工具包 13
1.3.4 Java源文件编辑环境的选择与设置 14
1.3.5编写运行Application 16
1.4 Swarm for Java开发环境 18
1.4.1 Swarm for Java的安装与配置 18
1.4.2 Swarm for Java开发工具简介 20
1.4.3编译运行Swarm for Java程序 22
1.5本章小结 24
1.6思考题 25
第2章 Swarm for Java的仿真框架及开发流程 26
2.1 Swarm的系统结构 26
2.1.1 Swarm的主体构成结构 26
2.1.2 Swarm中各种主体之间的逻辑结构 26
2.1.3 Swarm中各种主体内部的调度过程 28
2.2 Swarm程序开发模型 28
2.2.1主体模块 28
2.2.2 ModelSwarm模块 28
2.2.3 ObserverSwarm模块 29
2.2.4 main模块 30
2.3程序流程实例讲解 31
2.3.1背景介绍 31
2.3.2主体编程 31
2.3.3 ModelSwarm的编程 32
2.3.4 ObserverSwarm的编程 34
2.3.5 main编程 36
2.4本章小结 38
2.5思考题 38
第二部分 Java应用基础 39
第3章 Java语言基础 39
3.1语言符号 39
3.1.1标识符 39
3.1.2关键字 40
3.1.3常量 40
3.1.4变量 41
3.2数据类型 41
3.2.1整型数据 42
3.2.2浮点型数据 42
3.2.3字符型数据 43
3.2.4布尔型数据 44
3.3运算符与表达式 45
3.3.1赋值运算符与强制类型转换 46
3.3.2算术运算符 47
3.3.3关系运算符 49
3.3.4逻辑运算符 49
3.3.5位运算符 51
3.3.6复杂运算符 51
3.3.7运算符的优先级 51
3.4数组 52
3.4.1一维数组 52
3.4.2多维数组 54
3.5本章小结 56
3.6思考题 56
第4章 流程控制 58
4.1选择(条件)控制 58
4.1.1条件语句(if-else) 58
4.1.2多分支语句(switch…case) 59
4.2循环控制 62
4.2.1 for语句 62
4.2.2 while语句 63
4.2.3 do-while语句 63
4.3转向控制 65
4.3.1 break语句 65
4.3.2 continue语句 66
4.3.3 return语句 67
4.4其他控制 67
4.4.1异常(例外)处理语句 67
4.4.2注释语句 67
4.5本章小结 67
4.6思考题 68
第5章 面向对象程序设计的基本概念 69
5.1 Java面向对象基础 69
5.1.1类和对象 69
5.1.2类的定义 70
5.1.3类修饰符 73
5.2对象的创建和引用 74
5.2.1对象的定义 74
5.2.2对象成员变量的引用 78
5.2.3对象方法之间的消息传递 79
5.3成员变量 79
5.3.1成员变量的定义 79
5.3.2成员变量修饰符 80
5.4方法 81
5.4.1方法声明 81
5.4.2方法调用 81
5.4.3方法参数的传递 82
5.4.4方法修饰符 83
5.5本章小结 84
5.6思考题 85
第6章 继承与多态 86
6.1继承与派生 86
6.1.1子类生成(extends关键字) 86
6.1.2 this与super关键字 87
6.1.3多重继承与接口 89
6.2接口 89
6.2.1接口定义 90
6.2.2接口实现 91
6.3多态 92
6.3.1构造函数 92
6.3.2方法覆盖 93
6.3.3方法重载 95
6.4包 95
6.4.1包的定义 96
6.4.2包的引用 97
6.5本章小结 97
6.6思考题 98
第7章 异常处理 99
7.1异常的概念 99
7.1.1异常的定义 99
7.1.2异常处理的特点 99
7.1.3异常类的层次结构 100
7.2异常处理机制 102
7.3异常处理方式 102
7.4捕获异常 103
7.5抛出异常 106
7.6自定义异常 108
7.7本章小结 109
7.8思考题 109
第8章 Java应用程序接口 111
8.1 Java API中的包 111
8.2 java.lang类 112
8.2.1 java.lang.System类 112
8.2.2 java.lang.String类 113
8.2.3 java.lang.StringBuffer类 116
8.3 java.math类 117
8.4 java.util类 119
8.4.1日期类Date 119
8.4.2随机数类Random 121
8.5 java.io类 122
8.5.1输入流与输出流 122
8.5.2文件输入输出 123
8.5.3缓冲区输入输出 126
8.6本章小结 128
8.7思考题 128
第三部分 Swarm for Java的编程及实现 129
第9章 Swarm for Java的类库结构 129
9.1 Swarm的类库结构 129
9.2 Swarm的类库 130
9.3 Swarm的基本类 134
9.3.1 Globals类 135
9.3.2 Selector类 138
9.4本章小结 140
9.5思考题 140
第10章 Swarm for Java的编程基础 142
10.1主体集合的操作 142
10.1.1数组操作类 142
10.1.2字符串操作类 144
10.1.3主体链表的基本操作类 146
10.1.4主体链表的映射处理类 148
10.2随机数的产生 151
10.2.1均匀分布随机数类 152
10.2.2正态分布 153
10.2.3对数正态分布随机数类 155
10.2.4指数分布随机数类 157
10.2.5伽玛分布随机数类 159
10.3 Swarm的基本操作 160
10.3.1 Arguments类 160
10.3.2 HDF5Impl 162
10.3.3 Zone类 164
10.4本章小结 166
10.5思考题 166
第11章 环境编程 167
11.1行为集合创建与调度 167
11.1.1行为集合创建 167
11.1.2序列事件调度 171
11.1.3并发事件调度 175
11.2对象集合的管理 177
11.2.1随机选择对象 178
11.2.2集合对象排序 179
11.2.3标记对象 181
11.3环境变量观测显示器 183
11.3.1变量观测器 183
11.3.2行为观测器 185
11.3.3行为与变量观测显示 187
11.3.4关联变量和类 190
11.4本章小结 192
11.5思考题 192
第12章 主体行为观测界面设计 195
12.1统计分析结果显示 195
12.1.1统计分析函数 195
12.1.2时序曲线图 198
12.1.3绝对量的柱状图 203
12.1.4数据分布柱状图 207
12.2图形界面显示 212
12.2.1构建调色板 212
12.2.2构建光栅 216
12.2.3显示一个二维栅格 221
12.2.4在图框中画图形 224
12.2.5在面板上画图形 227
12.3二维空间及显示设计 230
12.3.1二维离散空间 230
12.3.2二维空间中值的显示 233
12.3.3二维对象空间 236
12.3.4二维空间中对象的显示 238
12.4仿真控制面板设计 241
12.4.1观测设计步骤 241
12.4.2控制面板设计 244
12.4.3通过界面对变量与行为进行观测 248
12.5本章小结 251
12.6思考题 252
第13章 Swarm仿真实例 253
13.1能源市场与环境市场的交互影响仿真分析 253
13.1.1问题描述 253
13.1.2问题建模 254
13.1.3初始条件与实验数据 255
13.1.4仿真结果及分析 256
13.1.5结论 257
13.2产业创新升级阶段市场结构演化仿真分析 258
13.2.1问题描述 258
13.2.2问题建模 260
13.2.3初始条件与实验数据 263
13.2.4仿真结果及分析 264
13.2.5结论 268
13.3西电东送对全国电力市场的影响仿真分析 269
13.3.1问题描述 269
13.3.2问题建模 272
13.3.3初始条件与实验数据 272
13.3.4仿真结果及分析 273
13.3.5结论 277
13.4本章小结 278
参考文献 279