Operational Research Library  1.0
ScheduleHelper.h
Go to the documentation of this file.
1 #ifndef SCHEDULEHELPER_H
2 #define SCHEDULEHELPER_H
3 
4 #include <random>
5 #include <chrono>
6 #include <iostream>
7 #include <fstream>
8 #include <sstream>
9 #include <algorithm>
10 #include <vector>
11 
12 namespace operational_research
13 {
14 
23 {
24 private:
25  // Generator.
26  std::default_random_engine generator;
27 
28 public:
33 
40  std::vector<unsigned int> generatePermutationSchedule(unsigned int n);
41 
48  std::vector<unsigned int> generateSelectionSchedule(unsigned int n);
49 
57  void writeScheduleToFile(const std::vector<unsigned int>& schedule, const std::string& filename);
58 
65  std::vector<unsigned int> readScheduleFromFile(const std::string& filename);
66 };
67 
68 } // namespace operational_research
69 
70 #endif // SCHEDULEHELPER_H
std::vector< unsigned int > generatePermutationSchedule(unsigned int n)
Generates random permutation of set {1,2,...,n}.
Definition: ScheduleHelper.cpp:11
void writeScheduleToFile(const std::vector< unsigned int > &schedule, const std::string &filename)
Writes schedule to a file with a filename.
Definition: ScheduleHelper.cpp:89
Definition: BinPackingProblem.cpp:3
std::vector< unsigned int > generateSelectionSchedule(unsigned int n)
Generates 1 to n-element selection of random permutation of set {1,2,...,n}.
Definition: ScheduleHelper.cpp:30
std::vector< unsigned int > readScheduleFromFile(const std::string &filename)
Reads schedule from a file with a filename.
Definition: ScheduleHelper.cpp:51
Definition: ScheduleHelper.h:22
ScheduleHelper()
Default constuctor.
Definition: ScheduleHelper.cpp:6