@@ -49,7 +49,7 @@ enum ChooseType
49
49
static void Main ( string [ ] args )
50
50
{
51
51
Console . WriteLine ( "遗传算法" ) ;
52
- Console . WriteLine ( "下面举例来说明遗传算法用以求函数最大值函数为y = -x*x+1024的最大值,-32<=x<=31" ) ;
52
+ Console . WriteLine ( "下面举例来说如何应用遗传算法求函数y = -x*x+1024的最大值,-32<=x<=31" ) ;
53
53
// f(x)=-x*x+1024
54
54
// 迭代次数
55
55
int totalTime = 5 ;
@@ -172,7 +172,7 @@ static void Init()
172
172
chromosomes [ 0 ] . probability = chromosomes [ 0 ] . fitValuePercent ;
173
173
for ( int i = 1 ; i < chromosomes . Count ; i ++ )
174
174
{
175
- //上一个的累计概率加上自己的概率,得到自己的累计概率
175
+ //上一个的累积概率加上自己的概率,得到自己的累积概率
176
176
chromosomes [ i ] . probability = chromosomes [ i - 1 ] . probability + chromosomes [ i ] . fitValuePercent ;
177
177
}
178
178
}
@@ -228,11 +228,11 @@ static void UpdateNext()
228
228
Console . WriteLine ( "fitValuePercent " + i + " " + chromosomes [ i ] . fitValuePercent ) ;
229
229
}
230
230
//计算累积概率
231
- // 第一个的累计概率就是自己的概率
231
+ // 第一个的累积概率就是自己的概率
232
232
chromosomes [ 0 ] . probability = chromosomes [ 0 ] . fitValuePercent ;
233
233
for ( int i = 1 ; i < chromosomes . Count ; i ++ )
234
234
{
235
- // 上一个的累计概率加上自己的概率,得到自己的累计概率
235
+ // 上一个的累积概率加上自己的概率,得到自己的累积概率
236
236
chromosomes [ i ] . probability = chromosomes [ i - 1 ] . probability + chromosomes [ i ] . fitValuePercent ;
237
237
238
238
}
@@ -285,17 +285,17 @@ static void ChooseChromosome()
285
285
/// </summary>
286
286
static void CrossOperate ( )
287
287
{
288
- /** bit[5]~bit[0] fit
289
- * 4 000 110 12
290
- * 3 001 010 9
291
- * child1 000 010 14
292
- * child2 001 110 5
288
+ /** bit[5]~bit[0] fit
289
+ * 4 000 110 12 //第一条
290
+ * 3 001 010 9 //第二条
291
+ * child1 000 010 14 //第三条
292
+ * child2 001 110 5 //第四条
293
293
*/
294
294
int rand = new Random ( GetSeed ( ) ) . Next ( 0 , 6 ) ; //0-5;
295
295
Console . WriteLine ( "交叉的rand " + rand ) ;
296
296
for ( int i = 0 ; i < rand ; i ++ )
297
297
{
298
- //将第0个给第2个;
298
+ //将第一条(下标0)给第三条(下标2)
299
299
chromosomes [ 2 ] . bits [ i ] = chromosomes [ 0 ] . bits [ i ] ; //第一条和第三条交叉
300
300
chromosomes [ 3 ] . bits [ i ] = chromosomes [ 1 ] . bits [ i ] ; //第二条和第四条交叉
301
301
}
0 commit comments