Computational intelligence

The expression computational intelligence (CI) usually refers to the ability of a computer to learn a specific task from data or experimental observation. Even though it is commonly considered a synonym of soft computing, there is still no commonly accepted definition of computational intelligence.

Generally, computational intelligence is a set of nature-inspired computational methodologies and approaches to address complex real-world problems to which mathematical or traditional modelling can be useless for a few reasons: the processes might be too complex for mathematical reasoning, it might contain some uncertainties during the process, or the process might simply be stochastic in nature.[1][page needed] Indeed, many real-life problems cannot be translated into binary language (unique values of 0 and 1) for computers to process it. Computational Intelligence therefore provides solutions for such problems.

The methods used are close to the human's way of reasoning, i.e. it uses inexact and incomplete knowledge, and it is able to produce control actions in an adaptive way. CI therefore uses a combination of five main complementary techniques.[1] The fuzzy logic which enables the computer to understand natural language,[2][page needed][3] artificial neural networks which permits the system to learn experiential data by operating like the biological one, evolutionary computing, which is based on the process of natural selection, learning theory, and probabilistic methods which helps dealing with uncertainty imprecision.[1]

Except those main principles, currently popular approaches include biologically inspired algorithms such as swarm intelligence[4] and artificial immune systems, which can be seen as a part of evolutionary computation, image processing, data mining, natural language processing, and artificial intelligence, which tends to be confused with Computational Intelligence. But although both Computational Intelligence (CI) and Artificial Intelligence (AI) seek similar goals, there's a clear distinction between them[according to whom?][citation needed].

Computational Intelligence is thus a way of performing like human beings[citation needed]. Indeed, the characteristic of "intelligence" is usually attributed[by whom?] to humans. More recently, many products and items also claim to be "intelligent", an attribute which is directly linked to the reasoning and decision making[further explanation needed].

History

edit

Source:[5] The notion of Computational Intelligence was first used by the IEEE Neural Networks Council in 1990. This council was founded in the 1980s by a group of researchers interested in the development of biological and artificial neural networks. On November 21, 2001, the IEEE Neural Networks Council became the IEEE Neural Networks Society, to become the IEEE Computational Intelligence Society two years later by including new areas of interest such as fuzzy systems and evolutionary computation, which they related to Computational Intelligence in 2011 (Dote and Ovaska).

But the first clear definition of Computational Intelligence was introduced by Bezdek in 1994:[1] a system is called computationally intelligent if it deals with low-level data such as numerical data, has a pattern-recognition component and does not use knowledge in the AI sense, and additionally when it begins to exhibit computational adaptively, fault tolerance, speed approaching human-like turnaround and error rates that approximate human performance.

Bezdek and Marks (1993) clearly differentiated CI from other subsets of AI, by arguing that the first one is based on soft computing methods, whereas AI is based on hard computing ones.

Differences between Computational Intelligence and other historic approaches to Artificial Intelligence

edit

According to Bezdek (1994), while Computational Intelligence is a subset of Artificial Intelligence indeed, there are two types of machine intelligence: the artificial one based on hard computing techniques and the computational one based on soft computing methods, which enable adaptation to many situations. According to Engelbrecht (2007), algorithmic approaches that have been classified to form the Computational Intelligence approach to AI - namely Fuzzy systems, Neural Nets, Evolutionary Computation, Swarm Intelligence, and Artificial ImmuneSystems- are called "intelligent algorithms". Together with logic, deductive reasoning, expert systems, case-based reasoning, and symbolic machine learning systems (the aforementioned "hard" computing approaches), formed the Artificial Intelligence toolset of the time. Of course today, with machine learning and deep learning in particular utilizing a breadth of supervised, unupervised, and reinforcement learning approaches, the AI landscape has been greatly enhanced, with novell intelligent approaches.

Hard computing techniques work following binary logic based on only two values (the Booleans true or false, 0 or 1) on which modern computers are based. One problem with this logic is that our natural language cannot always be translated easily into absolute terms of 0 and 1. Soft computing techniques, based on fuzzy logic can be useful here.[6] Much closer to the way the human brain works by aggregating data to partial truths (Crisp/fuzzy systems), this logic is one of the main exclusive aspects of CI.

Within the same principles of fuzzy and binary logics follow crispy and fuzzy systems.[7] Crisp logic is a part of artificial intelligence principles and consists of either including an element in a set, or not, whereas fuzzy systems (CI) enable elements to be partially in a set. Following this logic, each element can be given a degree of membership (from 0 to 1) and not exclusively one of these 2 values.[8]

The five main algorithmic approaches of CI and their applications

edit

The main applications of Computational Intelligence include computer science, engineering, data analysis and bio-medicine.

Fuzzy logic

edit

As explained before, fuzzy logic, one of CI's main principles, consists in measurements and process modelling made for real life's complex processes.[3] It can face incompleteness, and most importantly ignorance of data in a process model, contrarily to Artificial Intelligence, which requires exact knowledge.

This technique tends to apply to a wide range of domains such as control, image processing and decision making. But it is also well introduced in the field of household appliances with washing machines, microwave ovens, etc. We can face it too when using a video camera, where it helps stabilizing the image while holding the camera unsteadily. Other areas such as medical diagnostics, foreign exchange trading and business strategy selection are apart from this principle's numbers of applications.[1]

Fuzzy logic is mainly useful for approximate reasoning, and doesn't have learning abilities,[1] a qualification much needed that human beings have.[citation needed] It enables them to improve themselves by learning from their previous mistakes.

Neural networks

edit

This is why CI experts work on the development of artificial neural networks based on the biological ones, which can be defined by 3 main components: the cell-body which processes the information, the axon, which is a device enabling the signal conducting, and the synapse, which controls signals. Therefore, artificial neural networks are doted of distributed information processing systems,[9] enabling the process and the learning from experiential data. Working like human beings, fault tolerance is also one of the main assets of this principle.[1]

Concerning its applications, neural networks can be classified into five groups: data analysis and classification, associative memory, clustering generation of patterns and control.[1] Generally, this method aims to analyze and classify medical data, proceed to face and fraud detection, and most importantly deal with nonlinearities of a system in order to control it.[10] Furthermore, neural networks techniques share with the fuzzy logic ones the advantage of enabling data clustering.

Evolutionary computation

edit

Evolutionary computation can be seen as a family of methods and algorithms for global optimization, which are usually based on a population of candidate solutions. They are inspired by biological evolution and are often summarized as evolutionary algorithms.[11] These include the genetic algorithms, evolution strategy, genetic programming and many others.[12] They are considered as problem solvers for tasks not solvable by traditional mathematical methods[13] and are frequently used for optimization including multi-objective optimization.[14]

Learning theory

edit

Still looking for a way of "reasoning" close to the humans' one, learning theory is one of the main approaches of CI. In psychology, learning is the process of bringing together cognitive, emotional and environmental effects and experiences to acquire, enhance or change knowledge, skills, values and world views (Ormrod, 1995; Illeris, 2004).[1] Learning theories then helps understanding how these effects and experiences are processed, and then helps making predictions based on previous experience.[15]

Probabilistic methods

edit

Being one of the main elements of fuzzy logic, probabilistic methods firstly introduced by Paul Erdos and Joel Spencer[1](1974), aim to evaluate the outcomes of a Computation Intelligent system, mostly defined by randomness.[16] Therefore, probabilistic methods bring out the possible solutions to a problem, based on prior knowledge.

Impact on university education

edit

According to bibliometrics studies, computational intelligence plays a key role in research.[17] All the major academic publishers are accepting manuscripts in which a combination of Fuzzy logic, neural networks and evolutionary computation is discussed. On the other hand, Computational intelligence isn't available in the university curriculum.[18] The amount of technical universities in which students can attend a course is limited. Only British Columbia, Technical University of Dortmund (involved in the European fuzzy boom) and Georgia Southern University are offering courses from this domain.

The reason why major university are ignoring the topic is because they don't have the resources. The existing computer science courses are so complex, that at the end of the semester there is no room for fuzzy logic.[19] Sometimes it is taught as a subproject in existing introduction courses, but in most cases the universities are preferring courses about classical AI concepts based on boolean logic, turing machines and toy problems like blocks world.

Since a while with the upraising of STEM education, the situation has changed a bit.[20] There are some efforts available in which multidisciplinary approaches are preferred which allows the student to understand complex adaptive systems.[21] These objectives are discussed only on a theoretical basis. The curriculum of real universities wasn't adapted yet.

Publications

edit

See also

edit

Notes

edit
  • Computational Intelligence: An Introduction by Andries Engelbrecht. Wiley & Sons. ISBN 0-470-84870-7
  • Computational Intelligence: A Logical Approach by David Poole, Alan Mackworth, Randy Goebel. Oxford University Press. ISBN 0-19-510270-3
  • Computational Intelligence: A Methodological Introduction by Kruse, Borgelt, Klawonn, Moewes, Steinbrecher, Held, 2013, Springer, ISBN 9781447150121

References

edit
  1. ^ a b c d e f g h i j Siddique, Nazmul; Adeli, Hojjat (2013). Computational Intelligence: Synergies of Fuzzy Logic, Neural Networks and Evolutionary Computing. John Wiley & Sons. ISBN 978-1-118-53481-6.
  2. ^ Rutkowski, Leszek (2008). Computational Intelligence: Methods and Techniques. Springer. ISBN 978-3-540-76288-1.
  3. ^ a b "Fuzzy Logic". WhatIs.com. Margaret Rouse. July 2006.
  4. ^ Beni, Gerardo; Wang, Jing (1993). "Swarm Intelligence in Cellular Robotic Systems". Robots and Biological Systems: Towards a New Bionics?. pp. 703–712. doi:10.1007/978-3-642-58069-7_38. ISBN 978-3-642-63461-1.
  5. ^ "IEEE Computational Intelligence Society History". Engineering and Technology history Wiki. July 22, 2014. Retrieved October 30, 2015.
  6. ^ "Artificial Intelligence, Computational Intelligence, SoftComputing, Natural Computation - what's the difference? - ANDATA". www.andata.at. Retrieved November 5, 2015.
  7. ^ "Fuzzy Sets and Pattern Recognition". www.cs.princeton.edu. Retrieved November 5, 2015.
  8. ^ R. Pfeifer. 2013. Chapter 5: FUZZY Logic. Lecture notes on "Real-world computing". Zurich. University of Zurich.
  9. ^ Stergiou, Christos; Siganos, Dimitrios. "Neural Networks". SURPRISE 96 Journal. Imperial College London. Archived from the original on December 16, 2009. Retrieved March 11, 2015.
  10. ^ Somers, Mark John; Casal, Jose C. (July 2009). "Using Artificial Neural Networks to Model Nonlinearity" (PDF). Organizational Research Methods. 12 (3): 403–417. doi:10.1177/1094428107309326. S2CID 17380352. Retrieved October 31, 2015.
  11. ^ De Jong, Kenneth A. (2006). Evolutionary Computation: A Unified Approach. Cambridge, MA: MIT Press. ISBN 978-0-262-52960-0.
  12. ^ Eiben, A.E.; Smith, J.E. (2015). "Popular Evolutionary Algorithm Variants". Introduction to Evolutionary Computing. Natural Computing Series. Berlin, Heidelberg: Springer. pp. 99–116. doi:10.1007/978-3-662-44874-8. ISBN 978-3-662-44873-1.
  13. ^ De Jong, Kenneth A. (2006). "Evolutionary Algorithms as Problem Solvers". Evolutionary Computation: A Unified Approach. Cambridge, MA: MIT Press. pp. 71–114. ISBN 978-0-262-52960-0.
  14. ^ Branke, Jürgen; Deb, Kalyanmoy; Miettinen, Kaisa; Słowiński, Roman, eds. (2008). Multiobjective Optimization: Interactive and Evolutionary Approaches. Lecture Notes in Computer Science. Vol. 5252. Berlin, Heidelberg: Springer Berlin Heidelberg. doi:10.1007/978-3-540-88908-3. ISBN 978-3-540-88907-6.
  15. ^ Worrell, James. "Computational Learning Theory: 2014-2015". University of Oxford. Presentation page of CLT course. Retrieved February 11, 2015.
  16. ^ Palit, Ajoy K.; Popovic, Dobrivoje (2006). Computational Intelligence in Time Series Forecasting : Theory and Engineering Applications. Springer Science & Business Media. p. 4. ISBN 9781846281846.
  17. ^ NEES JAN VAN ECK and LUDO WALTMAN (2007). "Bibliometric Mapping of the Computational Intelligence Field". International Journal of Uncertainty, Fuzziness and Knowledge-Based Systems. 15 (5). World Scientific Pub Co Pte Lt: 625–645. doi:10.1142/s0218488507004911. hdl:1765/10073.
  18. ^ Minaie, Afsaneh and Sanati-Mehrizy, Paymon and Sanati-Mehrizy, Ali and Sanati-Mehrizy, Reza (2013). "Computational Intelligence Course in Undergraduate Computer Science and Engineering Curricula" (PDF). Age. 23: 1.{{cite journal}}: CS1 maint: multiple names: authors list (link)
  19. ^ Mengjie Zhang (2011). "Experience of Teaching Computational Intelligence in an Undergraduate Level Course [Educational Forum]". IEEE Computational Intelligence Magazine. 6 (3). Institute of Electrical and Electronics Engineers (IEEE): 57–59. doi:10.1109/mci.2011.941591.
  20. ^ Samanta, Biswanath (2011). Computational intelligence: a Tool for Multidisciplinary Education and Research. Proceedings of the 2011 ASEE Northeast Section Annual Conference, University of Hartford.
  21. ^ G.K.K. Venayagamoorthy (2009). "A successful interdisciplinary course on computational intelligence". IEEE Computational Intelligence Magazine. 4 (1). Institute of Electrical and Electronics Engineers (IEEE): 14–23. doi:10.1109/mci.2008.930983.