Pseudo Random Number Generation through Reinforcement Learning and Recurrent Neural Networks
A Pseudo-Random Number Generator (PRNG) is any algorithm generating a sequence of numbers approximating properties of random numbers. These numbers are widely employed in mid-level cryptography and in software applications. Test suites are used to evaluate the quality of PRNGs by checking statistica...
Main Authors: | , |
---|---|
Format: | Article |
Language: | English |
Published: |
MDPI AG
2020-11-01
|
Series: | Algorithms |
Subjects: | |
Online Access: | https://www.mdpi.com/1999-4893/13/11/307 |
_version_ | 1797547051596120064 |
---|---|
author | Luca Pasqualini Maurizio Parton |
author_facet | Luca Pasqualini Maurizio Parton |
author_sort | Luca Pasqualini |
collection | DOAJ |
description | A Pseudo-Random Number Generator (PRNG) is any algorithm generating a sequence of numbers approximating properties of random numbers. These numbers are widely employed in mid-level cryptography and in software applications. Test suites are used to evaluate the quality of PRNGs by checking statistical properties of the generated sequences. These sequences are commonly represented bit by bit. This paper proposes a Reinforcement Learning (RL) approach to the task of generating PRNGs from scratch by learning a policy to solve a partially observable Markov Decision Process (MDP), where the full state is the period of the generated sequence, and the observation at each time-step is the last sequence of bits appended to such states. We use Long-Short Term Memory (LSTM) architecture to model the temporal relationship between observations at different time-steps by tasking the LSTM memory with the extraction of significant features of the hidden portion of the MDP’s states. We show that modeling a PRNG with a partially observable MDP and an LSTM architecture largely improves the results of the fully observable feedforward RL approach introduced in previous work. |
first_indexed | 2024-03-10T14:37:53Z |
format | Article |
id | doaj.art-63469810436046f39115a30d02b0d6d8 |
institution | Directory Open Access Journal |
issn | 1999-4893 |
language | English |
last_indexed | 2024-03-10T14:37:53Z |
publishDate | 2020-11-01 |
publisher | MDPI AG |
record_format | Article |
series | Algorithms |
spelling | doaj.art-63469810436046f39115a30d02b0d6d82023-11-20T22:00:40ZengMDPI AGAlgorithms1999-48932020-11-01131130710.3390/a13110307Pseudo Random Number Generation through Reinforcement Learning and Recurrent Neural NetworksLuca Pasqualini0Maurizio Parton1Department of Information Engineering and Mathematical Sciences, University of Siena, 53100 Siena, ItalyDepartment of Economical Studies, University of Chieti-Pescara, 65129 Pescara, ItalyA Pseudo-Random Number Generator (PRNG) is any algorithm generating a sequence of numbers approximating properties of random numbers. These numbers are widely employed in mid-level cryptography and in software applications. Test suites are used to evaluate the quality of PRNGs by checking statistical properties of the generated sequences. These sequences are commonly represented bit by bit. This paper proposes a Reinforcement Learning (RL) approach to the task of generating PRNGs from scratch by learning a policy to solve a partially observable Markov Decision Process (MDP), where the full state is the period of the generated sequence, and the observation at each time-step is the last sequence of bits appended to such states. We use Long-Short Term Memory (LSTM) architecture to model the temporal relationship between observations at different time-steps by tasking the LSTM memory with the extraction of significant features of the hidden portion of the MDP’s states. We show that modeling a PRNG with a partially observable MDP and an LSTM architecture largely improves the results of the fully observable feedforward RL approach introduced in previous work.https://www.mdpi.com/1999-4893/13/11/307pseudo-random numbers generatorsreinforcement learningrecurrent neural networks |
spellingShingle | Luca Pasqualini Maurizio Parton Pseudo Random Number Generation through Reinforcement Learning and Recurrent Neural Networks Algorithms pseudo-random numbers generators reinforcement learning recurrent neural networks |
title | Pseudo Random Number Generation through Reinforcement Learning and Recurrent Neural Networks |
title_full | Pseudo Random Number Generation through Reinforcement Learning and Recurrent Neural Networks |
title_fullStr | Pseudo Random Number Generation through Reinforcement Learning and Recurrent Neural Networks |
title_full_unstemmed | Pseudo Random Number Generation through Reinforcement Learning and Recurrent Neural Networks |
title_short | Pseudo Random Number Generation through Reinforcement Learning and Recurrent Neural Networks |
title_sort | pseudo random number generation through reinforcement learning and recurrent neural networks |
topic | pseudo-random numbers generators reinforcement learning recurrent neural networks |
url | https://www.mdpi.com/1999-4893/13/11/307 |
work_keys_str_mv | AT lucapasqualini pseudorandomnumbergenerationthroughreinforcementlearningandrecurrentneuralnetworks AT maurizioparton pseudorandomnumbergenerationthroughreinforcementlearningandrecurrentneuralnetworks |