A Chaotic Communication Method Based on Reserve Pool Computation
By using a reserve pool calculation method in chaotic communication, using the Lorentz time series and trained reserve pool for prediction, the problem of inaccurate signal reduction and susceptible to noise interference in the prior art is solved, and more efficient and reliable chaotic communication is achieved.
Patent Information
- Application Number
- CN202410192475.9
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2024-02-21
- Publication Date
- 2025-03-04
- Estimated Expiration
- 2044-02-21
AI Technical Summary
The prior art fails to fully utilize the time series prediction capabilities of the reserve pool in chaotic communication, resulting in inaccurate signal restoration, and traditional reserve pools are susceptible to noise interference, reducing prediction accuracy.
A chaotic communication method based on reserve pool calculation is adopted to generate a Lorentz time series by driving the Lorentz system, and the trained reserve pool is used to predict the transmission signal to achieve accurate restoration of the original signal. This method introduces a noise reserve pool on the receiving end, improving noise resistance, and reducing the switching speed and bit error rate through the cumulative comparison mechanism of the error curve.
It improves the accuracy and reliability of chaotic communication, enhances noise resistance, reduces the bit error rate, and achieves more efficient signal restoration.
Smart Images

Figure CN118101399B_ABST
Abstract
Description
Technical Field
[0001] The invention relates to the technical field of chaos communication, in particular to a chaos communication method based on reserve pool calculation. Background Art
[0002] Chaotic communication is a communication technology based on chaotic dynamics, which uses the complex and unpredictable dynamic behavior of chaotic systems to achieve information transmission and processing. This communication method uses the characteristics of chaotic systems that are very sensitive to small disturbances, so that the sender and receiver can keep synchronized in time and space through appropriate synchronization mechanisms, thereby achieving information transmission.
[0003] In the traditional chaotic communication mechanism, the transmitter uses a nonlinear dynamic system to generate a chaotic signal, and then uses this chaotic signal to encrypt the information to be transmitted. At the receiving end, in addition to adaptive synchronization, a dynamic system of the same type and parameters as the transmitter must be configured to ensure complete synchronization with the encrypted dynamic system. In addition, a complex coupling mechanism is usually required between the transmitter and the receiver to provide the necessary conditions for synchronization. However, under the framework of traditional chaotic communication, it is difficult to configure the same dynamic system at the transmitter and the receiver, and parameter errors will lead to reduced synchronization quality; and chaotic systems are very sensitive to small disturbances, and traditional chaotic communication is difficult to resist noise disturbances.
[0004] Since the reserve pool is data-driven, it can be easily synchronized with the dynamic system. Therefore, in recent years, the research on chaotic communication has mentioned the use of reserve pool calculations to replace traditional nonlinear dynamic systems for encrypted communication; however, these studies all use the superposition principle framework in chaotic communication, in which the reserve pool acts as a chaotic filter, and does not give full play to its powerful ability in time series prediction. Moreover, the chaotic system is very sensitive to noise, and even small noise can cause huge deviations. It is difficult for ordinary reserve pool structures to make accurate predictions in practical applications.
[0005] In summary, the existing method of using a reserve pool for chaotic communication does not fully utilize the reserve pool's ability to predict time series, resulting in inaccurate restored original signals; and the traditional reserve pool is easily affected by noise, resulting in reduced prediction accuracy, which in turn affects the accuracy of chaotic communication. Summary of the invention
[0006] To this end, the technical problem to be solved by the present invention is to overcome the problem that the prior art only uses the reserve pool for filtering during chaotic communication, does not fully utilize the function of the reserve pool, lacks the ability to predict time series, and the traditional reserve pool is easily affected by noise, resulting in reduced prediction accuracy and inaccurate restored original signals.
[0007] In order to solve the above technical problems, the present invention provides a chaotic communication method based on reserve pool calculation, comprising:
[0008] Based on the first parameter group 0 and the second parameter group 1, the first Lorentz system and the second Lorentz system are driven to serve as chaotic signal generators at the transmitting end of the chaotic communication system;
[0009] Using the sample data set, the reserve pool is pre-trained based on the first Lorenz system and the second Lorenz system respectively, and the trained first reserve pool and the trained second reserve pool are obtained as the chaotic signal receiver at the receiving end of the chaotic communication system;
[0010] The transmitter of the chaotic communication system obtains the original signal, takes the total number of elements in the original signal as the preset generation number J, and initializes j=1;
[0011] Preset the solution step size, the initial time interval and the initial value of the first Lorentz system in the initial time interval, drive the first Lorentz system based on the initial value of the first Lorentz system in the initial time interval, and obtain the value of the first Lorentz system at the end of the initial time interval as the initial value of the j-th time interval;
[0012] If the value of the element at the jth position in the original signal is 1, then based on the initial value of the jth time interval, the second Lorentz system is driven to generate the jth Lorentz orbit; and the value of the second Lorentz system at the end of the jth time interval is obtained as the initial value of the j+1th time interval;
[0013] If the value of the element at the jth position in the original signal is 0, then based on the initial value of the jth time interval, the first Lorentz system is driven to generate the jth Lorentz orbit; and the value of the first Lorentz system at the end of the jth time interval is obtained as the initial value of the j+1th time interval;
[0014] Let j=j+1, repeatedly select and drive the corresponding Lorentz system according to the element value at the jth position in the original signal, and obtain the jth Lorentz orbit, until j is equal to the preset generation number J, then end the repetition and obtain J Lorentz orbits;
[0015] Connect J Lorentz orbits according to the time interval sequence to obtain the Lorentz time series;
[0016] The Lorentz time series is integrated into a transmission signal through a transmission channel, sent to a receiving end, and respectively input into a pre-trained first reserve pool and a second reserve pool for prediction to obtain a first error curve and a second error curve corresponding to the transmission signal;
[0017] Based on the first error curve and the second error curve, the original signal is restored to complete the chaotic communication.
[0018] In one embodiment of the present invention, the driving of the first Lorentz system and the second Lorentz system based on the first parameter group 0 and the second parameter group 1 includes:
[0019] The differential equation of the Lorentz system is expressed as:
[0020]
[0021] In the first Lorentz system driven by the first parameter set 0, the Prandtl number a=10, the normalized Rayleigh number b=28, and the flow field parameters
[0022] In the second Lorentz system driven by the second parameter set 1, the Prandtl number a=10+δ, the normalized Rayleigh number b=28+δ, and the flow field parameters δ is a preset parameter.
[0023] In one embodiment of the present invention, the update process of the reserve pool is expressed as:
[0024] Reserve pool input value: u(n) = [u1(n),u2(n),…,u M (n)] T ;
[0025] The internal state vector of the reservoir is: r(n) = [r1(n), r2(n), ..., r N (n)] T ;
[0026] Output value of the storage pool: y(n) = [y1(n), y2(n),…, y L (n)] T ;
[0027] Update the internal state of the reserve pool, expressed as:
[0028] r(n+1)=(1-γ)r(n)+γf'(W in u(n+1)+W res r(n));
[0029] Update the output value of the reserve pool, expressed as: y(n+1)=f out (W out r(n+1));
[0030] Among them, M represents the dimension of the input value of the reserve pool, L represents the dimension of the output value of the reserve pool, N represents the number of nodes inside the reserve pool, n represents the nth moment, γ represents the leakage rate, f' represents the activation function inside the reserve pool, and f out represents the identity function; W inRepresents the connection weight matrix from the input layer to the reserve pool, with a matrix size of N×M; W res Represents the internal connection weight matrix of the reserve pool, the matrix size is N×N; W out Represents the connection weight matrix from the reserve pool to the output layer, and the matrix size is L×N.
[0031] In one embodiment of the present invention, a sample data set is used to pre-train a reserve pool in a receiving end based on a Lorentz system to obtain a trained reserve pool, including:
[0032] Get a sample data set containing multiple pairs of sample input values and sample output values
[0033] Randomly generate the connection weight matrix W from the input layer to the reserve pool in , based on the preset method, generate the internal connection weight matrix W of the reserve pool res ;
[0034] Initialize the internal state vector of the reserve pool to 0, use the sample input value u(n) to drive the reserve pool, update the internal state and output value of the reserve pool, and record the internal state vector after the preset time node T0 to form a state matrix X;
[0035] Obtain the sample output value corresponding to the sample input value corresponding to each internal state vector in the state matrix to form an output signal matrix Y;
[0036] Based on the state matrix and the output signal matrix, the loss function is constructed and expressed as:
[0037]
[0038] Use ridge regression to minimize the loss function and solve the connection weight matrix W from the reserve pool to the output layer out , expressed as: W out =((XX T +βI) -1 (XY T )) T ; β represents the ridge regression coefficient, I represents the N-dimensional identity matrix; the summation upper bound H represents the training length;
[0039] Based on the connection weight matrix W from the input layer to the reservoir in , the internal connection weight matrix W of the reserve pool res , and the connection weight matrix W from the reservoir to the output layer out , get the trained reserve pool.
[0040] In one embodiment of the present invention, the internal connection weight matrix W of the reserve pool is generated based on a preset method. res ,include:
[0041] Randomly generate an N×N connection matrix W0 based on the preset sparsity sp;
[0042] Calculate the spectral radius of the connectivity matrix |λ max |, using W1 = |λ max |W0 normalizes the connection matrix W0 to obtain a normalized matrix W1;
[0043] Adjust the spectral radius of the normalized matrix W1 until the spectral radius of the normalized matrix is less than 1, and obtain the internal connection weight matrix of the reserve pool, expressed as W res =ρW1;
[0044] Wherein, ρ represents the spectrum radius adjustment parameter, 0<ρ<1.
[0045] In one embodiment of the present invention, the reserve pool is a noise reserve pool;
[0046] The input value of the noise reserve pool is expressed as:
[0047] Wherein, ε(n) represents Gaussian white noise.
[0048] In one embodiment of the present invention, based on the initial value of the time interval, driving the Lorentz system to generate the j-th Lorentz orbit includes:
[0049] Use electronic oscillator circuits to simulate differential equations of Lorentz systems;
[0050] The electronic oscillator circuit is driven by a preset signal during a preset time interval;
[0051] Collect voltage data in an electronic oscillator circuit and visualize the Lorentz orbit.
[0052] In one embodiment of the present invention, the Lorentz time series is integrated into a transmission signal through a transmission channel, which is expressed as:
[0053] v(t)=s(t)+ε(t);
[0054] Among them, v(t) represents the transmission signal at the tth moment, s(t) represents the Lorentz time series at the tth moment, and ε(t) represents the channel noise at the tth moment.
[0055] In one embodiment of the present invention, the step of acquiring a first error curve and a second error curve corresponding to the transmission signal includes:
[0056] The transmission signal is predicted using the first reserve pool to obtain a first error curve, including:
[0057] Initialize r(0)=0, s1'(1)=v(1);
[0058] r(t+1)=(1-γ)r(t)+γtanh(W in v(t+1)+W res r(t));
[0059] First prediction value: s1'(t+2)=W out r(t+1);
[0060] The first error curve:
[0061] The transmission signal is predicted by using the second reserve pool to obtain a second error curve, including:
[0062] Initialize r(0)=0, s2'(1)=v(1);
[0063] r(t+1)=(1-γ)r(t)+γtanh(W in 'v(t+1)+W res 'r(t));
[0064] Second prediction value: s2'(t+2)=W out 'r(t+1);
[0065] The second error curve:
[0066] Where r(t) represents the internal state vector of the reservoir at the tth time, γ represents the leakage rate; i represents the i-th dimension component, i∈{1,2,3}; W in Represents the connection weight matrix from the input layer to the reserve pool, with a matrix size of N×M; W res Represents the internal connection weight matrix of the reserve pool, the matrix size is N×N; W out Represents the connection weight matrix from the reserve pool to the output layer, and the matrix size is L×N.
[0067] In one embodiment of the present invention, restoring the original signal based on the first error curve and the second error curve includes:
[0068] Based on the first error curve, in each time interval, the error of the second half of the time interval is obtained and accumulated to obtain the first error sum in the time interval;
[0069] Based on the second error curve, in each time interval, the error of the second half of the time interval is obtained and accumulated to obtain the second error sum in the time interval;
[0070] If the first error sum in the time interval is less than the second error sum, the element in the original signal corresponding to the time interval is restored to 0; otherwise, it is restored to 1;
[0071] Restore the elements in the original signal corresponding to all time intervals, and arrange the restored values in the time interval sequence to obtain the original signal.
[0072] The above technical solution of the present invention has the following advantages compared with the prior art:
[0073] The chaotic communication method based on reserve pool calculation described in the present invention configures a reserve pool structure at the receiving end to replace the fixed dynamic system. It does not require complex coupling mechanism design and can achieve intelligent chaotic synchronization with the encrypted chaotic system only through training. Based on the original signal, the present invention uses the fourth-order Runge-Kutta format to discretize the first Lorentz system and the second Lorentz system to obtain the Lorentz time series corresponding to the original signal, thereby realizing encryption and hiding of the original signal. The Lorentz time series is input into the trained first reserve pool and the second reserve pool for prediction, which makes full use of the advantages of reserve pool calculation in time series prediction and accurately and efficiently restores the original signal based on the Lorentz time series.
[0074] The reserve pool introduced at the receiving end of the present invention is a noisy reserve pool. The same pre-training method as the traditional reserve pool is used to obtain the trained noisy reserve pool to predict the transmission signal, thereby improving the prediction accuracy, strengthening the anti-noise performance of the entire chaos communication technology to a certain extent, and improving the reliability and security of chaos communication.
[0075] When restoring the original signal based on the first error curve and the second error curve, the present invention uses the total error in the time interval, discards the first half of the time interval, ensures that the reserve pool has obtained the echo state attribute when working, calculates the overall error of the second half of the interval, and performs comparative restoration, thereby reducing the switching speed, reducing the bit error rate, and improving the performance and security of chaotic communication. BRIEF DESCRIPTION OF THE DRAWINGS
[0076] In order to make the content of the present invention more clearly understood, the present invention is further described in detail below according to specific embodiments of the present invention in conjunction with the accompanying drawings, wherein
[0077] Figure 1 It is a flow chart of the steps of the chaotic communication method based on reserve pool calculation provided by the present invention;
[0078] Figure 2 Schematic diagram of attractors of the first Lorenz system l orenz1 and the second Lorenz system l orenz2 provided by the present invention;
[0079] Figure 3It is a system structure diagram of the chaotic communication method based on reserve pool calculation provided by the present invention;
[0080] Figure 4 It is a schematic diagram of the Lorentz time series provided by the present invention;
[0081] Figure 5 It is a comparison diagram of the first error curve and the second error curve provided by the present invention. DETAILED DESCRIPTION
[0082] The present invention is further described below in conjunction with the accompanying drawings and specific embodiments so that those skilled in the art can better understand the present invention and implement it, but the embodiments are not intended to limit the present invention.
[0083] Reference Figure 1 As shown, the step flow chart of the chaotic communication method based on reserve pool calculation of the present invention includes the following steps:
[0084] S101: Based on the first parameter group 0 and the second parameter group 1, drive the first Lorentz system and the second Lorentz system as chaotic signal generators at the transmitting end of the chaotic communication system;
[0085] S102: using the sample data set, pre-training the reserve pool based on the first Lorenz system and the second Lorenz system respectively, obtaining the trained first reserve pool and the trained second reserve pool as a chaotic signal receiver at the receiving end of the chaotic communication system;
[0086] S103: The transmitting end of the chaotic communication system obtains the original signal, takes the total number of elements in the original signal as the preset generation number J, and initializes j=1;
[0087] Preset the solution step size, the initial time interval and the initial value of the first Lorentz system in the initial time interval, drive the first Lorentz system based on the initial value of the first Lorentz system in the initial time interval, and obtain the value of the first Lorentz system at the end of the initial time interval as the initial value of the j-th time interval;
[0088] S104-1: If the value of the element at the jth position in the original signal is 1, then based on the initial value of the jth time interval, the second Lorentz system is driven to generate the jth Lorentz orbit; and the value of the second Lorentz system at the end of the jth time interval is obtained as the initial value of the j+1th time interval;
[0089] S104-2: If the value of the element at the jth position in the original signal is 0, then based on the initial value of the jth time interval, the first Lorentz system is driven to generate the jth Lorentz orbit; and the value of the first Lorentz system at the end of the jth time interval is obtained as the initial value of the j+1th time interval;
[0090] S105: Let j=j+1, repeatedly select and drive the corresponding Lorentz system according to the element value at the jth position in the original signal, and obtain the jth Lorentz orbit, until j is equal to the preset generation number J, and then end the repetition to obtain J Lorentz orbits;
[0091] S106: splicing the J Lorentz orbits according to the time interval sequence to obtain a Lorentz time series;
[0092] S107: Integrate the Lorentz time series into a transmission signal through a transmission channel, send it to a receiving end, input it into a pre-trained first reserve pool and a second reserve pool, respectively, perform prediction, and obtain a first error curve and a second error curve corresponding to the transmission signal;
[0093] S108: Based on the first error curve and the second error curve, the original signal is restored to complete the chaotic communication.
[0094] Reference Figure 2 As shown, a schematic diagram of attractors of the first Lorenz system lorenz1 and the second Lorenz system lorenz2 provided in an embodiment of the present invention; specifically, the differential equation of the Lorenz system is expressed as:
[0095]
[0096] In the first Lorentz system driven by the first parameter set 0, the Prandtl number a=10, the normalized Rayleigh number b=28, and the flow field parameters
[0097] In the second Lorentz system driven by the second parameter set 1, the Prandtl number a=10+δ, the normalized Rayleigh number b=28+δ, and the flow field parameters δ is a preset parameter.
[0098] Specifically, the updating process of the reserve pool in the chaotic communication system includes:
[0099] Reserve pool input value: u(n) = [u1(n),u2(n),…,u M (n)] T ;
[0100] The internal state vector of the reservoir is: r(n) = [r1(n), r2(n), ..., r N (n)] T ;
[0101] Output value of the storage pool: y(n) = [y1(n), y2(n),…, y L (n)] T ;
[0102] Update the internal state of the reserve pool, expressed as:
[0103] r(n+1)=(1-γ)r(n)+γf'(W in u(n+1)+W res r(n));
[0104] Update the output value of the reserve pool, expressed as: y(n+1)=f out (W out r(n+1));
[0105] Among them, M represents the dimension of the input value of the reserve pool, L represents the dimension of the output value of the reserve pool, N represents the number of nodes inside the reserve pool, n represents the nth moment, γ represents the leakage rate, f' represents the activation function inside the reserve pool, and f out represents the identity function; W in Represents the connection weight matrix from the input layer to the reserve pool, with a matrix size of N×M; W res Represents the internal connection weight matrix of the reserve pool, the matrix size is N×N; W out Represents the connection weight matrix from the reserve pool to the output layer, and the matrix size is L×N.
[0106] Reservoir Computing (RC) is a special type of RNN (Recurrent Neural Network). Its core idea is to use a large sparse reservoir to replace the hidden layer in the traditional RNN. Reservoir computing has the characteristics of simple structure and convenient training. Its input matrix and internal connection matrix are randomly generated in advance. Only the weight of the output layer needs to be trained, and it can be obtained through simple linear regression.
[0107] The network structure of the reservoir calculation RC consists of three parts: input layer, reservoir and output layer. Assuming that the reservoir contains N neuron nodes, the input signal is M-dimensional, and the output signal is L-dimensional, then the N×M matrix W can be used in Represents the connection weight from the input layer to the reserve pool, an N×N matrix W res Represents the connection weights inside the reserve pool, an L×N matrix W out Represents the connection weight from the reserve pool to the output layer. Unlike RNN, RC contains many more neurons than traditional RNN, usually hundreds or thousands, and inputs the connection weight matrix W in and the internal connection weight matrix W res They are randomly generated from a specific distribution and remain fixed throughout the training process. The only thing that needs to be trained is the output connection weight matrix W out .
[0108] Therefore, based on the above-mentioned reserve pool updating process, specifically, in step S102, the reserve pool training process includes:
[0109] S102-1: Obtain a sample data set containing multiple pairs of sample input values and sample output values
[0110] S102-2: Randomly generate the connection weight matrix W from the input layer to the reserve pool in , based on the preset method, generate the internal connection weight matrix W of the reserve pool res ;
[0111] S102-3: Initialize the internal state vector of the reserve pool to 0, use the sample input value u(n) to drive the reserve pool, update the internal state of the reserve pool and the output value of the reserve pool, and record the internal state vector after the preset time node T0 to form a state matrix X;
[0112] S102-4: Obtain sample output values corresponding to sample input values corresponding to each internal state vector in the state matrix to form an output signal matrix Y;
[0113] S102-5: Based on the state matrix and the output signal matrix, a loss function is constructed, which is expressed as:
[0114]
[0115] S102-6: Use ridge regression to minimize the loss function and solve the connection weight matrix W from the reserve pool to the output layer out , expressed as: W out =((XX T +βI) -1 (XY T )) T ; β represents the ridge regression coefficient, I represents the N-dimensional identity matrix; the summation upper bound H represents the training length;
[0116] S102-7: Connection weight matrix W based on the input layer to the reserve pool in , the internal connection weight matrix W of the reserve pool res , and the connection weight matrix W from the reservoir to the output layer out , get the trained reserve pool.
[0117] Specifically, in step S102-2, the internal connection weight matrix W of the storage pool is generated based on a preset method. res The steps include:
[0118] Randomly generate an N×N connection matrix W0 based on the preset sparsity sp;
[0119] Calculate the spectral radius of the connectivity matrix |λmax |, using W1 = |λ max |W0 normalizes the connection matrix W0 to obtain a normalized matrix W1;
[0120] Adjust the spectral radius of the normalized matrix W1 until the spectral radius of the normalized matrix is less than 1, and obtain the internal connection weight matrix of the reserve pool, expressed as W res =ρW1;
[0121] Wherein, ρ represents the spectrum radius adjustment parameter, 0<ρ<1.
[0122] In one embodiment of the present invention, the storage pool is a noisy storage pool, and its input value is expressed as: ε(n) represents Gaussian white noise. Except for the input value, the updating process and training process of the noise reserve pool are consistent with the above process.
[0123] Specifically, in the embodiment of the present invention, based on the initial value of the time interval, when the Lorentz system is driven to generate the j-th Lorentz orbit, a physical method or a numerical format simulation can be used.
[0124] Among them, physical methods include:
[0125] Based on fluid dynamics, the chaotic behavior in the Lorenz system is simulated by controlling the flow of water or air, and the dynamic behavior of the Lorenz attractor is observed by adjusting parameters such as flow rate and fluid viscosity;
[0126] An electronic oscillator circuit is used to simulate the differential equation of the Lorentz system; a preset time interval is set, and a preset signal is used to drive the electronic oscillator circuit; voltage data in the electronic oscillator circuit is collected, and the Lorentz orbit is obtained visually.
[0127] Among them, the numerical format simulation includes Runge-Kutta method, Euler method and lucky integral method.
[0128] Specifically, in step S107, when the Lorentz time series is integrated into a transmission signal through a transmission channel, it is expressed as: v(t)=s(t)+ε(t);
[0129] Among them, v(t) represents the transmission signal at the tth moment, s(t) represents the Lorentz time series at the tth moment, and ε(t) represents the channel noise at the tth moment.
[0130] Specifically, in step S107, obtaining the first error curve and the second error curve includes:
[0131] The transmission signal is predicted using the first reserve pool to obtain a first error curve, including:
[0132] Initialize r(0)=0, s1'(1)=v(1);
[0133] r(t+1)=(1-γ)r(t)+γtanh(W in v(t+1)+W res r(t));
[0134] First prediction value: s1'(t+2)=W out r(t+1);
[0135] The first error curve:
[0136] The transmission signal is predicted by using the second reserve pool to obtain a second error curve, including:
[0137] Initialize r(0)=0, s2'(1)=v(1);
[0138] r(t+1)=(1-γ)r(t)+γtanh(W in 'v(t+1)+W res 'r(t));
[0139] Second prediction value: s2'(t+2)=W out 'r(t+1);
[0140] The second error curve:
[0141] Where r(t) represents the internal state vector of the reservoir at the tth time, γ represents the leakage rate; i represents the i-th dimension component, i∈{1,2,3}; W in Represents the connection weight matrix from the input layer to the reserve pool, with a matrix size of N×M; W res Represents the internal connection weight matrix of the reserve pool, the matrix size is N×N; W out Represents the connection weight matrix from the reserve pool to the output layer, and the matrix size is L×N.
[0142] Specifically, in step S108, restoring the original signal based on the first error curve and the second error curve includes:
[0143] S108-1: Based on the first error curve, in each time interval, obtain and accumulate the error of the second half of the time interval to obtain a first error sum in the time interval;
[0144] S108-2: Based on the second error curve, in each time interval, obtain and accumulate the error of the second half of the time interval to obtain a second error sum in the time interval;
[0145] S108-3: If the first error sum in the time interval is less than the second error sum, the element in the original signal corresponding to the time interval is restored to 0; otherwise, it is restored to 1;
[0146] S108-4: Restore the elements in the original signal corresponding to all time intervals, and arrange the restored values according to the time interval sequence to obtain the original signal.
[0147] When existing chaotic communications use error curves to restore original signals, they make judgments one point at a time, that is, a threshold is set under the error curve, and if it exceeds the threshold, it is restored to 1, and if it is lower than the threshold, it is restored to 0. However, such a switching speed is too fast for the reserve pool, resulting in inaccurate signal restoration. Therefore, the embodiment of the present invention takes into account the error accumulation in each time window and judges the original signal based on the error size, which can reduce the misjudgment problem caused by rapid switching and improve the accuracy of signal restoration.
[0148] Reference Figure 3 As shown, it is a system structure diagram of the chaotic communication method based on reserve pool calculation provided by an embodiment of the present invention; based on the above embodiment, in this embodiment, chaotic communication is performed based on the chaotic communication system, and the specific steps include:
[0149] S201: The transmitter part is composed of a Lorenz system, and its differential equation is expressed as:
[0150]
[0151] Among them, a, b, and c are parameters. The classic Lorenz parameters are a = 10, b = 28, At this time, the Lorenz system is in a chaotic state. In the transmitter, this embodiment uses two sets of parameters to drive the Lorenz system. Parameter group 0 is the classical parameters, and parameter group 1 is a slight change on the classical parameters, specifically a = 10 + δ, b = 28 + δ, δ is a relatively small number and is set to 3 in numerical experiments.
[0152] S202: At the transmitting end of the chaotic communication system, a mixed Lorentz time series is generated according to the "0" and "1" nodes, that is, from m(t) to s(t), assuming that m(t) = [1 0 0 1 1]. The specific generation steps include:
[0153] Take any initial value [x0,y0,z0] T, substitute this initial value into the Lorenz equation of parameter group 0 in RK4 format; no matter what m(t) is, substitute parameter group 0 at this time. This step is to ensure that s(t) falls on the Lorenz attractor and has nothing to do with m(t) itself. Take the time as [0,100] and the time step Δt as 0.01;
[0154] Take the value at the last moment (t=100) in the previous step as the initial value, and substitute it into the Lorenz equation of parameter group 1 in the RK4 format (which parameter group is substituted at this time is related to m(t). Now the first value of m(t) is 1, so the Lorenz system driven by parameter group 1 is solved accordingly). Take the time as [0, T], and the time step Δt as 0.01 (T is a certain value, indicating the time window. It has different values in different numerical experiments, but it is generally 0.2);
[0155] Similarly, the value at the last moment (t = T) in the previous step is used as the initial value and substituted into the Lorenz equation for solving parameter group 0 in the RK4 format (the second value of m(t) is 0, corresponding to the Lorenz system driven by parameter group 0), the time is taken as [T, 2T], and the time step Δt is 0.01;
[0156] By analogy, a total of 5 Lorenz orbits are generated, which are spliced in chronological order to obtain the Lorenz time series s(t). Figure 4 shown.
[0157] S203: At the receiving end, the two Lorentz systems are used to train two noisy reserve pools respectively, specifically including:
[0158] Assume that there are some sample data, recorded as where u and They are M-dimensional and L-dimensional respectively. There are N nodes inside the storage pool. Then at time n, the input, internal state and output value of the storage pool can be recorded as:
[0159] u(n)=[u1(n),u2(n),…,u M (n)] T ;
[0160] r(n)=[r1(n),r2(n),…,r N (n)] T ;
[0161] y(n)=[y1(n),y2(n),…,y L (n)] T ;
[0162] The internal state and output of the network are updated according to the following equations
[0163] r(n+1)=(1-γ)r(n)+γf'(W in u(n+1)+W res r(n));
[0164] y(n+1)=f out (W out r(n+1));
[0165] Wherein, γ represents the leakage rate; f' represents the activation function inside the reserve pool, and in this embodiment, the tanh function is selected; f out is the activation function of the output layer, and the identity function is selected in this embodiment.
[0166] The goal of network training is the target value As close as possible to the network output value y(n), that is, it needs to be minimized The error between y(n) and y(n) is used to solve the output weight matrix W out ,The network training process is as follows:
[0167] (1) Randomly generate the input connection weight matrix W in , and generate the internal connection weight matrix W according to a specific method res ;
[0168] (2) Driving the network: Initialize the internal state vector of the reservoir to 0, i.e., r(0) = 0, drive the network with the input data u(n), and update the internal state vector r(n) of the reservoir and the output value y(n) according to the above formula;
[0169] (3) Determine the internal state matrix: Select a time point T0 (T0 < T) as the time point for initializing the entire network, and discard all internal state vectors before T0, because the reserve pool after T0 is truly driven by the input data and is not affected by the initialization factors. Record the internal state vectors after T0 to form a state matrix X;
[0170] (4) Determine the output signal matrix: Take the sample data after T0 Form the output signal matrix Y;
[0171] (5) Training W out : Use ridge regression method to minimize the loss function:
[0172]
[0173] Solve for W out =((XX T +βI) -1 (XY T )) T, where β is the ridge regression coefficient and I is the N-dimensional identity matrix.
[0174] Specifically, in (1), the internal connection weight matrix W res It needs to be sparse, which means that the number of connections within the entire network is much smaller than N. 2 This total connection number is usually randomly generated according to a given sparsity sp, and its spectral radius is usually less than 1, W res The build process includes:
[0175] Initialize W res : Randomly generate an N×N connection matrix W0 according to the sparsity sp;
[0176] Normalize W0: Calculate the spectral radius |λ of W0 max |, then through W1=|λ max |W0 to normalize W0;
[0177] Adjust the spectral radius of the matrix W1 so that the reserve pool has the "echo state property (ESP)". A spectral radius less than 1 makes the reserve pool have the "echo state property". Select a non-zero positive number ρ, 0<ρ<1, and pass W res =ρW1 adjust W1, so that the internal connection weight matrix W with a spectral radius of ρ is obtained res .
[0178] Compared with the classic reserve pool, the noise reserve pool in this embodiment has made improvements on the input, changing the original input into the noisy input Where ε(n) is Gaussian white noise; the training process is consistent with the traditional reserve pool.
[0179] S204: The transmission signal generated by the mixed Lorentz time series is input into two reserve pools respectively for one-step prediction, and the original signal is restored according to the two error curves.
[0180] When the transmission signal v(t) is received, it is first input into the first reserve pool and a one-step prediction is made, including:
[0181] r(t+1)=(1-γ)r(t)+γtanh(W in v(t+1)+W res r(t));
[0182] s1'(t+2)=W out r(t+1);
[0183] Where r(0) = 0, s1'(1) = v(1), and then
[0184] Similarly, it is input into the second storage pool and the above operation is repeated to obtain s2'(t+2)=W out 'r(t+1),
[0185] Reference Figure 5 As shown, it is a comparison diagram of the first error curve and the second error curve of a certain numerical experiment.
[0186] Finally, two error curves are used to restore m(t). Because when generating the signal s(t), one byte of m(t) corresponds to one time window, in order to avoid the error of RC before obtaining ESP, the second half of each window is The errors are accumulated, and then the sum of the two errors in a time window is compared. If the error of the first reserve pool is smaller than that of the second reserve pool, the original site signal corresponding to the time window is considered to be 0, otherwise it is 1.
[0187] The chaotic communication method based on reserve pool calculation described in the present invention configures a reserve pool structure at the receiving end to replace the fixed dynamic system. It does not require complex coupling mechanism design and can achieve intelligent chaotic synchronization with the encrypted chaotic system only through training. Based on the original signal, the present invention uses the fourth-order Runge-Kutta format to discretize the first Lorentz system and the second Lorentz system to obtain the Lorentz time series corresponding to the original signal, thereby realizing encryption and hiding of the original signal. The Lorentz time series is input into the trained first reserve pool and the second reserve pool for prediction, which makes full use of the advantages of reserve pool calculation in time series prediction and accurately and efficiently restores the original signal based on the Lorentz time series.
[0188] The reserve pool introduced at the receiving end of the present invention is a noisy reserve pool. The same pre-training method as the traditional reserve pool is used to obtain the trained noisy reserve pool to predict the transmission signal, thereby improving the prediction accuracy, strengthening the anti-noise performance of the entire chaos communication technology to a certain extent, and improving the reliability and security of chaos communication.
[0189] Those skilled in the art will appreciate that the embodiments of the present application may be provided as methods, systems, or computer program products. Therefore, the present application may adopt the form of a complete hardware embodiment, a complete software embodiment, or an embodiment in combination with software and hardware. Moreover, the present application may adopt the form of a computer program product implemented in one or more computer-usable storage media (including but not limited to disk storage, CD-ROM, optical storage, etc.) that include computer-usable program code.
[0190] The present application is described with reference to the flowcharts and / or block diagrams of the methods, devices (systems), and computer program products according to the embodiments of the present application. It should be understood that each process and / or box in the flowchart and / or block diagram, as well as the combination of the processes and / or boxes in the flowchart and / or block diagram, can be implemented by computer program instructions. These computer program instructions can be provided to a processor of a general-purpose computer, a special-purpose computer, an embedded processor, or other programmable data processing device to generate a machine, so that the instructions executed by the processor of the computer or other programmable data processing device generate instructions for implementing the processes in the flowchart and / or block diagram. Figure 1 A process or multiple processes and / or boxes Figure 1 A device that provides the functions specified in a block or multiple blocks.
[0191] These computer program instructions may also be stored in a computer-readable memory capable of directing a computer or other programmable data processing device to operate in a specific manner, so that the instructions stored in the computer-readable memory produce an article of manufacture comprising an instruction device, which implements the process Figure 1 A process or multiple processes and / or boxes Figure 1 A function specified in one or more boxes.
[0192] These computer program instructions can also be loaded onto a computer or other programmable data processing device so that a series of operating steps are executed on the computer or other programmable device to produce a computer-implemented process, thereby providing instructions for implementing the process. Figure 1 A process or multiple processes and / or boxes Figure 1 The steps for the functions specified in one or more boxes.
[0193] Obviously, the above embodiments are merely examples for the purpose of clear explanation and are not intended to limit the implementation methods. For those skilled in the art, other different forms of changes or modifications can be made based on the above description. It is not necessary and impossible to list all the implementation methods here. The obvious changes or modifications derived therefrom are still within the scope of protection of the present invention.
Claims
1. A chaotic communication method based on reserve pool calculation, characterized in that: include: Based on the first parameter group 0 and the second parameter group 1, the first Lorentz system and the second Lorentz system are driven to serve as chaotic signal generators at the transmitting end of the chaotic communication system; Using the sample data set, the reserve pool is pre-trained based on the first Lorenz system and the second Lorenz system respectively, and the trained first reserve pool and the trained second reserve pool are obtained as the chaotic signal receiver at the receiving end of the chaotic communication system; The transmitter of the chaotic communication system obtains the original signal, takes the total number of elements in the original signal as the preset generation number J, and initializes j=1; Preset the solution step size, the initial time interval and the initial value of the first Lorentz system in the initial time interval, drive the first Lorentz system based on the initial value of the first Lorentz system in the initial time interval, and obtain the value of the first Lorentz system at the end of the initial time interval as the initial value of the j-th time interval; If the value of the element at the jth position in the original signal is 1, then based on the initial value of the jth time interval, the second Lorentz system is driven to generate the jth Lorentz orbit; and the value of the second Lorentz system at the end of the jth time interval is obtained as the initial value of the j+1th time interval; If the value of the element at the jth position in the original signal is 0, then based on the initial value of the jth time interval, the first Lorentz system is driven to generate the jth Lorentz orbit; and the value of the first Lorentz system at the end of the jth time interval is obtained as the initial value of the j+1th time interval; Let j=j+1, repeatedly select and drive the corresponding Lorentz system according to the element value at the jth position in the original signal, and obtain the jth Lorentz orbit, until j is equal to the preset generation number J, then end the repetition and obtain J Lorentz orbits; Connect J Lorentz orbits according to the time interval sequence to obtain the Lorentz time series; The Lorentz time series is integrated into a transmission signal through a transmission channel, sent to a receiving end, and respectively input into a pre-trained first reserve pool and a second reserve pool for prediction to obtain a first error curve and a second error curve corresponding to the transmission signal; Based on the first error curve and the second error curve, the original signal is restored to complete the chaotic communication.
2. The chaotic communication method based on reserve pool calculation according to claim 1 is characterized in that: The method of driving the first Lorentz system and the second Lorentz system based on the first parameter group 0 and the second parameter group 1 includes: The differential equation of the Lorentz system is expressed as: In the first Lorentz system driven by the first parameter set 0, the Prandtl number a=10, the normalized Rayleigh number b=28, and the flow field parameters In the second Lorentz system driven by the second parameter set 1, the Prandtl number a=10+δ, the normalized Rayleigh number b=28+δ, and the flow field parameters δ is a preset parameter.
3. The chaotic communication method based on reserve pool calculation according to claim 1, characterized in that: The update process of the reserve pool is expressed as: Reserve pool input value: u(n) = [u1(n),u2(n),…,u M (n)] T ; The internal state vector of the reservoir is: r(n) = [r1(n), r2(n), ..., r N (n)] T ; Output value of the storage pool: y(n) = [y1(n), y2(n),…, y L (n)] T ; Update the internal state of the reserve pool, expressed as: r(n+1)=(1-γ)r(n)+γf'(W in u(n+1)+W res r(n)); Update the output value of the reserve pool, expressed as: y(n+1)=f out (W out r(n+1)); Among them, M represents the dimension of the input value of the reserve pool, L represents the dimension of the output value of the reserve pool, N represents the number of nodes inside the reserve pool, n represents the nth moment, γ represents the leakage rate, f' represents the activation function inside the reserve pool, and f out represents the identity function; W in Represents the connection weight matrix from the input layer to the reserve pool, with a matrix size of N×M; W res Represents the internal connection weight matrix of the reserve pool, the matrix size is N×N; W out Represents the connection weight matrix from the reserve pool to the output layer, and the matrix size is L×N.
4. The chaotic communication method based on reserve pool calculation according to claim 3 is characterized in that: Using the sample data set, based on the Lorenz system, the reserve pool in the receiving end is pre-trained to obtain the trained reserve pool, including: Get a sample data set containing multiple pairs of sample input values and sample output values Randomly generate the connection weight matrix W from the input layer to the reserve pool in , based on the preset method, generate the internal connection weight matrix W of the reserve pool res ; Initialize the internal state vector of the reserve pool to 0, use the sample input value u(n) to drive the reserve pool, update the internal state and output value of the reserve pool, and record the internal state vector after the preset time node T0 to form a state matrix X; Obtain the sample output value corresponding to the sample input value corresponding to each internal state vector in the state matrix to form an output signal matrix Y; Based on the state matrix and the output signal matrix, the loss function is constructed and expressed as: Use ridge regression to minimize the loss function and solve the connection weight matrix W from the reserve pool to the output layer out , expressed as: W out =((XX T +βI) -1 (XY T )) T ; β represents the ridge regression coefficient, I represents the N-dimensional identity matrix; the summation upper bound H represents the training length; Based on the connection weight matrix W from the input layer to the reservoir in , the internal connection weight matrix W of the reserve pool res , and the connection weight matrix W from the reservoir to the output layer out , get the trained reserve pool.
5. The chaotic communication method based on reserve pool calculation according to claim 4 is characterized in that: The internal connection weight matrix W of the storage pool is generated based on the preset method res ,include: Randomly generate an N×N connection matrix W0 based on the preset sparsity sp; Calculate the spectral radius of the connectivity matrix |λ max |, using W1=|λ max |W0 normalizes the connection matrix W0 to obtain a normalized matrix W1; Adjust the spectral radius of the normalized matrix W1 until the spectral radius of the normalized matrix is less than 1, and obtain the internal connection weight matrix of the reserve pool, expressed as W res =ρW1; Wherein, ρ represents the spectrum radius adjustment parameter, 0<ρ<1.
6. The chaotic communication method based on reserve pool calculation according to claim 3 is characterized in that: The storage tank is a noise storage tank; The input value of the noise reserve pool is expressed as: Wherein, ε(n) represents Gaussian white noise.
7. The chaotic communication method based on reserve pool calculation according to claim 1, characterized in that: Based on the initial value of the time interval, the Lorentz system is driven to generate the j-th Lorentz orbit, including: Use electronic oscillator circuits to simulate differential equations of Lorentz systems; The electronic oscillator circuit is driven by a preset signal during a preset time interval; Collect voltage data in an electronic oscillator circuit and visualize the Lorentz orbit.
8. The chaotic communication method based on reserve pool calculation according to claim 1, characterized in that: The Lorentz time series is integrated into a transmission signal through a transmission channel, which is expressed as: v(t)=s(t)+ε(t); Among them, v(t) represents the transmission signal at the tth moment, s(t) represents the Lorentz time series at the tth moment, and ε(t) represents the channel noise at the tth moment.
9. The chaotic communication method based on reserve pool calculation according to claim 8, characterized in that: The acquiring a first error curve and a second error curve corresponding to the transmission signal includes: The transmission signal is predicted using the first reserve pool to obtain a first error curve, including: Initialize r(0)=0, s1'(1)=v(1); r(t+1)=(1-γ)r(t)+γtanh(W in v(t+1)+W res r(t)); First prediction value: s1'(t+2)=W out r(t+1); The first error curve: The transmission signal is predicted by using the second reserve pool to obtain a second error curve, including: Initialize r(0)=0, s2'(1)=v(1); r(t+1)=(1-γ)r(t)+γtanh(W in 'v(t+1)+W res 'r(t)); Second prediction value: s2'(t+2)=W out 'r(t+1); The second error curve: Where r(t) represents the internal state vector of the reservoir at the tth time, γ represents the leakage rate; i represents the i-th dimension component, i∈{1,2,3}; W in Represents the connection weight matrix from the input layer to the reserve pool, with a matrix size of N×M; W res Represents the internal connection weight matrix of the reserve pool, the matrix size is N×N; W out Represents the connection weight matrix from the reserve pool to the output layer, and the matrix size is L×N.
10. The chaotic communication method based on reserve pool calculation according to claim 1, characterized in that: The restoring the original signal based on the first error curve and the second error curve includes: Based on the first error curve, in each time interval, the error of the second half of the time interval is obtained and accumulated to obtain the first error sum in the time interval; Based on the second error curve, in each time interval, the error of the second half of the time interval is obtained and accumulated to obtain the second error sum in the time interval; If the first error sum in the time interval is less than the second error sum, the element in the original signal corresponding to the time interval is restored to 0; otherwise, it is restored to 1; Restore the elements in the original signal corresponding to all time intervals, and arrange the restored values in the time interval sequence to obtain the original signal.
Citation Information
Patent Citations
Secret communication method and system based on machine learning reserve pool calculation
CN112910625A
Data transmission method and device of intelligent network card, equipment and storage medium
CN116633521A
