適應度計算腳本
數據文件由兩列數字組成,列間由空格隔開。
#!/usr/bin/perl?-w

$arg_num?=?@ARGV;

$arg_num?>?0?||?die?"Usage:\nperl?$0?[file]\n";

open(FH,?$ARGV[0])?||?die?"Can't?open?file?$ARGV[0]\n";

@lines?=?<FH>;

foreach?$line?(@lines)
{
????chomp($line);
????@nums?=?split('?',?$line);
????$fitness?+=?1?-?abs($nums[1]?-?$nums[0])?/?(abs($nums[0])?+?1e-10);
????$count++;
}

if($count?>?0)
{
????$fitness?/=?$count;
????print?$fitness,?"\n";
}
else
{
????print?"0\n";
}



























posted on 2006-03-24 00:06 weidagang2046 閱讀(288) 評論(0) 編輯 收藏 所屬分類: Perl