ICT619 Intelligent Systems Topic 1: Introduction to Intelligent Systems: background and overview What is an intelligent system? There is considerable ongoing debate among scientists about the meaning of the word intelligence, although most of us would agree on some common traits regarded as manifestations of intelligence. The most important attributes of human-like intelligence capabilities are: Logical Inferencing and Deduction Contextual Domain Knowledge Pattern Recognition Learning and Adaptivity In this study, we will deal with man-made systems that are regarded as intelligent. The intelligence possessed by these systems is referred to as machine intelligence. The question asked is whether the display of what one would regard as intelligent behaviour makes a machine intelligent. Some argue that a truly intelligent system should be capable of adapting itself to solve problems in a range of environments. A case in point is IBM’s Deep Blue, which was deemed (mainly by the media) to be highly “intelligent” as it defeated a world chess champion, but unlike humans, it exhibited no capacity for learning by itself. Most of today’s intelligent information systems would fail to meet this criterion of automatic learning or self-adaptation. For our purpose, we’ll adopt a somewhat looser definition of an intelligent system as one that solves problems by following processes that are similar in certain ways to problem solving by humans. Intelligent systems in the context of business application are smart information systems that utilise one or more intelligence tools mentioned below to aid decision making (known as decision support systems or DSS). These systems can analyse problems to extract new information for providing insights, recognising trends, and making predictions. Rapid progress in computer hardware and software, and information technology infrastructure over the last two decades in particular means we are now able to access and process information at speeds which enable many of the intelligence tools to be useful and practical. Intelligent techniques and systems are now poised to become more and more commonplace in all aspects of life including the business environment. Significance of intelligent systems in business Intelligent systems are proving vital in providing knowledge – the so-called “business intelligence” crucial for business success. Examples of such intelligence are information about customer behaviour, market trends, efficiency bottlenecks etc, which can make it possible to Increase productivity through more efficient allocation of resources Obtain competitive advantage by making appropriate strategic decisions. Some examples of successful intelligent systems applications in business are: customer service scheduling data mining financial market prediction quality control consumer product marketing Intelligent Systems are assuming greater significance at all levels of management from the CEO to the operational manager. This trend is likely to continue as more traditional methods of problem solving and data analysis are superseded by newly emerging intelligent methodologies, particularly for unstructured problems like optimisation, for which algorithmic solutions are difficult if not impossible. Knowledge of available intelligent systems products is becoming an important part of the know-how for people with managerial and decision making responsibilities. According to one estimate, investment in AI for customer service systems could increase from $100 million in 2001 to $1 billion 2005. Characteristics of intelligent systems Intelligent systems possess one or more of these characteristics Capability to extract and store knowledge Human like reasoning process Learning from experience (or training) Dealing with imprecise expressions of facts Finding solutions through processes similar to natural evolution We’ll find how these characteristics are embodied in intelligent systems through the use of a number of methodologies outlined below. There is also a growing trend for intelligent systems to exhibit human-like communication abilities through natural language understanding, speech recognition and synthesis, and image analysis. Most intelligent systems in use today are based either on the rule based methodology from the field of Artificial Intelligence(AI) known popularly as expert systems, or on one or more of the methodologies belonging to the more recently emerging field known as Soft Computing (SC). The field of Artificial Intelligence (AI) Carnegie Mellon professor Tom Mitchell described AI as "inventing machines that will help people in a variety of ways by giving machines some of the sophisticated capabilities that humans have, such as the ability to understand spoken words or interpret images, or to learn from experience." There appears to be no single universally accepted definition of artificial intelligence (Fogel 2000). It is nevertheless safe to say that the field of AI is primarily concerned with the goal of developing software aimed at enabling machines to display intelligence by solving problems using reasoning similar to humans. AI attempts to achieve the goal of mimicking human intelligence by building a model of the way knowledge is represented and processed by the human mind. Naturally, it is concerned with the study of the way we reason to solve problems, and at a different level, the way our brain functions. AI has drawn researchers not just from computer science and information systems but also from fields such as psychology and neurology, who endeavour to understand the structure and functions of the brain. AI has been in existence as a discipline since the sixties, but it has failed to live up to the excitement and expectation it generated initially. Its progress has been limited by a lack of our understanding of the problem solving process taking place in the human mind, and the complex nature of the problems it has tried to solve. One of the more successful products of AI research is a knowledge-based system for problem solving, known as an expert system. Knowledge in expert systems is usually encoded in the form of rules. The Soft Computing paradigm Also known as Computational Intelligence, soft computing differs from conventional computing in that, techniques belonging to it can be tolerant of imprecise, incomplete or corrupt input data. Some of them can solve problems without requiring the solution steps or reasoning process to be explicitly stated. Some soft computing systems develop the capability to solve problems through repeated observation and adaptation. Some arrive at a solution through a process similar to evolution in nature. In more than one ways, the human mind is the role model for soft computing techniques - for example, the ability to solve problems expressed in vague terms, or solving problems without making use of explicit solution steps. Arriving at a solution through an evolutionary process is commonplace in nature. The predominant SC methodologies found in current intelligent systems are: Artificial Neural Networks (ANN) Fuzzy Systems Genetic Algorithms (GA) 2 An Overview of Intelligent System Methodologies Expert Systems Expert systems are designed to solve problems in a specific and often quite narrow domain, eg, a system to diagnose a particular type of disease, or to assist foreign currency traders in deciding when to buy or sell. Expert systems are built by interrogating human experts about their knowledge in the relevant problem domain. Their expertise is stored in a form suitable for solving problems in that domain by following a reasoning strategy. The most common form of the expert system knowledge base is a collection of IF … THEN … rules. Expert systems take a top-down approach in the sense that they attempt to mimic the problem solving strategy followed by human experts and work their way to a solution using data specific to a problem instance. Some of the areas expert systems have found applications in are: banking and finance manufacturing retail personnel management emergency services law biotechnology media music Artificial Neural Networks (ANN) Unlike expert systems, ANNs follow a bottom-up approach. They try to mimic the way the basic processing elements in the human brain, known as neurons, are thought to operate. The highly interconnected neurons function as a massively parallel system of relatively simple processing elements. ANNs learn from experience gained usually through being presented with data representing examples, with or without human intervention. The problem solving strategy remains implicit and unknown to the user. This makes them particularly suitable for problems for which solution strategies or algorithms are hard to come by. As we’ll find later, decision support systems usually face problems of this nature. Use of ANNs in industry and business have been growing since the late eighties with a major breakthrough in training algorithm. There are a number of different models of ANNs depending on the architecture, learning method and other operational characteristics. ANNs are particularly good at pattern recognition and classification problems. One major strength of ANNs are their ability to capture the essential characteristics of data used as examples during training, and utilise this to handle previously unseen, incomplete or corrupted data. Some of the diverse applications of ANNs are: explosive detection at airports character and signature recognition financial risk assessment optimisation scheduling Genetic Algorithms (GA) Genetic algorithms, which are part of a broader field known as evolutionary computation, attempt to come up with optimal solutions through a process similar to evolution. It follows the principles of survival of the fittest, crossbreeding and mutation to generate better solutions. 3 A population of candidate solutions is initialised usually in the form of binary strings (the chromosomes). A new generation of solutions is produced from the current population using specific genetic operations of crossover (splicing and joining two chromosomes) and bit mutation. The fitness of each solution generated is evaluated using a fitness function. The steps of solution generation and evaluation continue until an acceptable solution is found. GAs have been used in portfolio optimisation bankruptcy prediction financial forecasting fraud detection scheduling Fuzzy Systems Traditional logic is bivalent or two-valued – any proposition is either true or false, and unlike real-life situations, there is no room in it for partially true or partially false propositions. Fuzzy logic, introduced in the 60s, attempts to deal with reality by assigning degrees of truth to facts. Fuzzy systems are characterized by their ability to handle imprecise information to generate solutions. They allow us to express knowledge in vague linguistic terms relieving us of the burden of finding exact numerical values – a task, which if not impossible, can result in inaccuracies. Initially treated with scepticism, the flexibility and power of fuzzy systems is now well recognised. One major application of fuzzy systems has been in controlling manufacturing processes and various appliances such as air conditioners and video cameras. Increasingly fuzzy logic is being combined with other intelligent system methodologies to develop hybrid fuzzy-expert, neuro-fuzzy, or fuzzy-GA systems. Some business applications of fuzzy systems: Company acquisition and credit analysis Credit authorization Criminal identification system Project management Integrated MRP (materials-requirement planning system) and production scheduler Loan evaluation advisor Case-based reasoning (CBR) Intelligent systems, which use CBR, attempt to solve problems by making use of knowledge about similar problems encountered by the system in the past. The knowledge used is built up as a case-base. Unlike rule-based expert systems, case-based systems can improve over time by learning from mistakes made with past problems. To solve a problem, A CBR system searches its case base for cases with attributes similar to those of the given problem. It then creates a solution by putting together similar cases and adjusting the solution by taking into account the differences between the given problem and these cases. Application examples: Utilisation of shop floor expertise in aircraft repairs Legal reasoning Dispute mediation Data mining Fault diagnosis Scheduling For a comprehensive list of CBR applications see: http://www.ai-cbr.org/biblio/Applied%20CBR.html 4 Data mining The term data mining stands for the process of, rather than a product for, exploring and analysing data for discovering new and useful information. The last four decades has seen an abundance of data generated or captured electronically – eg, data generated by point-of-sale (POS) devices such as bar code scanners, customer call-detail databases, web-log files in e-commerce etc. Organizations are ending up with huge amounts of mostly day-to-day transaction data, which are being stored away. Data is being collected mostly for improving efficiency of underlying operations, but not for analysis and prediction. It has become obvious that businesses can gain competitive advantage if it is possible to extract useful information on market and customer behaviour by “mine”-ing the data. Such information may indicate important underlying trends, associations or patterns in market behaviour, which can help obtain answers to questions like – “Based on past buying behaviour, which customers should be targeted for direct marketing?” The advent of intelligent techniques such as artificial neural networks and decision trees has made it possible to perform data mining involving large volumes of data more effectively and efficiently. Current interest in data mining, in particular for gaining competitive advantage in business, is growing. Its application in areas such direct target marketing campaigns, fraud detection, and development of models to aid in financial predictions is likely to intensify in the coming years. Intelligent Software Agents (ISA) These are computer programs that provide active assistance to information system users to help them cope with information overload. They act in many ways like a personal assistant to the user by attempting to adapt to the specific needs of the user. They are capable of learning from the user as well as other intelligent software agents. Some reported application examples of ISAs are in: Data Collection and Filtering Pattern Recognition Event Notification Data Presentation Planning and Optimization Rapid Response Implementation Language Technology (LT) Communication between people and computers is an important aspect of any intelligent information system. The ultimate goal is for the user to be able to use a language like English to explain the task to be carried out, and for the computer to perform the task, and if required, respond back in that language. Explanation of the task to be performed may be in the form of text (typed, printed or handwritten) or spoken words. For a computer to send back information or queries to a human, instead of words appearing on a screen, synthesised speech with a human-like voice may be desirable in certain situations. An automated telephone helpline, such as a flight information system is such an example. Natural Language Processing (NLP) or natural language understanding grew initially as a sub-domain of AI concerned with the task of developing software capable of “understanding” a natural language in order to achieve specific goals (Thayse 1991). Understanding natural languages, although trivial for humans, is a challenging task for computers. This is due to the inherent ambiguities as well as frequent use of context in verbal and written communication. An NLP system can be the front-end of information systems based on other intelligence tools to relieve the user of the task of understanding the complexities of a computer language. Recently a new broadly-based area called language technology has been defined. It encompasses all aspects of human-computer communication involving written and spoken text. It has been defined as the - “application of knowledge about human language in computer-based solutions” (Dale 2004). 5 Applications of LT include: Natural Language Processing (NLP) Speech recognition Optical character recognition (OCR) Handwriting recognition Machine translation Text summarisation Speech synthesis A LT-based system can be the front-end of information systems themselves based on other intelligence tools. RESOURCES Books Barr, A., & Feigenbaum, E.A., The Handbook of Artificial Intellignce, Vol.4, Reading MA, Addison- Wesley, 1989 – Expert systems. Dell, R. Language Technology: Applications and Techniques Tutorial 2004, 8th Pacific Rim International Conference on AI, Auckland, 9-13 August 2004. Dhar, V., & Stein, R., Seven Methods for Transforming Corporate Data into Business Intelligence., Prentice Hall 1997 Fogel, D.B., Evolutionary Computation, IEEE Press 2000. Holland, J., “Genetic algorithms”, Scientific American, July 1992, pp.66-72. Mitchell, T.M., Machine Learning,McGraw-Hill 1997 Sangalli, A., The Importance of Being Fuzzy, Princeton University Press, 1998. Thayse, A. (Editor), From Natural Language Processing to Logic for Expert Systems, John Wiley & Sons, 1991. Waterman, D.A.,A Guide to Expert Systems, Reading MA, Addison-Wesley, 1986 – Expert systems Winston, P. "Learning by Building Identification Trees", in P. Winston, Artificial Intelligence, Addison-Wesley, 1992. Journals IEEE expert : intelligent systems and their applications, New York, N.Y : IEEE Computer Society, 1990-1997 IEEE intelligent systems & their applications, IEEE Computer Society, Los Alamitos, CA, 1998 International Journal of Intelligent Systems Online, Access through Murdoch University Library AI Expert Useful web sites (URL - topic) http://www.newsfactor.com/perl/story/16430.html - News story on some AI applications. http://library.gsfc.nasa.gov/SubjectGuides/SoftComp.htm - Soft computing http://www.helsinki.fi/~niskanen/sc2000.html - Course on soft computing http://www.soft-computing.de/def.html - Soft computing http://www.alumni.caltech.edu/~croft/research/agent/definition/ - Intelligent software agents http://lcs.www.media.mit.edu/groups/agents/resources/ - Intelligent software agents http://pattie.www.media.mit.edu/people/pattie/CACM-94/CACM-94.p7.html - Intelligent software agents http://www.ai-cbr.org/biblio/Applied%20CBR.html - Case-based reasoning http://www.ai-cbr.org/library.html- Case-based reasoning http://www.emsl.pnl.gov:2080/proj/neuron/neural/systems/shareware.html - Lists shareware and freeware software tools for intelligent systems. http://www.alta.asn.au/ - Australian Language Technology Association Web site. 6