资源简介
这是一个基于遗传算法的社区发现算法代码
论文:Community detection based on modularity and an improved genetic algorithm
###使用方法:
1.在CommityData.java文件里面,更改path变量.
###代码结构:
1.CommityData.java:定义了全部变量,以及数据的初始化工作
2.SpeciesIndividual.java:染色体个体
3.SpeciesPopulation.java:物种群,用链表的形式来存储每一个SpeciesIndividual个体 4.GeneticAlgorithm.java:遗传算法步骤,包括选择交叉变异等操作
5.MainRun.java:主函数
论文:Community detection based on modularity and an improved genetic algorithm
###使用方法:
1.在CommityData.java文件里面,更改path变量.
###代码结构:
1.CommityData.java:定义了全部变量,以及数据的初始化工作
2.SpeciesIndividual.java:染色体个体
3.SpeciesPopulation.java:物种群,用链表的形式来存储每一个SpeciesIndividual个体 4.GeneticAlgorithm.java:遗传算法步骤,包括选择交叉变异等操作
5.MainRun.java:主函数
![](http://www.nz998.com/pic/65070.jpg)
代码片段和文件信息
package com.shoulaxiao;
import java.io.BufferedReader;
import java.io.File;
import java.io.FileInputStream;
import java.io.InputStreamReader;
import java.util.ArrayList;
import java.util.List;
/**
* @USER: shoulaxiao
* @DATE: 19-12-3
* @TIME: 上午11:39
**/
public class CommityData {
public static int NODE_NUM;
public static int EDGE_NUM;
static int COMMITY_NUM;
static final int SPECIES_NUM=450;//种群数
static final int DEVELOP_NUM=50;//进化代数
static final float pcl=0.2fpch=0.8f;//交叉概率
static final float pm=0.2f;//变异概率
static int T=800000;//初始温度
static final int l=10;//每个温度循环次数l
static final float k=0.99f;//常数k
public static List> neigbor_List;//邻接表
public static int[][] adjacentMatrix;//邻接矩阵
static String path=“/home/shoulaxiao/文档/dataCluster/football.txt“;
static {
String encoding=“utf-8“;
try {
File file=new File(path);
if (file.isFile()&&file.exists()){
InputStreamReader reader=new InputStreamReader(new FileInputStream(file)encoding);
BufferedReader br=new BufferedReader(reader);
String lineTxt=null;
lineTxt=br.readLine();
//读取结点的边数与结点数(数据的第一行)
String[] cur2=lineTxt.split(“ “);
NODE_NUM=Integer.parseInt(cur2[0]);
EDGE_NUM=Integer.parseInt(cur2[1]);
neigbor_List=new ArrayList>(NODE_NUM);
adjacentMatrix=new int[NODE_NUM][NODE_NUM];
//初始化邻接表
for (int i=0;i neigbor_List.add(new ArrayList());
}
//初始化邻接矩阵
for (int i=0;i for (int j=0;j adjacentMatrix[i][j]=0;
}
}
//正式读取数据
while ((lineTxt=br.readLine())!=null){
String cur[] = lineTxt.split(“ “);
int u = Integer.parseInt(cur[0]);
int v = Integer.parseInt(cur[1]);
addEdges(uv);
addEdges(vu);
}
reader.close();
System.out.println(“数据读取成功!“);
}
else {
System.out.println(“指定文件不存在请重新输入文件“);
}
}catch (Exception e){
System.out.println(“读取文件内容出错请稍后再试“);
e.printStackTrace();
}
}
/**
* 添加节点
* @param i
* @param j
*/
private static void addEdges(int i int j) {
neigbor_List.get(i).add((j));// 给编号为i的顶点一条添加指向编号为j的边
adjacentMatrix[i][j]=1;
}
/**
* 输出矩阵
*/
public static void printData(){
for (int i=0;i for (int j=0;j System.out.
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
目录 0 2019-12-03 08:25 MIGA-master\
目录 0 2019-12-03 08:25 MIGA-master\.idea\
目录 0 2019-12-03 08:25 MIGA-master\.idea\artifacts\
文件 270 2019-12-03 08:25 MIGA-master\.idea\artifacts\MIGA_jar.xm
文件 135 2019-12-03 08:25 MIGA-master\.idea\encodings.xm
文件 273 2019-12-03 08:25 MIGA-master\.idea\misc.xm
文件 248 2019-12-03 08:25 MIGA-master\.idea\modules.xm
文件 8792 2019-12-03 08:25 MIGA-master\.idea\uiDesigner.xm
文件 180 2019-12-03 08:25 MIGA-master\.idea\vcs.xm
文件 31795 2019-12-03 08:25 MIGA-master\.idea\workspace.xm
文件 577 2019-12-03 08:25 MIGA-master\MIGA.iml
文件 700 2019-12-03 08:25 MIGA-master\README.md
目录 0 2019-12-03 08:25 MIGA-master\out\
目录 0 2019-12-03 08:25 MIGA-master\out\artifacts\
目录 0 2019-12-03 08:25 MIGA-master\out\artifacts\MIGA_jar\
文件 11664 2019-12-03 08:25 MIGA-master\out\artifacts\MIGA_jar\MIGA.jar
目录 0 2019-12-03 08:25 MIGA-master\out\production\
目录 0 2019-12-03 08:25 MIGA-master\out\production\MIGA\
目录 0 2019-12-03 08:25 MIGA-master\out\production\MIGA\me
文件 58 2019-12-03 08:25 MIGA-master\out\production\MIGA\me
文件 16 2019-12-03 08:25 MIGA-master\out\production\MIGA\me
目录 0 2019-12-03 08:25 MIGA-master\out\production\MIGA\com\
目录 0 2019-12-03 08:25 MIGA-master\out\production\MIGA\com\shoulaxiao\
文件 3796 2019-12-03 08:25 MIGA-master\out\production\MIGA\com\shoulaxiao\CommityData.class
文件 6158 2019-12-03 08:25 MIGA-master\out\production\MIGA\com\shoulaxiao\GeneticAlgorithm.class
文件 1800 2019-12-03 08:25 MIGA-master\out\production\MIGA\com\shoulaxiao\MainRun.class
文件 3739 2019-12-03 08:25 MIGA-master\out\production\MIGA\com\shoulaxiao\SpeciesIndividual.class
文件 1684 2019-12-03 08:25 MIGA-master\out\production\MIGA\com\shoulaxiao\SpeciesPopulation.class
目录 0 2019-12-03 08:25 MIGA-master\out\production\MIGA\data\
文件 910 2019-12-03 08:25 MIGA-master\out\production\MIGA\data\dolphin.txt
文件 4954 2019-12-03 08:25 MIGA-master\out\production\MIGA\data\football.txt
............此处省略27个文件信息
- 上一篇:java 实习生简历模板
- 下一篇:java反射机制案例及源码
相关资源
- 于遗传算法的自动排课系统毕业设计
- 具有能力约束的车辆路径问题 CVRP j
- 遗传算法多份源代码matalabjava,c++都有
- 《基于遗传算法的自动组卷系统》毕
- 遗传算法车间调度
- 标准遗传算法解决TSP-Java代码
- 简单的遗传算法 java 源代码
- 遗传算法 tsp java
- 遗传算法自动组卷
- java遗传算法智能组卷
- 用遗传算法实现自动文摘
- 遗传算法GeneticAlgorithm的Java实现源码工
- 遗传算法解决多维背包问题java代码
- Louvain java实现
- 双层编码的遗传算法优化Flowshop调度程
- 旅行商问题-遗传算法--java
- 遗传算法旅行者问题java实现
- 清华大学人工智能大作业源码
- 遗传算法的Java实现源码
- 基于遗传算法的车间作业调度JSP_GA
- java遗传算法_求TSP,java界面版
- Matlab遗传算法求混合流水车间调度最
- 遗传算法求解TSP问题Java界面版源码
- 使用遗传算法解决TSP问题Java
- 遗传算法-匹配句子
- Java实现智能优化算法_TSP问题_模拟退
- 遗传算法java小程序吃豆人
- 遗传算法经典Java实现
评论
共有 条评论