Skip to main content

Advertisement

Log in

Evolutionary Touch Filter Chain Calibration

  • Original Research
  • Published:
SN Computer Science Aims and scope Submit manuscript

Abstract

Human machine interfaces (HMIs) are an essential part of our daily lifes. Generally, a shift from mechanical HMIs such as knobs to more electronics-based solutions can be observed. A well-known example are touch interfaces which may be found in a variety of products ranging from phones over cars to home appliances. Touch interfaces offer more usability but pose increased technical challenges which must be faced by the development team in order to meet customer demands. Additionally, legal obligations regarding their robustness must be fullfilled (even under noise) in order to allow the novel products to enter the market. This is often enabled by employing a dedicated signal filter chain which is to be set accordingly. The corresponding calibration process is often time intensive and error-prone if performed manually. This is for example the case for our industrial partner which is a major producer in the consumer electronics market. This work analyses if the pain of a manual calibration can be resolved. This task consists of probing new calibration(s) and measuring their performance as well as choosing a calibration. The former is automated by developing a corresponding testbed which can simulate various noise classes and can perform touch interactions on a real user interface using a six-axis robot. The novel calibrations are determined by a genetic algorithm (GA) which is a special optimizer out of the family of evolutionary algorithms. The optimization is the main focus of this study. Quantitatively the GA was analysed by benchmarking it successfully against several other optimizers as well as against a human expert. Furthermore, the search time of the GA could be reduced by improving the stopping criterion. The analysis is rounded up by a qualitative analysis which showed that the GA’s calibrations can withstand noise to a certain degree whilst still identifying touch events if and only if they occurred. Over all the study outlined that an automation of the manual process is possible on the scenarios considered.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Fig. 1
Fig. 2
Fig. 3
Fig. 4
Fig. 5
Fig. 6
Fig. 7
Fig. 8
Fig. 9
Fig. 10
Fig. 11
Fig. 12
Fig. 13

Similar content being viewed by others

Notes

  1. For this combination the configured TI detects no touch at all and thus the parameterization basically turns the TI into a naive classifier.

  2. An empirical analysis showed that the fitness computation uses roughly 97 percent of the search time.

References

  1. Atmel. Atmel Max Touch Overview. http://ww1.microchip.com/downloads/en/DeviceDoc/45071A_maXTouch_Portfolio_E_US_060514_Web.pdf, 2020. [Online; accessed 3-December-2020].

  2. Azuaje F. Review of “artificial immune systems: A new computational intelligence approach” by l.n. de castro and j. timmis (eds) springer, London, 2002. Neural Netw. 2003;16(8):1229.

  3. Beasley JE, Chu PC. A genetic algorithm for the set covering problem. Eur J Oper Res. 1996;94(2):392–404.

    Article  MATH  Google Scholar 

  4. Chou A, Yang J, Chelf B, Hallem S, Engler D. An empirical study of operating systems errors. SIGOPS Oper Syst Rev. 2001;35(5):73–88.

    Article  Google Scholar 

  5. Cressie N, Wikle CK. Statistics for spatio-temporal data. Amsterdam: Wiley; 2015.

    MATH  Google Scholar 

  6. Doerr A, Nguyen-Tuong D, Marco A, Schaal S, Trimpe S. Model-based policy search for automatic tuning of multivariate pid controllers. In: 2017 IEEE International Conference on Robotics and Automation (ICRA) 2017;5295–5301.

  7. Duran JW, Ntafos SC. An Evaluation of Random Testing. IEEE Trans Softw Eng 1984;SE-10(4):438–444.

  8. Eberhart R, Kennedy J. A new Optimizer using Particle Swarm Theory. In MHS’95. Proceedings of the Sixth International Symposium on Micro Machine and Human Science, 1995;39–43.

  9. EU. Directive 2014/30/EU. https://ec.europa.eu/growth/single-market/european-standards/harmonised-standards/electromagnetic-compatibility_en, 2014. [Online; accessed 7-December-2020].

  10. Ghaemi M, Feizi-Derakhshi M-R. Forest optimization algorithm. Expert Syst Appl. 2014;41(15):6676–87.

    Article  Google Scholar 

  11. Harding Simon, Leitner Jürgen, Schmidhuber Jürgen. Cartesian Genetic Programming for Image Processing, 2013;31–44. Springer New York, New York, NY.

  12. Herder Jorrit N, Bos Herbert, Gras Ben, Homburg Philip, Tanenbaum Andrew S. Failure resilience for device drivers. In 37th Annual IEEE/IFIP International Conference on Dependable Systems and Networks (DSN’07), 2007;41–50.

  13. Holland JH. Genetic Algorithms. Sci Am. 1992;267(1):66–73.

    Article  Google Scholar 

  14. Yu Hen H, Hwang J-N, Hwang J-N. Handbook of neural network signal processing. IEEE Trans Neural Netw. 2005;16:780.

    Article  Google Scholar 

  15. IEC. 61000-4-6: Testing and measurement techniques - immunity to conducted disturbances, induced by radio-frequency fields. https://www.iecee.org/dyn/www/f?p=106:49:0::::FSP_STD_ID:18793, 2009. [Online; accessed 3-December-2020].

  16. Königsberger, K. Analysis 1. Berlin, Heidelberg: Springer-Lehrbuch. Springer; 2003.

  17. Lachmann R, Felderer M, Nieke M, Schulze S, Seidl C, Schaefer I. Multi-Objective Black-Box Test Case Selection for System Testing. In Proceedings of the Genetic and Evolutionary Computation Conference, GECCO ’17, 2017;1311-1318, New York, NY, USA. Association for Computing Machinery

  18. Lambora A, Gupta K, Chopra K. Genetic algorithm- a literature review. In 2019 International Conference on Machine Learning, Big Data, Cloud and Parallel Computing (COMITCon), 2019;380–384.

  19. Man KF, Tang KS. Genetic Algorithms for Control and Signal Processing. In Proceedings of the IECON’97 23rd International Conference on Industrial Electronics, Control, and Instrumentation (Cat. No.97CH36066), volume 4, 1997;1541–1555.

  20. Margraf A, Stein A, Engstler L, Geinitz S, Hahner J. An Evolutionary Learning Approach to Self-configuring Image Pipelines in the Context of Carbon Fiber Fault Detection. In: 2017 16th IEEE International Conference on Machine Learning and Applications (ICMLA), 2017;147–154.

  21. MATT. MATT ROBOT - The ultimate Touchscreen Testing Tool. https://www.mattrobot.ai/, 2020. [Online; accessed 4-December-2020].

  22. Müller-Schloer C, Schmeck H, Ungerer T. Organic computing - a paradigm shift for complex systems. 1st ed. Berlin: Springer; 2011.

    Book  MATH  Google Scholar 

  23. Neumann Frank, Witt Carsten. Bioinspired Computation in Combinatorial Optimization: Algorithms and their Computational Complexity. Natural Computing Series, ISBN 978-3-642-16543-6. Springer, Berlin, Heidelberg, 2010.

  24. Nocedal J, Wright SJ. Numerical optimization. Springer, New York, NY: USA, second edition; 2006.

  25. OptoFidelity. Touch Testing. https://www.optofidelity.com/touch-testing/, 2020. [Online; accessed 4-December-2020].

  26. Rosenbauer L, Maier J, Gerber D, Stein A, Hähner J. An evolutionary calibration approach for touch interface filter chains. In Kurosh Madani, Oleg Gusikhin, and Henk Nijmeijer, editors, Proceedings of the 18th International Conference on Informatics in Control (ICINCO), July 6-8, 2021. 2021.

  27. Rosenbauer L, Stein A, Hähner J. An artificial immune system for black box test case selection. In Christine Zarges and Sébastien Verel, editors, Evolutionary Computation in Combinatorial Optimization, 2021;169–184, Cham. Springer.

  28. Rosenberg L, Lungren M, Halabi S, Willcox G, Baltaxe D, Lyons M. Artificial swarm intelligence employed to amplify diagnostic accuracy in radiology. In: 2018 IEEE 9th Annual Information Technology, Electronics and Mobile Communication Conference (IEMCON), 2018;1186–1191.

  29. ST. Getting Started with Touch Sensing Control on STM32 Microcontrollers. https://www.st.com/resource/en/application_note/dm00445657-getting-started-with-touch-sensing-control-on-stm32-microcontrollers-stmicroelectronics.pdf, 2018. [Online; accessed 10-December-2020].

  30. TacticleAutomationInc. Robotic Touch Panel Tester - TakTouch 1000. https://tactileautomation.com/shop/touch-panel-test-systems/robotic-touch-panel-tester-taktouch-1000/, 2020. [Online; accessed 4-December-2020].

  31. Tuzlukov V. Signal Processing Noise. Electr Eng Appl Signal Process Series: CRC Press; 2018.

  32. Walker G. A review of technologies for sensing contact location on the surface of a display. J Soc Inf Display. 2012;20(8):413–40.

    Article  Google Scholar 

  33. White E. Making Embedded Systems: Design Patterns for Great Software. O’Reilly Media, Inc., 2011.

Download references

Funding

Not applicable.

Author information

Authors and Affiliations

Authors

Contributions

Not applicable.

Corresponding author

Correspondence to Lukas Rosenbauer.

Ethics declarations

Compliance with Ethical Standards

Dear Editors and dear guest editors, this section contains the declarations necessary for the manuscript submission. Next to the required ones, we would like to express our gratitude for the invitation to contribute within the special issue. We are looking forward to your and the reviewer’s feedback.

Conflicts of interest/Conflict of interest

Not applicable.

Consent to Participate

Not applicable (no medical study).

Consent to Publish

Not applicable (no medical study).

Additional information

Publisher's Note

Springer Nature remains neutral with regard to jurisdictional claims in published maps and institutional affiliations.

This article is part of the topical collection "Informatics in Control, Automation and Robotics" guest edited by Kurosh Madani, Oleg Gusikhin and Henk Nijmeijer.

A Forest Optimization Algorithm

A Forest Optimization Algorithm

Forest optimization algorithm (FOA) is another example for an evolutionary-based optimizer, which was introduced by Ghaemi et. al. [10]. In particular, it is a generic population-based meta-heuristic that is suitable for nonlinear continuous optimization problems. The algorithm is described in form of pseudo code in Algorithm 2. Its underlying concepts and details are described in this section.

figure b

The algorithm mimics the evolutionary reproduction strategy of trees in a forest. This strategy consists of different natural procedures of seed dispersal are used to spread the population of trees other the entire forest. The local environmental circumstances determine the survival of a subset of the population over time, which are representing the fittest individuals. In analogy to these procedures, a tree represents one solution of an optimization problem and the algorithm represents the evolutionary procedure of adding and selecting the best trees from the population.

FOA contains two types of search strategies, i.e., local and global search. Local search is performed by adding small variations to single variables of one tree, whereas global replaces them by randomly chosen new values. Please note in terms of local seeding (local search), a small random value r is added to \(x_{select}\). In the presented FOA of Ghaemi et. al. [10], r is randomly chosen from the interval \([ -\Delta x, +\Delta x ]\). Additionally, the algorithm ensures to keep the affected variables in their ranges in the following way: In case of \(x_{select}\) is exceeding its parameter range, \(x_{select}\) is set to the upper limit of the range. In case of undercutting it, it is set to the lower limit, respectively.

Different hyperparameters are controlling the search behavior of the algorithm. These hyperparameters are briefly explained listed and explained:

  • area_limit: The area_limit describes the maximum number of trees, that are allowed in the forest population.

  • life_time: The lifetime parameter ensures that sub-optimal solutions, that are exceeding a certain age are removed.

  • LSC: local seeding changes (LSC) control the number of trees created while the algorithm is performing a local search operation.

  • \(\Delta x\): During local search, a small value is added to the target variable, which is randomly drawn from the interval \([ -\Delta x, +\Delta x ]\).

  • transfer_rate: transfer_rate determines how many former local trees are used for global search.

  • GSC: During global search, global seeding changes (GSC) determine how wide-spread the global search is performed.

Please note: Similar as Ghaemi et al. [10] in their experiments, the initial number of trees needs to be equal to the area limit.

This section is concluded by a brief summary of the principle steps of the algorithm. In the beginning, an initialization phase creates a starting set of trees. Afterwards the algorithm starts its iteration process until a stop criterion is met. For each iteration the following steps are performed:

  • Perform local seeding on 0-age trees.

  • Control forest and form candidate population.

  • Perform global seeding on candidate population.

  • Update the best so far tree.

Once the stopping criterion is met, the best tree representing the fittest solution is returned.

Rights and permissions

Springer Nature or its licensor holds exclusive rights to this article under a publishing agreement with the author(s) or other rightsholder(s); author self-archiving of the accepted manuscript version of this article is solely governed by the terms of such publishing agreement and applicable law.

Reprints and permissions

About this article

Check for updates. Verify currency and authenticity via CrossMark

Cite this article

Gerber, D., Rosenbauer, L., Lindner, P. et al. Evolutionary Touch Filter Chain Calibration. SN COMPUT. SCI. 4, 26 (2023). https://doi.org/10.1007/s42979-022-01375-8

Download citation

  • Received:

  • Accepted:

  • Published:

  • DOI: https://doi.org/10.1007/s42979-022-01375-8

Keywords

Navigation