-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathSearchBench.py
More file actions
58 lines (45 loc) · 1.6 KB
/
SearchBench.py
File metadata and controls
58 lines (45 loc) · 1.6 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
47
48
49
50
51
52
53
54
55
import os
os.environ['TF_CPP_MIN_LOG_LEVEL'] = '3'
os.environ['CUDA_VISIBLE_DEVICES'] = '-1'
from itertools import count
from C4State import C4State
import typing
from tensorflow import keras
from Agent import *
from ModelTools import twohead_evaluate
import time
model = typing.cast(
Model, keras.models.load_model("az_models/random_model.keras"))
print("Loaded model!")
agent10 = AZAgent(model, "model_6", 10)
agent20 = AZAgent(model, "model_6", 20)
agent30 = AZAgent(model, "model_6", 30)
agent100 = AZAgent(model, "model_6", 100)
agent200 = AZAgent(model, "model_6", 200)
agent300 = AZAgent(model, "model_6", 300)
game = C4State()
# benchmark search
start = time.time()
_ = agent10.get_next_state(game)
end = time.time()
print(f"10-rollouts: {round(end - start, 2)}, rollouts/s: {round(10/(end - start), 2)}")
start = time.time()
_ = agent20.get_next_state(game)
end = time.time()
print(f"20-rollouts: {round(end - start, 2)}, rollouts/s: {round(20/(end - start), 2)}")
start = time.time()
_ = agent30.get_next_state(game)
end = time.time()
print(f"30-rollouts: {round(end - start, 2)}, rollouts/s: {round(30/(end - start), 2)}")
start = time.time()
_ = agent100.get_next_state(game)
end = time.time()
print(f"100-rollouts: {round(end - start, 2)}, rollouts/s: {round(100/(end - start), 2)}")
start = time.time()
_ = agent200.get_next_state(game)
end = time.time()
print(f"200-rollouts: {round(end - start, 2)}, rollouts/s: {round(200/(end - start), 2)}")
start = time.time()
_ = agent300.get_next_state(game)
end = time.time()
print(f"300-rollouts: {round(end - start, 2)}, rollouts/s: {round(300/(end - start), 2)}")