Commit 9c253d6d247e44f3801c0463afe289f421ab5133

Authored by Arthur HUGEAT
1 parent 56f7c40c96
Exists in master

Correction sur le critère de selection.

Showing 4 changed files with 113 additions and 56 deletions Side-by-side Diff

ifcs2018_journal.tex
... ... @@ -297,7 +297,7 @@
297 297 % the passband are not considered and might be excessive for excessively wide transitions widths introduced for filters with few coefficients.
298 298 Our criterion to compute the filter rejection considers
299 299 % r2.8 et r2.2 r2.3
300   -the maximum magnitude within the stopband, to which the {\color{red}sum of the absolute values
  300 +the {\color{red}minimal} rejection within the stopband, to which the {\color{red}sum of the absolute values
301 301 within the passband is subtracted to avoid filters with excessive ripples}. With this
302 302 criterion, we meet the expected rejection capability of low pass filters as shown in figure~\ref{fig:custom_criterion}.
303 303  
... ... @@ -411,8 +411,11 @@
411 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). 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
  414 +functions from GNU Octave). To choose this value, we consider a subset of the figure~\ref{fig:rejection_pyramid}
  415 +to restrict the number of configurations. Indeed, it is useless to have too many coefficients or
  416 +too many bits, hence we take the configurations close to edge of pyramid. Thank to theses
  417 +configurations $C_{ij}$ and $\pi_{ij}^C$ ($1 \leq j \leq p$) become constant
  418 +and the function $F$ can be estimate for each configurations
416 419 thanks our rejection criterion. We also defined binary
417 420 variable $\delta_{ij}$ that has value 1 if stage~$i$ is in configuration~$j$
418 421 and 0 otherwise. The new equations are as follows:
419 422  
... ... @@ -432,13 +435,25 @@
432 435 {\color{red}
433 436 However the problem still quadratic since in the constraint~\ref{eq:areadef2} we multiply
434 437 $\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.
  438 +linearize this multiplication. The following formula shows how to linearize
  439 +this situation in general case with $y$ a binary variable and $x$ a real variable ($0 \leq x \leq X^{max}$):
  440 +\begin{equation*}
  441 + m = x \times y \implies
  442 + \left \{
  443 + \begin{split}
  444 + m & \geq 0 \\
  445 + m & \leq y \times X^{max} \\
  446 + m & \leq x \\
  447 + m & \geq x - (1 - y) \times X^{max} \\
  448 + \end{split}
  449 + \right .
  450 +\end{equation*}
  451 +
  452 +So if we bound up $\pi_i^-$ by 128~bits to represent the maximum data size tolerated,
  453 +the Gurobi (\url{www.gurobi.com}) optimization software will be able to linearize
  454 +for us the quadratic problem so the model is left as is.
437 455 }
438   -Moreover the Gurobi
439   -(\url{www.gurobi.com}) optimization software is used to solve this quadratic
440   -model, and since Gurobi is able to linearize, the model is left as is. This model
441   -has $O(np)$ variables and $O(n)$ constraints.
  456 +This model has $O(np)$ variables and $O(n)$ constraints.
442 457  
443 458 % This model is non-linear and even non-quadratic, as $F$ does not have a known
444 459 % linear or quadratic expression. We introduce $p$ FIR configurations
ifcs2018_journal_reponse.tex
... ... @@ -74,7 +74,7 @@
74 74 %REVIEWERS' COMMENTS:
75 75  
76 76 \documentclass[a4paper]{article}
77   -\usepackage{fullpage,graphicx,amsmath}
  77 +\usepackage{fullpage,graphicx,amsmath, subcaption}
78 78 \begin{document}
79 79 {\bf Reviewer: 1}
80 80  
81 81  
82 82  
... ... @@ -82,21 +82,21 @@
82 82 %In general, the language/grammar is adequate.
83 83  
84 84 {\bf
85   -On page 2, "...allowing to save processing resource..." could be improved. % r1.1
  85 +On page 2, "...allowing to save processing resource..." could be improved. % r1.1 - fait
86 86 }
87 87  
88 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
92   -On page 2, "... or thanks at a radiofrequency-grade..." isn't at all clear what % r1.2
  92 +On page 2, "... or thanks at a radiofrequency-grade..." isn't at all clear what % r1.2 - fait
93 93 the author meant.}
94 94  
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 98 {\bf
99   -On page 2, the whole paragraph "The first step of our approach is to model..." % r1.3
  99 +On page 2, the whole paragraph "The first step of our approach is to model..." % r1.3 - fait
100 100 could be improved.
101 101 }
102 102  
... ... @@ -151,7 +151,7 @@
151 151 %filters are really superior than monolithic filters.
152 152  
153 153 {\bf
154   -By observing the results presented in fig. 10-16, it is clear that the % r2.1 - fait
  154 +By observing the results presented in fig. 10-16, it is clear that the % r2.1
155 155 performances of multi-stage filters are obtained at the expense of their
156 156 selectivity and, in this sense, the filters presented in these figures
157 157 are not equivalent. For example, in Fig. 14, at the limit of the pass band,
158 158  
159 159  
160 160  
... ... @@ -162,24 +162,62 @@
162 162 We have added on Figs 10--16 (now Fig 9(a)--(c)) the templates used to defined
163 163 the bandpass and the bandstop of the filter.
164 164  
165   -We are aware of this non equivalence but we think that difference is not due to
166   -the cascaded filters but due to the definition of rejection criterion on the passband.
167   -Indeed, in this article we have choose to take the summation of absolute values divide
168   -by the bandwidth but this criterion is maybe too permissive and when we cascade
169   -some filters this impact is more important.
  165 +% We are aware of this non equivalence but we think that difference is not due to
  166 +% the cascaded filters but due to the definition of rejection criterion on the passband.
  167 +% Indeed, in this article we have choose to take the summation of absolute values divide
  168 +% by the bandwidth but this criterion is maybe too permissive and when we cascade
  169 +% some filters this impact is more important.
  170 +%
  171 +% However if we change the passband
  172 +% criterion by the summation of absolute value in passband, weighting given to the
  173 +% passband ripples are too strong and the solver are too restricted to provide
  174 +% any interesting solution but the ripples in passband will be minimal. And if we take the maximum absolute value in
  175 +% passband, the rejection evaluation are too close form the original criterion and
  176 +% the result will not be improved.
  177 +%
  178 +% In this article, we will highlight the methodology instead of the filter conception.
  179 +% Even if our rejection criterion is not the best, our methodology was not impacted
  180 +% by this. So to improve the results, we can choose another criterion to be more
  181 +% selective in passband but it is not the main objective of our article.
170 182  
171   -However if we change the passband
172   -criterion by the summation of absolute value in passband, weighting given to the
173   -passband ripples are too strong and the solver are too restricted to provide
174   -any interesting solution but the ripples in passband will be minimal. And if we take the maximum absolute value in
175   -passband, the rejection evaluation are too close form the original criterion and
176   -the result will not be improved.
  183 +We are aware of this equivalence but to limit this ripples in passband we need to
  184 +enforce the criterion in passband. If we takes a strong constraint like the sum of
  185 +absolute values in passband. This criterion si too selective because it considers
  186 +all bin on passband while on stopband we consider only the bin with the minimal
  187 +rejection. The figure~\ref{fig:letter_sum_criterion} exhibits the results with this
  188 +criterion for the case MAX/1000. With this criterion, the solver find an optimal
  189 +solution with only two filters in expend of the resource consumption.
177 190  
178   -In this article, we will highlight the methodology instead of the filter conception.
179   -Even if our rejection criterion is not the best, our methodology was not impacted
180   -by this. So to improve the results, we can choose another criterion to be more
181   -selective in passband but it is not the main objective of our article.
182 191  
  192 +
  193 +If we relax a little the criterion on passband with taking only the maximum absolute
  194 +value, we will penalize the ripple peak on passband. The figure~\ref{fig:letter_max_criterion}
  195 +shows the results for the case MAX/1000. There as almost no difference with the
  196 +article results. Indeed the only little change are on the case $i = 4$ and $i = 5$
  197 +which they have some minor differences on coefficients choices.
  198 +
  199 +\begin{figure}[h!tb]
  200 + \centering
  201 + \begin{subfigure}{0.48\linewidth}
  202 + \includegraphics[width=\linewidth]{images/letter_sum_criterion}
  203 + \caption{Results for the case MAX/1000 with as criterion on passband the sum absolute values}
  204 + \label{fig:letter_sum_criterion}
  205 + \end{subfigure}
  206 + \begin{subfigure}{0.48\linewidth}
  207 + \includegraphics[width=\linewidth]{images/letter_max_criterion}
  208 + \caption{Results for the case MAX/1000 with as criterion on passband the maximum absolute value}
  209 + \label{fig:letter_max_criterion}
  210 + \end{subfigure}
  211 +\end{figure}
  212 +
  213 +Finally, if we ponder the maximum absolute on passband, we should improve the result.
  214 +We have arbitrary pondered by 5 the maximum. Even with this weighting, the solver
  215 +choose the same coefficient set.
  216 +
  217 +To conclude, find a better criterion to avoid the ripples on the passband is difficult.
  218 +In this article we are focused on the methodology so even if our criterion could
  219 +be improved, our methodology still the same and it works independently of rejection criterion.
  220 +
183 221 % %Peut etre refaire une serie de simulation dans lesquelles on impose une coupure
184 222 % %non pas entre 40 et 60\% mais entre 50 et 60\% pour demontrer que l'outil s'adapte
185 223 % %au critere qu'on lui impose, et que la coupure moins raide n'est pas intrinseque
... ... @@ -197,7 +235,7 @@
197 235 % Dire que la chute n'est pas du à la casacade mais à notre critère de rejection
198 236  
199 237 {\bf
200   -The reason is in the criterion that considers the average attenuation in % r2.2 - fait
  238 +The reason is in the criterion that considers the average attenuation in % r2.2
201 239 the pass band. This criterion does not take into account the maximum attenuation
202 240 in this region, which is a very important parameter for specifying a filter
203 241 and for evaluating its performance. For example, with this criterion, a
... ... @@ -206,8 +244,9 @@
206 244 and in the results that are obtained and has to be reconsidered.
207 245 }
208 246  
209   -See above: If we choose the maximum absolute value in passband, we penalize the
210   -case with 10 dB of ripple.
  247 +See above: Choose a criterion is difficult and depending on the context. The main
  248 +contribution on this paper is the methodology not the criterion to quantify the
  249 +rejection.
211 250  
212 251 % The manuscript erroneously stated that we considered the mean of the absolute
213 252 % value within the bandpass: the manuscript has now been corrected to properly state
... ... @@ -231,7 +270,7 @@
231 270 % TODO: test max(stopband) - max(abs(passband))
232 271  
233 272 {\bf
234   -In addition, I suggest to address the following points: % r2.4
  273 +In addition, I suggest to address the following points: % r2.4 - fait
235 274 - Page 1, line 50: the Authors state that IIR have shorter impulse response
236 275 than FIR. This is not true in general. The sentence should be reconsidered.
237 276 }
... ... @@ -248,7 +287,7 @@
248 287 minimized to avoid oscillation conditions.''
249 288  
250 289 {\bf
251   -- Fig. 4: the Author should motivate in the text why it has been chosen % r2.5
  290 +- Fig. 4: the Author should motivate in the text why it has been chosen % r2.5 - fait
252 291 this transition bandwidth and if it is a typical requirement for phase-noise
253 292 metrology.
254 293 }
255 294  
256 295  
... ... @@ -279,13 +318,16 @@
279 318 {\bf
280 319 - Page 3, line 47: the initial criterion can be omitted and, consequently, % r2.7 - fait
281 320 Fig. 5 can be removed.
  321 +}
  322 +
  323 +Juste mettre une phrase pour dire que la mean ne donnait pas de bons résultats
  324 +
  325 +{\bf
282 326 - Page 3, line 55: ``maximum rejection'' is not compatible with fig. 4. % r2.8 - fait
283 327 It should be ``minimum''
284 328 }
285   -AH: Je ne suis pas d'accord, le critère n'est pas le min de la rejection mais le max
286   -de la magnitude. J'ai corrigé en ce sens.
287 329  
288   -Juste mettre une phrase pour dire que la mean ne donnait pas de bons résultats
  330 +This typo has been corrected.
289 331  
290 332 {\bf
291 333 - Page e, line 55, second column: ``takin'' % r2.9 - fait
... ... @@ -309,7 +351,7 @@
309 351 functions from GNU Octave)''
310 352  
311 353 {\bf
312   -- Page 4, line 31: how does the delta function transform model from non-linear % r2.13 - fait
  354 +- Page 4, line 31: how does the delta function transform model from non-linear % r2.13
313 355 and non-quadratic to a quadratic?}
314 356  
315 357 The first model is non-quadratic but when we introduce the $p$ configurations,
... ... @@ -335,22 +377,22 @@
335 377 simple. However, to improve the transformation explanation we have rewrote the
336 378 paragraph ``This model is non-linear and even non-quadratic...''.
337 379  
338   -JMF : il faudra mettre une phrase qui explique, ca en lisant cette reponse dans l'article
339   -je ne comprends pas comment ca repond a la question
340   -
341   -AH: Je mets l'idée en français, je vais essayer de traduire ça au mieux.
342   -
343   -Le problème n'est pas linéaire car nous multiplions des variables
344   -entre elles. Pour y remédier, on considère que $\pi_{ij}^C$ et que $C_{ij}$ deviennent
345   -des constantes. On introduit donc la variable binaire $\delta_{ij}$ qui nous indique
346   -quel filtre est sélectionné étage par étage. Malgré cela, notre programme est encore
347   -quadratique car pour la contrainte~\ref{eq:areadef2}, il reste une multiplication entre
348   -$\delta_{ij}$ et $\pi_i^-$. Mais comme $\delta_{ij}$ est binaire, il est possible
349   -de linéariser cette multiplication pour peu qu'on puisse borner $\pi_i^-$. Dans notre
350   -cas définir la borne est facile car $\pi_i^-$ représente une taille de donnée,
351   -nous définission donc $0 < \pi_i^- \leq 128$ car il s'agit de la plus grande valeur
352   -qu'on puisse traiter. De plus nous utiliserons Gurobi qui se chargera de faire la
353   -linéarisation pour nous.
  380 +% JMF : il faudra mettre une phrase qui explique, ca en lisant cette reponse dans l'article
  381 +% je ne comprends pas comment ca repond a la question
  382 +%
  383 +% AH: Je mets l'idée en français, je vais essayer de traduire ça au mieux.
  384 +%
  385 +% Le problème n'est pas linéaire car nous multiplions des variables
  386 +% entre elles. Pour y remédier, on considère que $\pi_{ij}^C$ et que $C_{ij}$ deviennent
  387 +% des constantes. On introduit donc la variable binaire $\delta_{ij}$ qui nous indique
  388 +% quel filtre est sélectionné étage par étage. Malgré cela, notre programme est encore
  389 +% quadratique car pour la contrainte~\ref{eq:areadef2}, il reste une multiplication entre
  390 +% $\delta_{ij}$ et $\pi_i^-$. Mais comme $\delta_{ij}$ est binaire, il est possible
  391 +% de linéariser cette multiplication pour peu qu'on puisse borner $\pi_i^-$. Dans notre
  392 +% cas définir la borne est facile car $\pi_i^-$ représente une taille de donnée,
  393 +% nous définission donc $0 < \pi_i^- \leq 128$ car il s'agit de la plus grande valeur
  394 +% qu'on puisse traiter. De plus nous utiliserons Gurobi qui se chargera de faire la
  395 +% linéarisation pour nous.
354 396  
355 397  
356 398 {\bf
images/letter_max_criterion.pdf
No preview for this file type
images/letter_sum_criterion.pdf
No preview for this file type