Commit 7c78647f195243fda50117a36806d268ded209af

Authored by Arthur HUGEAT
1 parent ec91065abc
Exists in master

Ajout de correction.

Showing 2 changed files with 104 additions and 24 deletions Side-by-side Diff

ifcs2018_journal.tex
... ... @@ -405,16 +405,18 @@
405 405 $\pi_i^S \leq \pi_i^- + \pi_i^C - 1 - \sum_{k=1}^{i} \left(1 + \frac{r_j}{6}\right)$.
406 406 Finally, equation~\ref{eq:init} gives the number of bits of the global input.
407 407  
408   -This model is non-linear and even non-quadratic, as $F$ does not have a known
409   -linear or quadratic expression. We introduce $p$ FIR configurations
410   -$(C_{ij}, \pi_{ij}^C), 1 \leq j \leq p$ that are constants.
411   -% r2.12
  408 +{\color{red}
  409 +This model is non-linear since we multiply some variable with another variable
  410 +and it is even non-quadratic, as $F$ does not have a known
  411 +linear or quadratic expression. To linearize this problem, we introduce $p$ FIR configurations.
412 412 This variable must be defined by the user, it represent the number of different
413 413 set of coefficients generated (for memory, we use \texttt{firls} and \texttt{fir1}
414   -functions from GNU Octave).
415   -We define binary
  414 +functions from GNU Octave). So $C_{ij}$ and $\pi_{ij}^C$ become constant and
  415 +we defined $1 \leq j \leq p$ and the function $F$ can be estimate for each configurations
  416 +thanks our rejection criterion. We also defined binary
416 417 variable $\delta_{ij}$ that has value 1 if stage~$i$ is in configuration~$j$
417 418 and 0 otherwise. The new equations are as follows:
  419 +}
418 420  
419 421 \begin{align}
420 422 a_i & = \sum_{j=1}^p \delta_{ij} \times C_{ij} \times (\pi_{ij}^C + \pi_i^-), & \forall i \in [1, n] \label{eq:areadef2} \\
421 423  
... ... @@ -427,13 +429,46 @@
427 429 respectively equations \ref{eq:areadef}, \ref{eq:rejectiondef} and \ref{eq:bits}.
428 430 Equation~\ref{eq:config} states that for each stage, a single configuration is chosen at most.
429 431  
430   -% r2.13
431   -This modified model is quadratic since we multiply two variables in the
432   -equation~\ref{eq:areadef2} ($\delta_{ij}$ by $\pi_{ij}^-$) but it can be linearised if necessary.
433   -The Gurobi
  432 +{\color{red}
  433 +However the problem still quadratic since in the constraint~\ref{eq:areadef2} we multiply
  434 +$\delta_{ij}$ and $\pi_i^-$. But like $\delta_{ij}$ is a binary variable we can
  435 +linearise this multiplication if we can bound $\pi_i^-$. As $\pi_i^-$ is the data size
  436 +we define $0 < \pi_i^- \leq 128$ which is the maximal data size that we can process.
  437 +}
  438 +Moreover the Gurobi
434 439 (\url{www.gurobi.com}) optimization software is used to solve this quadratic
435 440 model, and since Gurobi is able to linearize, the model is left as is. This model
436 441 has $O(np)$ variables and $O(n)$ constraints.
  442 +
  443 +% This model is non-linear and even non-quadratic, as $F$ does not have a known
  444 +% linear or quadratic expression. We introduce $p$ FIR configurations
  445 +% $(C_{ij}, \pi_{ij}^C), 1 \leq j \leq p$ that are constants.
  446 +% % r2.12
  447 +% This variable must be defined by the user, it represent the number of different
  448 +% set of coefficients generated (for memory, we use \texttt{firls} and \texttt{fir1}
  449 +% functions from GNU Octave).
  450 +% We define binary
  451 +% variable $\delta_{ij}$ that has value 1 if stage~$i$ is in configuration~$j$
  452 +% and 0 otherwise. The new equations are as follows:
  453 +%
  454 +% \begin{align}
  455 +% a_i & = \sum_{j=1}^p \delta_{ij} \times C_{ij} \times (\pi_{ij}^C + \pi_i^-), & \forall i \in [1, n] \label{eq:areadef2} \\
  456 +% r_i & = \sum_{j=1}^p \delta_{ij} \times F(C_{ij}, \pi_{ij}^C), & \forall i \in [1, n] \label{eq:rejectiondef2} \\
  457 +% \pi_i^+ & = \pi_i^- + \left(\sum_{j=1}^p \delta_{ij} \pi_{ij}^C\right) - \pi_i^S, & \forall i \in [1, n] \label{eq:bits2} \\
  458 +% \sum_{j=1}^p \delta_{ij} & \leq 1, & \forall i \in [1, n] \label{eq:config}
  459 +% \end{align}
  460 +%
  461 +% Equations \ref{eq:areadef2}, \ref{eq:rejectiondef2} and \ref{eq:bits2} replace
  462 +% respectively equations \ref{eq:areadef}, \ref{eq:rejectiondef} and \ref{eq:bits}.
  463 +% Equation~\ref{eq:config} states that for each stage, a single configuration is chosen at most.
  464 +%
  465 +% % r2.13
  466 +% This modified model is quadratic since we multiply two variables in the
  467 +% equation~\ref{eq:areadef2} ($\delta_{ij}$ by $\pi_{ij}^-$) but it can be linearised if necessary.
  468 +% The Gurobi
  469 +% (\url{www.gurobi.com}) optimization software is used to solve this quadratic
  470 +% model, and since Gurobi is able to linearize, the model is left as is. This model
  471 +% has $O(np)$ variables and $O(n)$ constraints.
437 472  
438 473 Two problems will be addressed using the workflow described in the next section: on the one
439 474 hand maximizing the rejection capability of a set of cascaded filters occupying a fixed arbitrary
ifcs2018_journal_reponse.tex
... ... @@ -74,7 +74,7 @@
74 74 %REVIEWERS' COMMENTS:
75 75  
76 76 \documentclass[a4paper]{article}
77   -\usepackage{fullpage,graphicx}
  77 +\usepackage{fullpage,graphicx,amsmath}
78 78 \begin{document}
79 79 {\bf Reviewer: 1}
80 80  
... ... @@ -85,7 +85,7 @@
85 85 On page 2, "...allowing to save processing resource..." could be improved. % r1.1
86 86 }
87 87  
88   -The sentence was split and now reads ``number of coefficients irrelevant: processing
  88 +The sentence was split and now reads ``number of coefficients irrelevant: processing
89 89 resources are hence saved by shrinking the filter length.''
90 90  
91 91 {\bf
... ... @@ -95,7 +95,7 @@
95 95 Grammatical error: this sentence now reads ``or by sampling a wideband (125~MS/s)
96 96 Analog to Digital Converter (ADC) loaded by a 50~$\Omega$ resistor.''
97 97  
98   -{\bf
  98 +{\bf
99 99 On page 2, the whole paragraph "The first step of our approach is to model..." % r1.3
100 100 could be improved.
101 101 }
... ... @@ -103,7 +103,7 @@
103 103 Indeed this paragraph has be written again and now reads as\\
104 104 ``The first step of our approach is to model the DSP chain. Since we aim at only optimizing
105 105 the filtering part of the signal processing chain, we have not included the PRN generator or the
106   -ADC in the model: the input data size and rate are considered fixed and defined by the hardware.
  106 +ADC in the model: the input data size and rate are considered fixed and defined by the hardware.
107 107 The filtering can be done in two ways, either by considering a single monolithic FIR filter
108 108 requiring many coefficients to reach the targeted noise rejection ratio, or by
109 109 cascading multiple FIR filters, each with fewer coefficients than found in the monolithic filter.
... ... @@ -197,8 +197,8 @@
197 197 bandwidth.
198 198 }
199 199  
200   -See above: the absolute value within the passband will reject filters with
201   -excessive ripples, including excessive attenuation, within the passband.
  200 +See above: the absolute value within the passband will reject filters with
  201 +excessive ripples, including excessive attenuation, within the passband.
202 202  
203 203 {\bf
204 204 In addition, I suggest to address the following points: % r2.4
205 205  
... ... @@ -211,12 +211,11 @@
211 211 have more than 5~coefficients. Hence, while a FIR requires 128 inputs before providing
212 212 the first output, an IIR will start providing outputs only 5 time steps after the initial
213 213 input starts feeding the IIR. Hence, the issue we address here is lag and not impulse
214   -response. We aimed at making this sentence clearer by stating that ``Since latency is not an issue
  214 +response. We aimed at making this sentence clearer by stating that ``Since latency is not an issue
215 215 in a openloop phase noise characterization instrument, the large
216 216 numbre of taps in the FIR, as opposed to the shorter Infinite Impulse Response (IIR) filter,
217 217 is not considered as an issue as would be in a closed loop system in which lag aims at being
218   -minimized to avoid oscillation conditions.
219   -''
  218 +minimized to avoid oscillation conditions.''
220 219  
221 220 {\bf
222 221 - Fig. 4: the Author should motivate in the text why it has been chosen % r2.5
... ... @@ -243,8 +242,8 @@
243 242 coefficient resolution?
244 243 }
245 244  
246   -We have now stated in the beginning of the document that ``we have not included the PRN generator
247   -or the ADC in the model: the input data size and rate are considered fixed and defined by the
  245 +We have now stated in the beginning of the document that ``we have not included the PRN generator
  246 +or the ADC in the model: the input data size and rate are considered fixed and defined by the
248 247 hardware.'' so indeed the input datastream resolution is considered as a given.
249 248  
250 249 {\bf
251 250  
252 251  
253 252  
254 253  
255 254  
... ... @@ -268,21 +267,67 @@
268 267 - Page 4, line 10: how $p$ is chosen? Which is the criterion used to choose % r2.12 - fait
269 268 these particular configurations? Are they chosen automatically?
270 269 }
  270 +See below: we have added a better description of $p$ during the transformation explanation.
  271 +``we introduce $p$ FIR configurations.
  272 +This variable must be defined by the user, it represent the number of different
  273 +set of coefficients generated (for memory, we use \texttt{firls} and \texttt{fir1}
  274 +functions from GNU Octave)''
271 275  
272   -JMF : repondre
273   -
274 276 {\bf
275 277 - Page 4, line 31: how does the delta function transform model from non-linear % r2.13 - fait
276 278 and non-quadratic to a quadratic?}
277 279  
  280 +The first model is non-quadratic but when we introduce the $p$ configurations,
  281 +we can estimate the function $F$ by computing
  282 +the rejection for each configuration, so the model become quadratic because we have
  283 +some multiplication between variables. With the definition of $\delta_{ij}$ we can
  284 +replace the multiplication between variables by multiplication with binary variable and
  285 +this one can be linearise as follow:\\
  286 +$y$ is a binary variable \\
  287 +$x$ is a real variable bounded by $X^{max}$ \\
  288 +\begin{equation*}
  289 + m = x \times y \implies
  290 + \left \{
  291 + \begin{split}
  292 + m & \geq 0 \\
  293 + m & \leq y \times X^{max} \\
  294 + m & \leq x \\
  295 + m & \geq x - (1 - y) \times X^{max} \\
  296 + \end{split}
  297 + \right .
  298 +\end{equation*}
  299 +Gurobi does the linearization so we don't explain this step to keep the model more
  300 +simple. However, to improve the transformation explanation we have rewrote the
  301 +paragraph ``This model is non-linear and even non-quadratic...''.
  302 +
278 303 JMF : il faudra mettre une phrase qui explique, ca en lisant cette reponse dans l'article
279 304 je ne comprends pas comment ca repond a la question
280 305  
  306 +AH: Je mets l'idée en français, je vais essayer de traduire ça au mieux.
  307 +
  308 +Le problème n'est pas linéaire car nous multiplions des variables
  309 +entre elles. Pour y remédier, on considère que $\pi_{ij}^C$ et que $C_{ij}$ deviennent
  310 +des constantes. On introduit donc la variable binaire $\delta_{ij}$ qui nous indique
  311 +quel filtre est sélectionné étage par étage. Malgré cela, notre programme est encore
  312 +quadratique car pour la contrainte~\ref{eq:areadef2}, il reste une multiplication entre
  313 +$\delta_{ij}$ et $\pi_i^-$. Mais comme $\delta_{ij}$ est binaire, il est possible
  314 +de linéariser cette multiplication pour peu qu'on puisse borner $\pi_i^-$. Dans notre
  315 +cas définir la borne est facile car $\pi_i^-$ représente une taille de donnée,
  316 +nous définission donc $0 < \pi_i^- \leq 128$ car il s'agit de la plus grande valeur
  317 +qu'on puisse traiter. De plus nous utiliserons Gurobi qui se chargera de faire la
  318 +linéarisation pour nous.
  319 +
  320 +
281 321 {\bf
282 322 - Captions of figure and tables are too minimal. % r2.14
  323 +}
  324 +We have change the captions of fig 10-16.
  325 +
  326 +{\bf
283 327 - Figures can be grouped: fig. 10-12 can be grouped as three subplots (a, b, c) % r2.15 - fait
284 328 of a single figure. Same for fig. 13-16.
285 329 }
  330 +We add two sub figure to group the fig.10-12 and fig. 13-16
286 331  
287 332 {\bf
288 333 - Please increase the number of averages for the spectrum. Currently the noise % r2.16 - fait
... ... @@ -290,7 +335,7 @@
290 335 differences among the curves. I suggest to reduce the noise below 1 dBpk-pk.
291 336 }
292 337  
293   -Indeed averaging had been omitted during post-processing and figure generation: we
  338 +Indeed averaging had been omitted during post-processing and figure generation: we
294 339 are grateful to the reviewer for emphasizing this point which has now been corrected. All spectra
295 340 now exhibit sub-dBpk-pl line thickness.
296 341