Method for predicting the probability of packet error in a radio link using deep neural networks
Patent Information
- Application Number
- FR2022011186
- Authority / Receiving Office
- FR · FR
- Patent Type
- Patents
- Current Assignee / Owner
- Filing Date
- 2022-10-27
- Publication Date
- 2025-03-07
- Estimated Expiration
- 2042-10-27
Smart Images

Figure 00000015_0000 
Figure 00000016_0000 
Figure 00000016_0001
Abstract
Description
Title of the invention: Method for predicting the packet error probability of a radio link using deep neural networks Technical field
[0001] The present invention relates to a wireless telecommunications network and more particularly to a method for predicting the quality of data transmission on this telecommunications network in terms of packet error probability or equivalent SNR. Two applications are particularly targeted by the invention, namely resource allocation for allocating the best resources to the transmitter (power, modulation and coding scheme (MCS), etc.) and link abstraction for simulating the telecommunications network. Prior art
[0002] [Fig. 1] discloses a known method for predicting a PEP (for Packet Error Probability) noted p, of a radio link between a transmitter and a receiver. This method comprises: - a step of receiving a signal-to-noise ratio (SNR) vector S measured on the link. For example, in the case of an OFDM (for Orthogonal Frequency-Division Multiplexing) or frequency-hopping system, the SNRs are measured or calculated (depending on the intended application) on each of the dimensions, per carrier or on each level respectively, and then the PEP of the link can be deduced. In the prior art of [Fig.l], the method further comprises a step of processing said SNR vector S by an EESM (for Exponential Effective SINR Mapping) function, said two-parameter EESM function being written as follows: _ c jOa-lwith C' ct C2 of the calibration parameters, the ith value of the SNR vector S, i ranging from 1 to N, with N a non-zero natural integer representing the length of the SNR vector. This EESM function is notably disclosed in the article I. Latif, F. Kaltenberger and R.Knopp, "Link abstraction for multi-user MIMO in LTE using interference-aware receiver," 2012 IEEE Wireless Communications and Networking Conference (WCNC), 2012, pp. 842-846, doi: 10.1109 / WCNC.2012.6214489, says document Latif et al. .
[0003] Processing by the EESM function makes it possible to estimate a scalar of signal-to-noise ratio called (or called) “equivalent” y (translation of “effective SNR” in English). The predicted PEP p is then determined from a “Gaussian mapping” function which associates a PEP value with an SNR value in a Gaussian channel for a given modulation and coding scheme (MCS). This mapping function is constructed from a set of NM points p _ | 0 p for i = 1 NM | obtained by simulation of the radio link and known as LUT (for “Look Up Table” in English), where yd) is the signal to noise ratio in the Gaussian channel and n / A the measured error probability for this SNR value for a given MCS. When the values of y do not belong to the set of points in the set P, it is necessary to carry out an interpolation to calculate the PEP value. There are then two ways to perform the mapping: 1) a segment-based interpolation approach, 2) a global interpolation approach on all points. In case 1) we can for example use a linear interpolation, that is, if y (i) < y < y^Çi + 1 ) then we calculate p — ay + b with _ 0 and b = p Çi^-ay ( z). In the case 2) we construct an interpolation function o / 'A for example by an inter- Lagrange polynomial polation passing through the points of the set P. In this case, the estimated PEP is given by The resulting function „ / A is differ- * °inter\ J profitable, a hypothesis which will be necessary to describe a particular mode of learning an embodiment of the invention.
[0004] The prediction method of Figure 1 requires a model calibration phase to determine the calibration carried out from a database of ND pairs / Xz)), i — 1, . - • • ND} obtained by simulations or measurements, being the packet error probability associated with the parameter vector S(i) of the / th element of the database. Obtaining this database is very expensive to obtain from due to a significant simulation time. Finally, the accuracy of the predictions obtained is limited.
[0005] Figure 2 illustrates an alternative solution known in the state of the art using a deep neural network trained from a database (not shown). This deep neural network is adapted to receive as input the SNR vector -S and to provide as output the predicted PEP p. The use of a neural network in a method for predicting the performance of a radio link is notably disclosed in the publication E. Chu, J. Yoon, and BC Jung, “A Novel Link-to-System Mapping Technique Based on Machine Learning for 5G / IoT Wireless Networks”, Sensors 2019,19, 1196. https: / / doi.org / 10.3390 / sl9051196.
[0006] The prediction method of [Fig.2] has an inaccurate inference power if the deep neural network is trained on a frugal database, i.e. of small size (cardinal of the order of a few thousand) and does not provide any gain in terms of inference performance compared to the method without neural network as explained in paragraph [3].
[0007] There is therefore a need to propose a method for predicting a parameter representative of the quality of the radio link between the transmitter and the receiver which is simple and practical to implement and whose inference performance is better than the state-of-the-art solutions mentioned previously in the case of a frugal database. Statement of the invention
[0008] The present invention aims to address this need. More particularly, the present invention aims to cover a method for predicting a predicted packet error probability of a radio link between a transmitter and a receiver in a wireless communication network for a plurality of modulation and coding schemes, said prediction method comprising: - a step of receiving an SNR vector; - a step of determining a vector of calibration parameters from said SNR vector, said step of determining the vector of calibration parameters being carried out from a deep neural network architecture; - a step of processing said calibration parameters by a differentiable mathematical function to obtain the predicted equivalent signal-to-noise ratio; - a Gaussian mapping step to determine the predicted packet error probability from the predicted equivalent signal-to-noise ratio.
[0009] In a particular embodiment, the Gaussian mapping is carried out by segment interpolation and said prediction method comprises: - a step of learning the weights of the deep neural networks from pairs comprising an SNR vector and an associated equivalent signal-to-noise ratio, said pairs being determined for the plurality of modulation and coding schemes, said pairs being previously stored in a learning database, the equivalent signal-to-noise ratios of the pairs being determined by an inversion of the Gaussian mapping, said Gaussian mapping being obtained by a simulation on a Gaussian channel for a given modulation and coding scheme.
[0010] In a particular embodiment, the Gaussian mapping is carried out by global interpolation and said prediction method comprises: - a step of learning the weights of the deep neural networks from pairs comprising an SNR vector and an associated packet error probability, said pairs being determined for the plurality of modulation and coding schemes, said pairs being previously stored in a learning database.
[0011] The method thus makes it possible to predict an equivalent SNR and then to deduce the PEP of a link from a vector of measured / estimated data, here contained in the SNR vector S which constitutes a characteristic of the link. Furthermore, it may be possible to take into account an invariance of the channel attenuation vectors of the radio link. The deep neural network no longer predicts the PEP directly as in the prior art but from calibration parameters. The conventional method of the prior art without a neural network predicts the PEP from the SNR vector through a function (for example EESM) parameterized by one or two coefficients, coefficients which are constant regardless of the SNR vector presented at the input of the device. Thus, since the two approaches of the prior art have the same inputs and outputs, the invention cannot in any way be deduced by merging the two approaches of the prior art.In the invention, the calibration parameters are generated by the neural network for each SNR vector presented at the input of the device. According to the inventors, what makes the implementation of this solution possible is a property that has never been disclosed in the prior art. Indeed, it can be shown that one can always find a set of calibration parameters that allows predicting the PEP without error for any SNR vector S, so that the neural networks produce as many different calibration parameters as input SNRs, each with zero or very low prediction error. Thus, the proposed architecture that relies on this property that has never been disclosed in the prior art constitutes an undeniable source of progress.The proposed architecture allows to converge towards a very good learning, then leading to good inference performances thanks to the generalization capacity of neural networks when their weights are correctly trained. These calibration parameters are then intended to be applied to the mathematical function differentiable with respect to said parameters. This learning is carried out by a conventional neural network learning algorithm by giving itself a criterion to optimize between the output of the prediction system and the corresponding value in the database, for example the mean square error. We will subsequently distinguish two learning modes depending on whether the Gaussian mapping function is carried out by segment interpolation (point 1 of paragraph [3]) or by global interpolation (point 2 of paragraph [3]).
[0012] In a particular embodiment, the SNR vector is determined from a step of processing a vector of channel attenuations of the radio link.
[0013] In a particular embodiment, the step of processing the channel attenuation vector comprises a processing step for taking into account a number of antennas at transmission, the transmitter having several antennas, and a number of antennas at reception, the receiver having several antennas, with a view to obtaining a signal-to-noise ratio vector.
[0014]
[0015]
[0016]
[0017]
[0018]
[0019]
[0020]
[0021]
[0022]
[0023]
[0024]
[0025]
[0026] In a particular embodiment, the step of processing the channel attenuation vector comprises a step of invariance processing by permutation of the signal-to-noise ratio vector to obtain the SNR vector. In a particular embodiment, the permutation invariance processing is a sorting operation. In a particular embodiment, the permutation invariance processing is a discretization operation. In a particular embodiment, the permutation invariance processing is performed by other deep neural networks. In a particular embodiment, the SNR vector is concatenated with an average signal-to-noise ratio. In a particular embodiment, the SNR vector is concatenated with an encoding vector 1 among M in the case of Af modulation and coding schemes (MCS). In a particular embodiment, the differentiable mathematical function ( f(c, S)) corresponds to the following equation: f(c S) = -c loa— 22^ with a First calibration parameter and c2a Second calibration parameter, S, the ith value of the SNR vector S, i ranging from 1 to N. In a particular embodiment, the first calibration parameter ci is equal to 1 and said differentiable mathematical function (f(c, S)) corresponds to the following equation: In a particular embodiment, the second calibration parameter c2 is equal to 1 and said differentiable mathematical function ( / (c, S)) corresponds to the following equation: f(c, S) = The present invention will be better understood upon reading the detailed description of embodiments taken as non-limiting examples and illustrated by the appended drawings in which: [Fig.l] [Fig.l] illustrates a method according to the prior art for predicting a PEP of a radio link between a transmitter and a receiver; [Fig.2] [Fig.2] illustrates another method according to the prior art for predicting a PEP of a radio link between a transmitter and a receiver using a deep neural network architecture; [Fig.3] [Fig.3] illustrates a method of predicting a PEP according to a first mode of carrying out the invention;
[0027] [Fig.4] [Fig.4] illustrates more particularly a learning step of the process prediction of [Fig.3] when the Gaussian mapping is carried out by segment interpolation;
[0028] [Fig.5] [Fig.5] illustrates more particularly a learning step of the process prediction of [Fig.3] when the Gaussian mapping is carried out by global interpolation;
[0029] [Fig.6] [Fig.6] illustrates a method for predicting a packet error probability according to a second embodiment of the invention;
[0030] [Fig.7] [Fig.7] illustrates a method for predicting a packet error probability according to a third embodiment of the invention;
[0031] [Fig.8] [Fig.8] details a processing step of the prediction method of the [Fig.7] ;
[0032] [Fig.9] [Fig.9] illustrates an operation performed by deep neural networks for the treatment of permutation invariance in the prediction method of [Fig.8];
[0033] In the following description, the vectors are referenced in bold relative to the scalars. Similarly in the figures, the vectors are referenced in bold and the associated lines have a thickness greater than the thickness of the lines associated with the scalars.
[0034] Figure 3 illustrates a method for predicting a packet error probability p according to a first embodiment of the invention.
[0035] In this first embodiment, the prediction method comprises: - a step of receiving an SNR vector S; - a step of determining a vector c of calibration parameters from the SNR vector S using a deep neural network; - a step of processing the calibration parameters c by a differentiable mathematical function f(c, S) to obtain the predicted equivalent signal-to-noise ratio y. - a step of determining the packet error probability p from the predicted equivalent signal-to-noise ratio y using a Gaussian mapping function.
[0036] The SNR vector S is made up of discriminating parameters of the radio link. In the case of link prediction for systems experiencing several SNRs during the transmission of a packet (carriers in OFDM, steps for frequency hopping, etc.), the input vector is necessarily made up of the SNRs. These SNRs can be expressed linearly or in dB, or even generally after having undergone any predistortion. The values of the SNRs S used in the function f(c, S) are not necessarily predistorted or are not necessarily predistorted in the same way as the SNRs at the input of the deep neural network. For example in the case of EESM, the SNR values used in formula 1 are J Ve- expressed in linear terms while the SNRs at the input of the deep neural network can be expressed in dB.
[0037] Figure 5 illustrates a particular embodiment in which information referenced u is concatenated. This information is, for example, an average signal-to-noise ratio and / or information of the modulation and coding scheme considered. A possible implementation to inform the MCS network is the use of a "one-hot" vector °, i.e. an encoding of 1 among M, in the case of M MCS. This makes it possible to take into account several MCS with the same neural network architecture, i.e. with the same weights. The training database is thus constituted by the pairs (S, p) of the different MCS considered. For example, for M — 3 MCS, we have O =
[100] or O =
[010] or o =
[001] ,
[0038] It would be possible to associate other information if necessary depending on the problem to be solved.
[0039] Alternatively, it would be possible to replace the SNRs with Channel State Information (CSI) or Channel Quality Indicator (CQI) type data.
[0040] The step of determining the vector c of calibration parameters is carried out using a deep neural network architecture (DNN for “Deep Neural Network” in English). By “deep neural network” is meant a neural network composed of at least three layers, including two hidden layers and one output layer. The number of neurons in each layer may be different.
[0041] The weights W of the different deep neural networks are determined by a learning algorithm A from a plurality of vectors S and the associated packet error probabilities previously stored in a learning database BD and a Gaussian mapping. The database consists of a set of ND pairs {($( / ), / XO)' * = 1, ..., ND] obtained by simulations or measurements, Xz) being the packet error probability associated with the parameter vector S(i) of the ith element of the database. Depending on the implementation of the Gaussian mapping, either by segment interpolation or by global interpolation, two different learning schemes are applied.
[0042] In the case of Gaussian mapping by segment interpolation, the learning scheme is illustrated in Figure 4. Since the Gaussian mapping function with segment interpolation is not differentiable, neural network learning algorithms cannot be applied by taking the value of the PEP at the output of the Gaussian mapping as the criterion to be optimized. To remedy this problem, we carry out the learning by considering as criterion to be optimized the equivalent SNR. It is necessary to create a new learning database BD consisting of ND couples {(S(z), i = 1, ..., ND] where the y(S ( / )) are deduced / Xûen inverting the Gaussian mapping, for example by linear interpolation.
[0043] The learning algorithm A is adapted to receive a plurality of predicted equivalent signal-to-noise ratios y from the output of the prediction method.
[0044] The learning algorithm A will then modify the weights of the different deep neural networks so as to satisfy the equation below:
[0045] minLteVJ£(S(j))-y(S(i)) j2
[0046] The weights of deep neural networks are saved.
[0047] In the case of a Gaussian mapping by global interpolation, the learning scheme is illustrated in [Fig.5]. Since the Gaussian mapping is carried out by a differentiable function, we apply the neural network learning algorithms by taking as the criterion to be optimized the value of the PEP at the output of the Gaussian mapping.
[0048] The learning algorithm A is adapted to receive a plurality of predicted packet error probabilities p from the output of the prediction method.
[0049] The learning algorithm A will then modify the weights of the different deep neural networks so as to satisfy the equation below:
[0050] ) - p(ï) |2
[0051] The weights of deep neural networks are saved.
[0052] The vector c of calibration parameters is processed by a differentiable mathematical function f(c, S) to obtain the predicted equivalent signal-to-noise ratio y.
[0053] This differentiable mathematical function can, for example, be the EESM function which includes two calibration parameters c = cj such that: f(c,
[0055] It will be noted that any other differentiable SNR compression function can be used, such as, for example, a function approaching mutual information called the MIESM function known from the document Latif et al.
[0056] In the case of OFDM (regardless of the channel) or flat step fading in the case of frequency hopping, the SNR vector $ is determined from a processing step T of a channel attenuation vector h of the radio link.
[0057] Figures 7 and 8 disclose such a processing step T. Thus, this step T comprises a processing step (PA) for taking into account a number of transmitting antennas Nt > 1 and a number of receiving antennas Nr > 1 in order to obtain a signal-to-noise ratio vector s'.
[0058] Thus the channel attenuation vector h can be written:
[0059] h = vect{H^ ...,
[0060] with Nd the number of dimensions on which the evaluation of the equivalent SNR is carried out, for example the number of subcarriers in OFDM or the number of steps in frequency hopping, H a matrix (N,., Nt) of the channel attenuations for the dimension i considered (subcarrier or step), and H[k, Z) the element (k, l) of the matrix
[0061] In the case of a SISO mode (for “Single Input Single Output”), Nt = Nr = 1, we have the following relationships:
[0062]
[0063]
[0064]
[0065]
[0066]
[0067]
[0068]
[0069]
[0070]
[0071] h = [ / / .(I, 1), 1), .... »41, 1)] 5. — with 'c ^mc element of the vector h. i I d ai In the case of a SIMO mode (for “Single Input Multiple Output”), where N( > 1 and Nr = 1, we have for example for Nt = 2, the following relations: h = [77)(1, 1), / / )(2, 1) / 7,(1, 1), 1) .... 1), 1)] In option 1, in which there is no information about the receiver: 5. = | / î |2— with 'c ^mc element of the vector h. i I d ai In option 2, where the receiver is known, for example an MRC (for “Maximum Ratio Combining”) type receiver: 5,-= ( 1 / / ,-(1,l)|2+| / / ;( 2.1)12)¾ In the case of a MIMO mode (for “Multiple Input Multiple Output”), where Nt > 1 and Nr > 1, we have: [ / / ,(1,1), / / ,(1,2), ..., / / ,(1,7^), / / ,(2,1), ..., / / ,(2,^), ..., / / ^^1), ..., / / 2(l,AM, / / 2(2,l), ..., / / 3(2,^), ...,H2(NrA), H2(N„ N,), / / ^(14), / / ^(1,2), IV,), / / ^( 2,1), ..., / / ^(^.1), ..., / / ^.(¾^)]
[0072] In an option 1, in which there is no information on the receiver:
[0073] _ u? i2P / a with h( the (th element of the vector h. i I d 0-2
[0074] In an option 2, in which there is an optimal receiver:
[0075] 5; = / with k; the largest value of
[0076] In the particular case of channels with frequency-selective fading acting on each step in frequency hops, the components of the vector h are no longer scalars but vectors of the impulse responses of said channels. In this case the receiver carries out an equalization on each of the steps and the elements S of the vector S' are then equal to the post-equalization SNR of the component Zî, calculated or measured according to the application.
[0077] In Figure 8, the signal-to-noise ratio S is processed during a step TI of permutation invariance processing of said signal-to-noise ratio vector S', to obtain the SNR vector S. This TI processing step makes it possible to take into account the permutation invariance of the input SNR vector. Indeed, the quality of the link does not depend on the order of the SNR values in the vector, i.e. p (S) = p ((T (S)} regardless of the permutation o(). In addition, this TI processing step makes it possible to compensate for a relatively small size of the training database BD (a few thousand representatives).
[0078] In a particular embodiment, this processing step TI and a sorting step in which we have:
[0079] 5" — whose components are ordered according to the operations of vectorization of the H matrices, or according to the processing carried out with knowledge of the receiver,
[0080] and 5 — _ 5^ , . _ , j which verifies the order relation > 5^ > > 5^ with k{ kj for i * j and the set {kb i = 1, ..., N} e {1, ..., N}.
[0081] Such a step of sorting the input data, here in ascending order, is simple to implement. It makes it possible to give good results in inference on a frugal BD learning database.
[0082] In a particular embodiment, the processing step TI is a discretization in which S is a vector of dimension (P + 1) > N.
[0083] We have the equation £ v
[0084] where dj for ie {1, is determined according to the following equations:
[0085] We define P real values {k = 1, ..., P} verifying Vj v2 £ ... vP
[0086] for 7c = 2, ..., P, d^k) = 1 if - 1) < 5'. * vk, otherwise d^k) = 0
[0087] dj 1) = 1 if S- "vr otherwise d^ 1) = 0
[0088] di(P+ 1) = 1 if S-> vr otherwise dj(P + 1) =0
[0089] In a first option, S = min(x, 1), from then on we have N elements at 1 and (P - N) elements at 0.
[0090] In a second option, S = x, therefore we have n < N non-zero elements and (P - n) elements at 0.
[0091] In an embodiment illustrated in Figure 9, the permutation invariance processing TI is an operation performed by deep neural networks called DeepSet. This processing consists of processing the vector 5 ' — 5^ S2, , SN ] P31 a deep neural network architecture DNN' which provides as output a set of vectors |x1? x2, ..., xN} whose components are added term by term to form the vector SNR >5. The scalar inputs produce the vector outputs xk for k — 1, ..., N, through the same deep neural network architecture DNN' consisting of the same weights.
[0092] The invention thus allows: -1' the introduction of a mathematical model associated with the DNN architecture for the prediction of radio link performance in terms of packet error probability and the associated architecture; - the introduction of the mathematical model allows to be much more precise because the DNN learns as many vectors c as input vectors S of the training database whereas in conventional methods we determine a single vector c for the entire database. It is thus possible to show that for certain mathematical models, there are vectors c of dimension two and dimension one allowing to predict exactly (i.e. without error) the equivalent SNR for any input vector S; - accurate radio link performance prediction in inference; - to achieve good performance even on a frugal database.
[0093] The invention relates more particularly to operators, manufacturers of wireless communication systems.
[0094] The method for predicting the predicted packet error probability p can advantageously be implemented in a base transmission station of a wireless communication network.
Claims
Claims
1. A method for predicting a predicted packet error probability (p) of a radio link (LR) between a transmitter and a receiver in a wireless communication network for a plurality of modulation and coding schemes (MCS), said prediction method comprising: - a step of receiving an SNR vector (S); - a step of determining a vector (c) of calibration parameters from said received SNR vector (S), said step of determining the vector (c) of calibration parameters being carried out from a deep neural network (DNN) architecture; - a step of processing said calibration parameters determined for the received SNR vector (S), by a differentiable mathematical function (f(c, S)) to obtain the predicted equivalent signal-to-noise ratio (y); - a Gaussian mapping step for determining the predicted packet error probability (p) from the predicted equivalent signal-to-noise ratio (y).
2. Prediction method according to claim 1 in which the Gaussian mapping is carried out by segment interpolation and in that said prediction method comprises: - a step of learning the weights of the deep neural networks (DNN) from pairs comprising an SNR vector (S) and an associated equivalent signal-to-noise ratio (P), said pairs (S, P) being determined for the plurality of modulation and coding schemes (MCS), said pairs (S, F) being previously stored in a training database (BD), the equivalent signal-to-noise ratios (P) of the pairs (S, F) being determined by an inversion of the Gaussian mapping, said Gaussian mapping being obtained by a simulation on a Gaussian channel for a given modulation and coding scheme.
3. Prediction method according to claim 1 in which the Gaussian mapping is carried out by global interpolation and in that said prediction method comprises: - a step of learning the weights of the deep neural networks (DNN) from pairs comprising an SNR vector (S) and an associated packet error probability (^), said pairs (S, P) being determined for the plurality of modulation and coding schemes (MCS), said pairs (S, P) being previously stored in a database training data (BD).
4. Prediction method according to any one of claims 1 to 3, in which the SNR vector (S) is determined from a processing step (T) of a channel attenuation vector (h) of the radio link (L
5. r)- Prediction method according to claim 4, in which the step (T) of processing the channel attenuation vector (h) comprises a processing step (PA) for taking into account a number of antennas at transmission (Nt), the transmitter having several antennas, and a number of antennas at reception (^.), the receiver having several antennas, in order to obtain a signal-to-noise ratio vector (S').
6. A prediction method according to claim 5, wherein the step (T) of processing the channel attenuation vector (A) comprises a step (TI) of invariance processing by permutation of the signal-to-noise ratio vector (S') to obtain the SNR vector (S).
7. The prediction method of claim 6, wherein the permutation invariance (TI) processing is a sorting operation.
8. The prediction method of claim 6, wherein the permutation invariance (TI) processing is a discretization operation.
9. The prediction method of claim 6, wherein the permutation invariance (TI) processing is performed by other deep neural networks (DNN').
10. A prediction method according to any one of claims 1 to 9, wherein the SNR vector (S) is concatenated with an average signal-to-noise ratio (5^7?)-
11. A prediction method according to any one of claims 1 to 10, wherein the SNR vector (S) is concatenated with an encoding vector (°) 1 among M in the case of M modulation and coding schemes (MCS).
12. A prediction method according to any one of claims 1 to 11, wherein the differentiable mathematical function ( / (c, S)) corresponds to the following equation: with ci a first calibration parameter and c2 a second calibration parameter, the ith value of the SNR vector (S), i ranging from 1 to N and N designating the number of SNR vectors (S).
13. The prediction method of claim 12, wherein the first calibration parameter Ci is equal to 1 and said differentiable mathematical function {f(c, S)) corresponds to the following equation: «)= - c2log^E^1é'A
14. A prediction method according to claim 12, wherein the second calibration parameter c2 is equal to 1 and said differentiable mathematical function (f(c, S}) corresponds to the following equation: f(c, S) = -log^E^