int main() { unsigned int i; Automate_Det AutDet; Automate_Non_Det AutNonDet; unsigned int iNbWords; char** Words; int resultNonDet; int resultDet; automateDetInit(AutDet); /* Charge l'automate depuis un fichier */ automateNonDetFromFile(AutNonDet, "automate_nondet.txt"); std::cout << "Automate initialisé via fichier." << std::endl; automateNonDetDeterminise(AutNonDet, AutDet); std::cout << "Automate déterminisé." << std::endl; Words = generateWords(5, AutDet.AlphabetSize-1); iNbWords = (int) pow(AutDet.AlphabetSize-1, 6); iNbWords = iNbWords-1; iNbWords = iNbWords/(AutDet.AlphabetSize-2); for (i = 0; i < iNbWords; i++) { std::cout << i << " : " << Words[i] << std::endl; resultNonDet = automateNonDetTransition(AutNonDet, AutNonDet.StartState, Words[i]); resultDet = automateDetTransition(AutDet, AutDet.StartState, Words[i]); if (resultNonDet == resultDet) { std::cout << "\tRésultat commun : "; if (resultNonDet == 1) { std::cout << "Accepté" << std::endl; } else { std::cout << "REFUSE" << std::endl; } } else { exit(-1); } } destroyWords(&Words, 5, AutDet.AlphabetSize-1); automateDetRelease(AutDet); automateNonDetRelease(AutNonDet); return 0; }
void Optimizer::start() { summarizeTool(tool); // 1) Generate sample set of words generateWords(); // 2) Compute the relation R-L and save the results computeRelation(); int r = tool->getSymbolCount(); // 3) Run PSO instances for (int s = global_settings::MIN_STATES; s <= global_settings::MAX_STATES; s++) { runPSOLogic(s, r); } summarizeBestPSOResult(); }
int generateAllWords(vector<vector<char>> board) { vector<string> words; string curr = ""; vector<vector<int>> visited; // intialized to 0s int row, col = 0; int m = board.size(); int n = board[0].size(); for(int i=0; i<m; i++) { for(int j=0; j<n; j++) { generateWords(board, words, curr, visited); } } cout << "List of all possible words are: " << endl; for(int i=0; i<words.size(); i++) { cout << words[i] << endl; } }