Symphony 1.0
Loading...
Searching...
No Matches
search.cpp File Reference
#include "search.h"
#include "utils.cpp"
#include <queue>
#include <memory>
#include <iostream>
#include <unordered_set>
#include <algorithm>
#include <vector>
#include <functional>
#include <omp.h>
Include dependency graph for search.cpp:

Go to the source code of this file.

Functions

Searchcreate_search (SearchAlgorithmIndex search_algorithm_index, Problem *problem)
 Factory method to create a search object based on the specified search algorithm.
 

Function Documentation

◆ create_search()

Search * create_search ( SearchAlgorithmIndex  search_algorithm_index,
Problem problem 
)

Factory method to create a search object based on the specified search algorithm.

Parameters
search_algorithm_indexThe index of the search algorithm to use.
problemThe problem to solve.
Returns
A pointer to the created search object.

Definition at line 13 of file search.cpp.

13 {
14 switch (search_algorithm_index) {
16 return new BreadthFirstSearch(problem);
17 case A_STAR:
18 return new AStarSearch(problem);
19 case BEAM_SEARCH:
20 return new BeamSearch(problem, 2);
21 default:
22 return nullptr;
23 }
24}
Breadth-first search algorithm implementation.
Definition search.h:67
@ A_STAR
Definition search.h:105
@ BEAM_SEARCH
Definition search.h:106
@ BREADTH_FIRST_SEARCH
Definition search.h:103

References A_STAR, BEAM_SEARCH, and BREADTH_FIRST_SEARCH.

Referenced by run().