-
Notifications
You must be signed in to change notification settings - Fork 1
Expand file tree
/
Copy pathwrite_operations.py
More file actions
46 lines (35 loc) · 1.66 KB
/
write_operations.py
File metadata and controls
46 lines (35 loc) · 1.66 KB
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
import datetime
import numpy
from solution import solution
class WriteOperations():
def __init__(self, optimizationName, fuctionName, solution, multipleRun = 1, multiple_run_result = []):
self.fuctionName = fuctionName
self.optimizationName = optimizationName
self.solution = solution
self.multipleRun = multipleRun
self.multiple_run_result = multiple_run_result
time = str(datetime.datetime.now())
time = time.replace(" ", "_")
time = time.replace(":", "_")
time = time.replace(".", "_")
self.time = time
def write(self):
file = open('outputs/'+self.optimizationName + '_' + self.time + '.txt', 'w+')
file.write("Optimizer: "+ self.optimizationName + "\n")
file.write("ObjFucName: "+ self.fuctionName + "\n")
file.write("StartTime: "+ str(self.solution.startTime) + "\n")
file.write("EndTime: "+ str(self.solution.endTime) + "\n")
file.write("ExecutionTime: "+ str(self.solution.executionTime) + "\n")
file.write("Best: "+ str(self.solution.best) + "\n")
file.write("BestIndividual:\n")
file.write(str(numpy.array(self.solution.bestIndividual)))
if(self.multipleRun > 1):
file.write("\n")
file.write("\n")
file.write("\n")
file.write("-- Multiple Run Result ---\n")
file.write("Outputs:\n")
file.write(str(self.multiple_run_result[0]) + "\n")
file.write("Mean:\n" + str(self.multiple_run_result[1]) + "\n")
file.write("Std:\n" + str(self.multiple_run_result[2]))
file.close()