# DPSO
DPSO focuses on improving the performance of Particle Swarm Optimization (PSO)
for covering array generation.
A covering array is a mathematical object that systematically covers the interactions
among a fixed number of factors. It can be used for software testing purposes, i.e.
combinatorial testing.
To enhance conventional PSO algorithm for covering array generation, DPSO utilizes
the set and probability theories to represent particle's velocity, and refines related
evolution operators. DPSO further applies two auxiliary strategies to improve the
effectiveness of search process. The details of DPSO are in the following paper:
> H. Wu, C. Nie, F.C. Kuo, h. Leung and C.J. Colbourn, "A Discrete Particle Swarm
Optimization for Covering Array Generation," IEEE Transactions on Evolutionary
Computation, 19(4): 575-591, 2015
This project implements both conventional version (CPSO) and discrete version (DPSO)
of PSO for covering array generation. It also extends four famous PSO variants to their
discrete versions.
* *TVAC*: time-varying acceleration coefficients PSO [1]
* *CLPSO*: comprehensive learning PSO [2]
* *APSO*: adaptive PSO [3]
* *DMS-PSO*: multi-swarm PSO [4]
Moreover, as evolutionary algorithms are highly impacted by their parameter settings,
we have conducted parameter tunings for both CPSO and DPSO. The recommended parameter
settings for covering array generation are as follows:
| | CPSO | DPSO |
|:----------------------|:----:|:----:|
| population size | 80 | 80 |
| maximum iteration | 250 | 250 |
| inertia weight | 0.9 | 0.5 |
| acceleration constant | 1.3 | 1.3 |
| pro1 (discrete) | | 0.5 |
| pro2 (discrete) | | 0.3 |
| pro3 (discrete) | | 0.7 |
## Building
Run `make` to build.
## Usage
`DPSO [OPTIONS] [MODEL_FILE]`
For example, run `./DPSO example.model` to generate a covering array for the testing
model described in `example.model`, which is CA(N; 2, 3^5). More options can be
found by `./DPSO --help`.
DPSO provides both conventional and discrete versions of standard PSO and its four
variants, including `CPSO`, `DPSO` (default), `CTVAC`, `DTVAC`, `CCLPSO`, `DCLPSO`,
`CAPSO`, `DAPSO`, `CDMSPSO`, `DDMSPSO`.
The model file `[NAME].model` gives parameters, values and covering strength.
It has the following format:
```
[value of covering strength]
[number of parameters]
[number of values for each parameter]
```
The constraint file `[NAME].constraints` gives the dependence among parameter
values. It has the following format:
```
[number of disjunctive clauses]
[number of terms in this disjunctive clause]
[+ for plain, - for negated] [variable] [more plain or negated variables...]
[more disjunctive clauses...]
```
## Reference
[1] A. Ratnaweera, S. Halgamuge, and H. Watson, "Self-organizing hierarchical
particle swarm optimizer with time-varying acceleration coefficients," IEEE
Transactions on Evolutionary Computation, 8(3), 2004
[2] J. Liang, A. Qin, P. Suganthan, and S. Baskar, "Comprehensive learning
particle swarm optimizer for global optimization of multimodal functions,"
IEEE Transactions on Evolutionary Computation, 10(3), 2006
[3] Z. hui Zhan, J. Zhang, Y. Li, and H.-H. Chung, "Adaptive particle swarm
optimization," IEEE Transactions on Systems, Man, and Cybernetics, Part B:
Cybernetics, 39(6), 2009
[4] J. Liang and P. Suganthan, "Dynamic multi-swarm particle swarm optimizer,"
in proceedings of Swarm Intelligence Symposium, pp.124-129, 2005
没有合适的资源?快使用搜索试试~ 我知道了~
用于覆盖阵列生成 的离散粒子 群优化_C++_代码_下载
共45个文件
h:26个
cpp:10个
license:2个
1.该资源内容由用户上传,如若侵权请联系客服进行举报
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
版权申诉
5星 · 超过95%的资源 1 下载量 49 浏览量
2022-06-20
18:40:54
上传
评论
收藏 115KB ZIP 举报
温馨提示
DPSO 专注于提高粒子群优化 (PSO) 的性能以覆盖阵列生成。 覆盖数组是一个数学对象,它系统地覆盖了固定数量的因素之间的相互作用。它可以用于软件测试目的,即组合测试。 为增强传统PSO算法的覆盖阵列生成,DPSO利用集合论和概率论来表示粒子的速度,并细化了相关的演化算子。DPSO 进一步应用了两种辅助策略来提高搜索过程的有效性 更多详情、使用方法,请下载后阅读README.md文件
资源推荐
资源详情
资源评论
收起资源包目录
DPSO-master (1).zip (45个子文件)
DPSO-master
main.cpp 945B
.gitignore 219B
README.md 3KB
example.model 13B
LICENSE 1KB
pso
CParticle.cpp 3KB
Framework.h 1KB
DParticle.h 2KB
variants
TVAC.h 3KB
CLPSO.h 3KB
DMSPSO.h 6KB
APSO.h 7KB
Framework.cpp 4KB
PSO.h 3KB
DParticle.cpp 9KB
CParticle.h 2KB
makefile 652B
minisat
solver
SolverTypes.H 8KB
Solver.H 16KB
Solver.C 24KB
LICENSE 1KB
include
BoxedVec.h 5KB
Alg.h 2KB
Queue.h 3KB
Sort.h 3KB
Heap.h 5KB
BasicHeap.h 3KB
Vec.h 6KB
Map.h 4KB
common
SATSolver.h 1KB
Comb.h 4KB
SUT.cpp 9KB
Generator.h 1KB
SATSolver.cpp 2KB
SUT.h 4KB
io
ConstraintFile.h 497B
SpecificationFile.cpp 433B
SpecificationFile.h 208B
OutputFile.cpp 1KB
Parse.cpp 3KB
ConstraintFile.cpp 988B
OutputFile.h 568B
Parse.h 279B
example.constraints 57B
DPSO 141KB
共 45 条
- 1
资源评论
- 缠绵の人生2023-03-28发现一个宝藏资源,资源有很高的参考价值,赶紧学起来~
快撑死的鱼
- 粉丝: 1w+
- 资源: 9154
下载权益
C知道特权
VIP文章
课程特权
开通VIP
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功