151 research outputs found
Pseudorandom number generation based on controllable cellular automata
A novel Cellular Automata (CA) Controllable CA (CCA) is proposed in this paper. Further, CCA are applied in Pseudorandom Number Generation. Randomness test results on CCA Pseudorandom Number Generators (PRNGs) show that they are better than 1-d CA PRNGs and can be comparable to 2-d ones. But they do not lose the structure simplicity of 1-d CA. Further, we develop several different types of CCA PRNGs. Based on the comparison of the randomness of different CCA PRNGs, we find that their properties are decided by the actions of the controllable cells and their neighbors. These novel CCA may be applied in other applications where structure non-uniformity or asymmetry is desired
Recommended from our members
Layered cellular automata for pseudorandom number generation
The proposed Layered Cellular Automata (L-LCA), which comprises of a main CA with L additional layers of memory registers, has simple local interconnections and high operating speed. The time-varying L-LCA transformation at each clock can be reduced to a single transformation in the set formed by the transformation matrix of a maximum length Cellular Automata (CA), and the entire transformation sequence for a single period can be obtained. The analysis for the period characteristics of state sequences is simplified by analyzing representative transformation sequences determined by the phase difference between the initial states for each layer. The L-LCA model can be extended by adding more layers of memory or through the use of a larger main CA based on widely available maximum length CA. Several L-LCA (L=1,2,3,4) with 10- to 48-bit main CA are subjected to the DIEHARD test suite and better results are obtained over other CA designs reported in the literature. The experiments are repeated using the well-known nonlinear functions and in place of the linear function used in the L-LCA. Linear complexity is significantly increased when or is used
Recommended from our members
Pseudorandom number generation with self programmable cellular automata
In this paper, we propose a new class of cellular automata – self programming cellular automata (SPCA) with specific application to pseudorandom number generation. By changing a cell's state transition rules in relation to factors such as its neighboring cell's states, behavioral complexity can be increased and utilized. Interplay between the state transition neighborhood and rule selection neighborhood leads to a new composite neighborhood and state transition rule that is the linear combination of two different mappings with different temporal dependencies. It is proved that when the transitional matrices for both the state transition and rule selection neighborhood are non-singular, SPCA will not exhibit non-group behavior. Good performance can be obtained using simple neighborhoods with certain CA length, transition rules etc. Certain configurations of SPCA pass all DIEHARD and ENT tests with an implementation cost lower than current reported work. Output sampling methods are also suggested to improve output efficiency by sampling the outputs of the new rule selection neighborhoods
A Family of Controllable Cellular Automata for Pseudorandom Number Generation
In this paper, we present a family of novel Pseudorandom Number Generators (PRNGs) based on Controllable Cellular Automata (CCA) ─ CCA0, CCA1, CCA2 (NCA), CCA3 (BCA), CCA4 (asymmetric NCA), CCA5, CCA6 and CCA7 PRNGs. The ENT and DIEHARD test suites are used to evaluate the randomness of these CCA PRNGs. The results show that their randomness is better than that of conventional CA and PCA PRNGs while they do not lose the structure simplicity of 1-d CA. Moreover, their randomness can be comparable to that of 2-d CA PRNGs. Furthermore, we integrate six different types of CCA PRNGs to form CCA PRNG groups to see if the randomness quality of such groups could exceed that of any individual CCA PRNG. Genetic Algorithm (GA) is used to evolve the configuration of the CCA PRNG groups. Randomness test results on the evolved CCA PRNG groups show that the randomness of the evolved groups is further improved compared with any individual CCA PRNG
Optimization of 2-d lattice cellular automata for pseudorandom number generation
This paper proposes a generalized approach to 2-d CA PRNGs – the 2-d lattice CA PRNG – by introducing vertical connections to arrays of 1-d CA. The structure of a 2-d lattice CA PRNG lies in between that of 1-d CA and 2-d CA grid PRNGs. With the generalized approach, 2-d lattice CA PRNG offers more 2-d CA PRNG variations. It is found that they can do better than the conventional 2-d CA grid PRNGs. In this paper, the structure and properties of 2-d lattice CA are explored by varying the number and location of vertical connections, and by searching for different 2-d array settings that can give good randomness based on Diehard test. To get the most out of 2-d lattice CA PRNGs, genetic algorithm is employed in searching for good neighborhood characteristics. By adopting an evolutionary approach, the randomness quality of 2-d lattice CA PRNGs is optimized. In this paper, a new metric, #rn is introduced as a way of finding a 2-d lattice CA PRNG with the least number of cells required to pass Diehard test. Following the introduction of the new metric #rn, a cropping technique is presented to further boost the CA PRNG performance. The cost and efficiency of 2-d lattice CA PRNG is compared with past works on CA PRNGs
Recommended from our members
An Evolutionary Approach to the Design of Controllable Cellular Automata Structure for Random Number Generation
Cellular Automata (CA) has been used in pseudorandom number generation over a decade. Recent studies show that two-dimensional (2-d) CA Pseudorandom Number Generators (PRNGs) may generate better random sequences than conventional one-dimensional (1-d) CA PRNGs, but they are more complex to implement in hardware than 1-d CA PRNGs. In this paper, we propose a new class of 1-d CA Controllable Cellular Automata (CCA) without much deviation from the structure simplicity of conventional 1-d CA. We give a general definition of CCA first and then introduce two types of CCA – CCA0 and CCA2. Our initial study on them shows that these two CCA PRNGs have better randomness quality than conventional 1-d CA PRNGs but their randomness is affected by their structures. To find good CCA0/CCA2 structures for pseudorandom number generation, we evolve them using the Evolutionary Multi-Objective Optimization (EMOO) techniques. Three different algorithms are presented in this paper. One makes use of an aggregation function; the other two are based on the Vector Evaluated Genetic Algorithm (VEGA). Evolution results show that these three algorithms all perform well. Applying a set of randomness tests on the evolved CCA PRNGs, we demonstrate that their randomness is better than that of 1-d CA PRNGs and can be comparable to that of two-dimensional CA PRNGs
Cellular Automata and Randomization: A Structural Overview
The chapter overviews the methods, algorithms, and architectures for random number generators based on cellular automata, as presented in the scientific literature. The variations in linear and two-dimensional cellular automata model and their features are discussed in relation to their applications as randomizers. Additional memory layers, functional nonuniformity in space or time, and global feedback are examples of such variations. Successful applications of cellular automata random number/signal generators (both software and hardware) reported in the scientific literature are also reviewed. The chapter includes an introductory presentation of the mathematical (ideal) model of cellular automata and its implementation as a computing model, emphasizing some important theoretical debates regarding the complexity and universality of cellular automata
Developing Efficient Discrete Simulations on Multicore and GPU Architectures
In this paper we show how to efficiently implement parallel discrete simulations on multicoreandGPUarchitecturesthrougharealexampleofanapplication: acellularautomatamodel of laser dynamics. We describe the techniques employed to build and optimize the implementations using OpenMP and CUDA frameworks. We have evaluated the performance on two different hardware platforms that represent different target market segments: high-end platforms for scientific computing, using an Intel Xeon Platinum 8259CL server with 48 cores, and also an NVIDIA Tesla V100GPU,bothrunningonAmazonWebServer(AWS)Cloud;and on a consumer-oriented platform, using an Intel Core i9 9900k CPU and an NVIDIA GeForce GTX 1050 TI GPU. Performance results were compared and analyzed in detail. We show that excellent performance and scalability can be obtained in both platforms, and we extract some important issues that imply a performance degradation for them. We also found that current multicore CPUs with large core numbers can bring a performance very near to that of GPUs, and even identical in some cases.Ministerio de Economía, Industria y Competitividad, Gobierno de España (MINECO), and the Agencia Estatal de Investigación (AEI) of Spain, cofinanced by FEDER funds (EU) TIN2017-89842
- …