1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119
|
#!/usr/local/bin/perl
#
# This is a simple script to help in upgrading from V0.2 to V1.0. It will
# make most (if not all) of the function name and #define name changes, and
# will print a message where they are done.
#
# Not guaranteed to work 100%, but should take the majority of the pain
# out of it.
#
# One thing to pay careful attention to is PGASetMutateOnlyNoCross. This
# was replaced by two functions, PGASetMuataionOrCrossoverFlag and
# PGASetMuatationAndCrossoverFlag. Here, we replace it with the first.
#
# Usage:
# upgrade_script.pl <FilesToUpgrade>
#
# It will move the original files to filename.old, and create the
# new files with the original name.
#
if (ARGV eq 0) {
print "Usage: upgrade_script.pl <FilesToUpgrade>\n";
exit(-1);
}
foreach $filename (@ARGV) {
rename($filename, "$filename.bak");
open(INPUT, "$filename.bak");
open(OUTPUT, ">$filename");
while (<INPUT>) {
&do_rename;
print OUTPUT $_;
}
close(OUTPUT);
close(INPUT);
}
sub do_rename {
s/PGABinaryBuildIndividualDatatype/PGABinaryBuildDatatype/g;
s/PGABinaryRandomize/PGABinaryInitString/g;
s/PGABinaryWrite/PGABinaryPrint/g;
s/PGABinaryWriteString/PGABinaryPrintString/g;
s/PGABuildIndividualDatatype/PGABuildDatatype/g;
s/PGACharacterBuildIndividualDatatype/PGACharacterBuildDatatype/g;
s/PGACharacterRandomize/PGACharacterInitString/g;
s/PGACharacterWriteString/PGACharacterPrintString/g;
s/PGAFitnessLinNor/PGAFitnessLinearNormal/g;
s/PGAFitnessLinRank/PGAFitnessLinearRank/g;
s/PGAFitnessMinRecprl/PGAFitnessMinReciprocal/g;
s/PGAGetEvalUpToDate/PGAGetEvaluationUpToDateFlag/g;
s/PGAGetEvaluate/PGAGetEvaluation/g;
s/PGAGetFitnessRankMax/PGAGetMaxFitnessRank/g;
s/PGAGetBest/PGAGetBestIndex/g;
s/PGAGetWorst/PGAGetWorstIndex/g;
s/PGAGetInitIntegerMax/PGAGetMaxIntegerInitValue/g;
s/PGAGetInitIntegerMin/PGAGetMinIntegerInitValue/g;
s/PGAGetInitRealMax/PGAGetMaxRealInitValue/g;
s/PGAGetInitRealMin/PGAGetMinRealInitValue/g;
s/PGAGetIntegerType/PGAGetIntegerInitType/g;
s/PGAGetIter/PGAGetGAIterValue/g;
s/PGAGetMaxDouble/PGAGetMaxMachineDoubleValue/g;
s/PGAGetMaxInt/PGAGetMaxMachineIntValue/g;
s/PGAGetMaxIter/PGAGetMaxGAIterValue/g;
s/PGAGetMinDouble/PGAGetMinMachineDoubleValue/g;
s/PGAGetMinInt/PGAGetMinMachineIntValue/g;
s/PGAGetMutateIntegerVal/PGAGetMutationIntegerValue/g;
s/PGAGetMutateOnlyNoCross/PGAGetMutationAndCrossoverFlag/g;
s/PGAGetMutateRealVal/PGAGetMutationRealValue/g;
s/PGAGetNoDuplicates/PGAGetNoDuplicatesFlag/g;
s/PGAGetNprocs/PGAGetNumProcs/g;
s/PGAGetNumReplace/PGAGetNumReplaceValue/g;
s/PGAGetOptDir/PGAGetOptDirFlag/g;
s/PGAGetPID/PGAGetRank/g;
s/PGAGetPopReplace/PGAGetPopReplaceType/g;
s/PGAGetPrintFreq/PGAGetPrintFrequency/g;
s/PGAGetRandomInit/PGAGetRandomInitFlag/g;
s/PGAGetRestart/PGAGetRestartFlag/g;
s/PGAGetRestartFrequency/PGAGetRestartFrequencyValue/g;
s/PGAGetSortPop/PGAGetSortedPopIndex/g;
s/PGAGetStoppingRule/PGAGetStoppingRuleType/g;
s/PGAGetStringLen/PGAGetStringLength/g;
s/PGAGetUniformCrossProb/PGAGetUniformCrossoverProb/g;
s/PGAIntegerBuildIndividualDatatype/PGAIntegerBuildDatatype/g;
s/PGAIntegerRandomize/PGAIntegerInitString/g;
s/PGAIntegerWriteString/PGAIntegerPrintString/g;
s/PGAParallelDone/PGADoneMS/g;
s/PGAParallelEvaluateMS/PGAEvaluateMS/g;
s/PGAPrintContext/PGAPrintContextVariable/g;
s/PGAPrintVersion/PGAPrintVersionNumber/g;
s/PGARealBuildIndividualDatatype/PGARealBuildDatatype/g;
s/PGARealRandomize/PGARealInitString/g;
s/PGARealWriteString/PGARealPrintString/g;
s/PGARunMutateAndCross/PGARunMutationAndCrossover/g;
s/PGARunMutateOrCross/PGARunMutationOrCrossover/g;
s/PGASelectNext/PGASelectNextIndex/g;
s/PGASetCharacterInit/PGASetCharacterInitType/g;
s/PGASetEvaluate/PGASetEvaluation/g;
s/PGASetEvalUpToDate/PGASetEvaluationUpToDateFlag/g;
s/PGASetFitnessRankMax/PGASetMaxFitnessRank/g;
s/PGASetMaxIter/PGASetMaxGAIterValue/g;
s/PGASetMaxNoChange/PGASetMaxNoChangeValue/g;
s/PGASetMaxSimilarity/PGASetMaxSimilarityValue/g;
s/PGASetMutateOnlyNoCross/PGASetMutationOrCrossoverFlag/g;
s/PGASetMutationIntegerVal/PGASetMutationIntegerValue/g;
s/PGASetMutationRealVal/PGASetMutationRealValue/g;
s/PGASetNoDuplicates/PGASetNoDuplicatesFlag/g;
s/PGASetNumReplace/PGASetNumReplaceValue/g;
s/PGASetPopReplacement/PGASetPopReplacementType/g;
s/PGASetPrintFreq/PGASetPrintFrequencyValue/g;
s/PGASetRandomInit/PGASetRandomInitFlag/g;
s/PGASetRestart/PGASetRestartFlag/g;
s/PGASetRestartFrequency/PGASetRestartFrequencyValue/g;
s/PGASetStoppingRule/PGASetStoppingRuleType/g;
s/PGASetSupportingDebugFlags/PGASetDebugFlag/g;
s/PGASetUniformCrossProb/PGASetUniformCrossoverProb/g;
s/PGAWriteString/PGAPrintString/g;
}
|