-
Notifications
You must be signed in to change notification settings - Fork 0
/
parameters.py
68 lines (54 loc) · 2.08 KB
/
parameters.py
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
56
57
58
59
60
61
62
63
64
65
66
67
68
import numpy as np
import pickle
import sys
import scipy.io
########################################################################################################################
##################################### Simulation Parameters #############################################
########################################################################################################################
SliceNum = 3
UENum = 5
RESNum = 1
seed = 12345678
maxTime = 360
ADMM_iter = 10
use_other_utility_function = False # do no change to True since the function is not convex, cannot be solve by cvxpy
minReward = maxTime * 2
Rmax = 100
Rmin = 0
replay_size = int(1e6)
steps_per_epoch = 5000 # at least 5000 * 100 since we have to learn the augmented state space (ADMM penalty)
epochs = 50
batch_size = 1000
pi_lr = 1e-3
q_lr = 1e-3
hidden_sizes = [128, 128]
start_steps = int(steps_per_epoch*epochs/10)
rho = 10 #################################################################################################################################################################
# seed += 1
# np.random.seed(seed)
alpha = np.random.uniform(0.1, 0.9, [SliceNum, RESNum, UENum])
# seed += 1
# np.random.seed(seed)
#weight = np.random.uniform(0.1, 0.9, [SliceNum, UENum])
weight_ue = np.random.uniform(0.1, 0.9, [SliceNum, UENum])
seed += 1
np.random.seed(seed)
weight_slice = np.random.uniform(0.1, 0.9, SliceNum)
weight = np.array([weight_slice[i] * weight_ue[i] for i in range(SliceNum)])
print(alpha)
with open("/Users/apoorvgarg/PycharmProjects/BTP-Slice-RL/saved_alpha.pickle", "wb") as fileop:
print("saved alpha")
pickle.dump(alpha, fileop)
print(weight)
with open("/Users/apoorvgarg/PycharmProjects/BTP-Slice-RL/saved_weight.pickle", "wb") as fileop:
print("saved weight")
pickle.dump(weight, fileop)
#alpha = alpha[[0, 2, 3]]
#weight = weight[[0, 2, 3]]
#SliceNum = 3
# load from training saved parameters
#with open("saved_alpha.pickle", "rb") as fileop:
# alpha = pickle.load(fileop)
#
#with open("saved_weight.pickle", "rb") as fileop:
# weight = pickle.load(fileop)