Skip to content

Commit c67924b

Browse files
added updated working code
1 parent 010b50c commit c67924b

File tree

2 files changed

+30
-18
lines changed

2 files changed

+30
-18
lines changed

examples/stabilizer/my_util.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -166,7 +166,7 @@ def logistic(n):
166166
# Prediction function
167167
def predict_one_step_ahead(model, timeseries_aux, num_qubits, num_measurement, reservoirs,backend, method, ising_params=None, shots=10000):
168168
ts_list = timeseries_aux.flatten().tolist()
169-
k=1
169+
k=5
170170
obs=[]
171171
num_tot_obs=len(generate_ZI_pauli_strings(num_measurement))
172172
for i,reservoir_circuit in enumerate(reservoirs):

examples/stabilizer/run_reservoir.py

Lines changed: 29 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -31,11 +31,12 @@
3131

3232

3333
def main(num_qubits, num_meas, num_reservoirs, method, noise, lents, decode, casename,
34-
tableaunr,stab_method, stab_degree, timeplex=1, degree=None,shots=10000):
34+
stab_method, stab_degree, shots=10000, degree=None):
3535
if not degree:
3636
degree = num_meas
3737
#degree = min(degree, 3)
38-
k=timeplex
38+
k=5
39+
time=50
3940
num_neurons=num_reservoirs*num_meas
4041

4142
if casename == "henon":
@@ -45,13 +46,12 @@ def main(num_qubits, num_meas, num_reservoirs, method, noise, lents, decode, cas
4546
#ts=narma(200).flatten()
4647

4748
string_identifier="casename"+str(casename)+"_num_qubits"+str(num_qubits)+"_num_meas"+str(num_meas)
48-
string_identifier+="_degree"+str(degree)+"_num_reservoirs"+str(num_reservoirs)+"_timeplex10"
49-
string_identifier+="_method"+str(method)+"_noise"+str(noise)+"_tableaunr"+str(tableaunr)+"_shots"+str(shots)
49+
string_identifier+="_num_reservoirs"+str(num_reservoirs)+"_steps"+str(lentrain)
50+
string_identifier+="_method"+str(method)+"_noise"+str(noise)+"_shots"+str(shots)
5051
if not decode:
5152
string_identifier+="_decodeFalse"
52-
string_identifier+="_tableaunr"+str(tableaunr)
5353

54-
print(string_identifier, " number of neurons/observables=",num_neurons )
54+
print(string_identifier, " number of neurons/observables=",num_neurons)
5555

5656

5757

@@ -70,7 +70,7 @@ def main(num_qubits, num_meas, num_reservoirs, method, noise, lents, decode, cas
7070
error = depolarizing_error(0.1, 2)
7171
noise_model.add_all_qubit_quantum_error(error, ['cx'])
7272

73-
WARMUP=0.3
73+
WARMUP=0.2
7474
warmup=int(WARMUP*len(ts))
7575
if method == "classical":
7676
res = Reservoir(num_neurons, lr=0.7, sr=0.99)
@@ -82,7 +82,6 @@ def main(num_qubits, num_meas, num_reservoirs, method, noise, lents, decode, cas
8282
tableau = pickle.load(f)
8383
sampled_keys = random.sample(list(tableau.keys()), 1)
8484
sampled_list = [tableau[key] for key in sampled_keys]
85-
print(isingparams.values())
8685
# merge and wrap as list of dict
8786
tableau = [{
8887
'stabilizer': [s for d in sampled_list for s in d['stabilizer']],
@@ -174,13 +173,15 @@ def main(num_qubits, num_meas, num_reservoirs, method, noise, lents, decode, cas
174173
firsttime=False
175174
else:
176175
for i in range(len(X_test)):
177-
print(j,"/",num_pred)
178-
pred_step = predict_one_step_ahead(model, timeseries_aux, num_qubits, num_meas, res, backend= AerSimulator(noise_model=noise_model),method=method,ising_params=isingparams,shots=shots)
176+
print(i,"/",num_pred)
177+
pred_step = predict_one_step_ahead(model, timeseries_aux[-time:], num_qubits, num_meas, res, backend= AerSimulator(noise_model=noise_model),method=method,ising_params=isingparams,shots=shots)
179178
timeseries_aux = np.vstack([timeseries_aux, np.array([[pred_step]])])
180179

181180
with open("results/prediction"+str(ep)+"_"+string_identifier+".pickle","wb") as f:
182181
pickle.dump(timeseries_aux, f)
183182

183+
184+
184185

185186

186187
if __name__ == "__main__":
@@ -192,11 +193,22 @@ def main(num_qubits, num_meas, num_reservoirs, method, noise, lents, decode, cas
192193
lentrain = int(sys.argv[6])
193194
decode = bool(int(sys.argv[7]))
194195
casename = str(sys.argv[8])
195-
tableaunr = int(sys.argv[9])
196-
stab_method= str(sys.argv[10])
197-
stab_degree= int(sys.argv[11])
198-
shots= int(sys.argv[12])
199-
200-
print("Running:", num_qubits, num_meas, num_reservoirs, method, noise, lentrain, decode, casename, tableaunr,stab_method,stab_degree,shots=shots)
201-
main(num_qubits, num_meas, num_reservoirs, method, noise, lentrain, decode, casename, tableaunr,stab_method,stab_degree,shots=shots)
196+
stab_method= str(sys.argv[9])
197+
stab_degree= int(sys.argv[10])
198+
shots=int(sys.argv[11])
199+
200+
201+
print("num_qubits =", num_qubits)
202+
print("num_meas =", num_meas)
203+
print("num_reservoirs =", num_reservoirs)
204+
print("method =", method)
205+
print("noise =", noise)
206+
print("lentrain =", lentrain)
207+
print("decode =", decode)
208+
print("casename =", casename)
209+
print("stab_method =", stab_method)
210+
print("stab_degree =", stab_degree)
211+
print("shots =", shots)
212+
213+
main(num_qubits, num_meas, num_reservoirs, method, noise, lentrain, decode, casename, stab_method,stab_degree,shots)
202214

0 commit comments

Comments
 (0)