- Run
generate_data.py
to generate random unitary matrices and control pulses for learning - Set
testing_effectiveness
toTrue
in the argument of themain()
function. - Run
lstm_as_approximation.py
to use generated matrices to train the network and test its efficiency - Set
testing_effectiveness
toFalse
in the argument of themain()
function. - Run
lstm_as_approximation.py
to use the trained network for testing the effect of local disturbances. - Run
printing_results.ipynb
to plot results of the experiments.
generate_data.py
- generate data and create directory structureget_data.py
- functions for loading data from filesconfiguratons/
- this is folder with control panels, with all needed parameters of experiments.architecture.py
- LSTM architecture and cost functionsnoise_models_and_integration.py
- models of quantum systems and related functionslstm_as_approximation.py
- the main file with experiments.printing_results.ipynb
- file divided into blocks in which we can plot results of experiment.
The code has been tested with Python 3.6 distributed with Anaconda. The packages utilizes QuTIP is based on TensorFlow library. It also utilizes QuTip for generating control pulses.
M. Ostaszewski, J.A. Miszczak, P. Sadowski, L. Banchi, Approximation of quantum control correction scheme using deep neural networks, https://arxiv.org/abs/1803.05193, Quantum Inf Process (2019), 18:126, https://doi.org/10.1007/s11128-019-2240-7