Development of a prototype system. Main stages of development of expert systems


transcript

2 E. V. Borovskaya N. A. Davydova BASICS OF ARTIFICIAL INTELLIGENCE Tutorial 3rd edition (electronic) Moscow Knowledge Lab 2016

3 UDC BBK B83 The series was founded in 2007 by Borovskaya E.V. B83 Fundamentals of artificial intelligence [Electronic resource]: tutorial/ E. V. Borovskaya, N. A. Davydova. 3rd ed. (el.). Electron. text data. (1 pdf file: 130 pages). M. : Laboratory of knowledge, (Pedagogical education). System. requirements: Adobe Reader XI ; screen 10". ISBN The tutorial introduces readers to the history of artificial intelligence, knowledge representation models, expert systems and neural networks. The main directions and methods used in the analysis, development and implementation of intelligent systems are described. Knowledge representation models and methods for working with them are considered, methods of development and creation of expert systems The book will help the reader to master the skills of logical design of databases of the subject area and programming in the ProLog language For students and teachers of pedagogical universities, teachers of secondary schools, gymnasiums, lyceums of artificial intelligence: textbook / E. V. Borovskaya, N. A. Davydova, M. : BINOM, Laboratory of Knowledge, pp. : ill. (Pedagogical education), ISBN In accordance with Article 1301 of the Civil Code of the Russian Federation when technical means of copyright protection, the copyright holder vp the right to demand damages or compensation from the violator ISBN c Knowledge Lab, 2015

4 CONTENTS Chapter 1. Artificial intelligence Introduction to artificial intelligence systems The concept of artificial intelligence Artificial intelligence in Russia The functional structure of the artificial intelligence system Directions for the development of artificial intelligence Data and knowledge. Representation of knowledge in intelligent systems Data and knowledge. Basic definitions Models of knowledge representation Expert systems Structure of an expert system Development and use of expert systems Classification of expert systems Representation of knowledge in expert systems Tools for building expert systems Expert system development technology Test questions and tasks for the chapter References for the chapter Chapter 2. Logic programming Programming methodologies Methodology of imperative programming Methodology of object-based programming oriented programming Functional programming methodology Logic programming methodology Constraint programming methodology Neural network programming methodology Brief introduction to predicate calculus and theorem proving The inference process in Prolog... 58

5 4 Contents 2.4. Structure of a Prolog Program Using Compound Objects Using Alternate Domains Prolog Repetition Method Fallback Method Cut and Rollback Method Simple Recursion General Recursion Rule Method (GRR) Lists in Prolog List Operations Strings in Prolog String Operations Files in Language Prolog Prolog predicates for working with files Describing a file domain Writing to a file Reading from a file Modifying an existing file Appending to an existing file Creating dynamic databases in Prolog Databases in Prolog Dynamic database predicates in Prolog Creating expert systems Expert system structure Representation Knowledge Output Methods System user interface Rule-based expert system Test questions and tasks for the chapter References for the chapter Chapter 3. Neural networks Introduction to neural networks An artificial model of a neuron Application of neural networks Training a neural network Test questions and tasks for the chapter References for the chapter

6 CHAPTER 1 ARTIFICIAL INTELLIGENCE 1.1. Introduction to artificial intelligence systems The concept of artificial intelligence An artificial intelligence (AI) system is a software system that simulates the process of human thinking on a computer. To create such a system, it is necessary to study the very process of thinking of a person who solves certain problems or makes decisions in a specific area, highlight the main steps of this process and develop software tools that reproduce them on a computer. Therefore, AI methods involve a simple structural approach to the development of complex software decision-making systems. Artificial intelligence is a branch of computer science, the purpose of which is to develop hardware and software tools that allow a non-programmer user to set and solve their traditionally considered intellectual tasks, communicating with a computer on a limited subset natural language. The idea of ​​creating an artificial likeness of a person to solve complex problems and simulate the human mind, as they say, "was in the air" back in ancient times. The ancestor of artificial intelligence is the medieval Spanish philosopher, mathematician and poet Raymond Lull, who back in the 13th century. tried to create mechanical device for solutions various tasks on the basis of the general classification of concepts developed by him.

7 6 Chapter 1 Later, Leibniz and Descartes independently continued this idea, proposing universal languages ​​of classification for all sciences. These works can be considered the first theoretical works in the field of artificial intelligence. However, the final birth of artificial intelligence as a scientific direction occurred only after the creation of computers in the 1940s, when Norbert Wiener created his fundamental works on the new science of cybernetics. The term "artificial intelligence" (AI; ​​English AI "Artificial Intelligence") was proposed in 1956 at a seminar with the same name at Dartmouth College (USA). This seminar was devoted to the development of methods for solving logical (rather than computational) problems. Note that in English this phrase does not have that slightly fantastic anthropomorphic coloring that it acquired in a rather unsuccessful Russian translation. The word "intelligence" means only "the ability to reason reasonably", and not at all "intelligence" (for which there is a separate English equivalent "intellect"). Soon after the recognition of artificial intelligence as a special field of science, it was divided into two areas: neurocybernetics and “black box” cybernetics. These areas developed almost independently, differing significantly both in methodology and technology. And only at the present time have become noticeable tendencies to unite these parts again into a single whole. Neurocybernetics The main idea of ​​this trend can be formulated as follows: "The only object capable of thinking is the human brain, so any thinking device must reproduce its structure in one way or another." Thus, neurocybernetics is focused on hardware-software modeling of structures similar to the structure of the brain. Efforts in neurocybernetics have focused on creating elements similar to neurons and combining them into functioning systems of neural networks.

8 Artificial Intelligence 7 The first neural networks were created in the 1990s. These were not very successful attempts to create systems that simulate the human eye and its interaction with the brain. Gradually in the 1900s the number of works in this area of ​​artificial intelligence began to decline, the first results were too disappointing. Usually, the authors of the developments attributed their failures to the small memory and low speed of the computers that existed at that time. The first neurocomputer was created in Japan as part of the Fifth Generation Computer project. By this time, restrictions on memory and computer speed were practically removed. Transputers appeared - computers with a large number of processors that implement parallel computing. Transputer technology is one of a dozen new approaches to the hardware implementation of neural networks that model the hierarchical structure of the human brain. In general, today there are three main types of approaches to creating neural networks: hardware (creation special computers, neurochips, expansion cards, chipsets), software (creation of programs and software tools designed for high-performance computers; such networks are created “virtually”, in the computer’s memory, while all the work is done by its own processors) and hybrid (a combination of the first two methods ). Black box cybernetics and artificial intelligence This approach is based on a principle opposite to neurocybernetics. Here it does not matter how exactly the “thinking” device is arranged, the main thing is that it reacts to given input actions in the same way as the human brain. Supporters of this direction motivated their approach by the fact that a person should not blindly follow nature in his scientific and technological searches. In addition, the frontier sciences of man could not contribute significantly

9 8 Chapter 1 of the 1st theoretical contribution, explaining (at least approximately) how intellectual processes proceed in a person, how his memory is arranged and how a person cognizes the world around him. This area of ​​artificial intelligence was focused on finding algorithms for solving intellectual problems on existing models computers. A significant contribution to the development of the new science was made by such pioneers as McCarthy, Minsky, Newell, Simon, Shaw, Hunt, and others. intensive searches were carried out for models and algorithms of human thinking and the development of the first programs based on them. Representatives of the humanities philosophers, psychologists, linguists, neither then nor now, could offer such algorithms, then cybernetics began to create their own models. So successively different approaches were created and tested. In the late 1950s the labyrinth search model appeared. This approach represents the problem as a state space in the form of a graph, after which the optimal path from the input data to the output data is searched in this graph. A lot of work has been done to create such a model, but this idea has not yet found wide application for solving practical problems. Early 1960s became the era of heuristic programming. A heuristic is a certain rule, not theoretically substantiated, but which makes it possible to reduce the number of iterations in the search space. Heuristic programming is the development of an action strategy based on known, predefined heuristics. In the ths. methods of mathematical logic began to be connected to the solution of problems. Robinson developed the resolution method, which makes it possible to automatically prove theorems given a set of initial axioms. Around the same time, the outstanding Russian mathematician Yu. S. Maslov proposed the so-called inverse derivation (later named after him), which solves a similar problem in a different way. Based on the resolution method

10 Artificial intelligence 9 Frenchman Albert Colmeroe created the logic programming language Prolog in 1973. The Logic Theorist program created by Newell, Simon and Shaw, which proved school theorems, caused a great resonance in the scientific community. However, most real-world problems are not reduced to a set of axioms, and a person, when solving production problems, does not always use classical logic, so logical models, with all their advantages, have significant limitations on the classes of problems being solved. The history of artificial intelligence is full of dramatic events, one of which was the so-called “Lighthill report” in 1973, which was prepared in the UK by order of the British Research Council. The well-known mathematician Lighthill, who has no professional connection with artificial intelligence, prepared an overview of the state of affairs in this area. The report acknowledged certain achievements, but rated them as "disappointing", and the overall assessment was negative in terms of practical significance. This report set European researchers back by about five years, as funding for the work was significantly reduced. Around the same time, a significant breakthrough in the development of practical applications of artificial intelligence occurred in the United States, when in the mid-1970s. the search for a universal algorithm of thinking was replaced by the idea of ​​modeling the specific knowledge of specialist experts. In the United States, the first commercial knowledge-based systems, or expert systems (ES), appeared. A new approach to solving problems of artificial intelligence, the representation of knowledge, has also begun to be applied. The first two expert systems for medicine and chemistry, Mycin and Dendral, were created and became classics. The Pentagon also made a significant financial contribution, proposing to base the new US Department of Defense program on the principles of artificial intelligence. Already in pursuit of missed opportunities, the European Union in the early 1980s. announced a global program for the development of new technologies ESPRIT,

11 10 Chapter 1 which included the problem of artificial intelligence. In the late 1970s Japan joins the race, announcing the start of a project of fifth generation machines based on knowledge. The project was designed for ten years and brought together the best young professionals from the largest Japanese computer corporations. For these specialists, a new ICOT institute was specially created and given complete freedom of action (though without the right to publish preliminary results). As a result, they created a rather cumbersome and expensive symbolic processor that programmatically implemented a prolog-like language, but did not receive wide recognition. However, the positive effect of this project was obvious. In Japan, a significant group of highly qualified specialists in the field of artificial intelligence has appeared, which has achieved significant results in various applied tasks. By the mid 1990s. The Japanese Association for Artificial Intelligence already had 40,000 members. Since the mid 1980s. artificial intelligence has been commercialized everywhere. Annual investments grew, industrial expert systems were created. Growing interest in self-learning systems. Dozens of scientific journals were published, international and national conferences were held annually in various areas of artificial intelligence, which was becoming one of the most promising and prestigious areas of computer science. Currently, there are two main approaches to modeling artificial intelligence: machine intelligence, which consists in a strict task of the result of functioning, and artificial intelligence, aimed at modeling the internal structure of the system. Modeling of systems of the first group is achieved through the use of the laws of formal logic, set theory, graphs, semantic networks and other achievements of science in the field of discrete computing, and the main results are the creation of expert systems, parsing systems

12 Artificial intelligence 11 natural language and the simplest control systems of the "stimulus-response" type. The systems of the second group are based on the mathematical interpretation of the activity of the nervous system (primarily the human brain) and are implemented in the form of neural networks based on a neuron-like element of the analogue of a neuron. A. A. Lyapunov (), one of the founders of Russian cybernetics. Physiologists, linguists, psychologists, mathematicians took part in this seminar. It is generally accepted that it was at this time that artificial intelligence was born in Russia. As well as abroad, two main areas of neurocybernetics and cybernetics of the "black box" were distinguished in it. In the ths. separate programs were created and research was carried out in the field of finding solutions to logical problems. LOMI (Leningrad branch of the Steklov Institute of Mathematics) created the ALPEV LOMI program, which automatically proves theorems, which is based on Maslov's original inverse derivation, similar to the Robinson resolution method. Among the most significant results obtained by domestic scientists in the 1960s, it should be noted the “Kora” algorithm by M. M. Bongard, which models the activity human brain in pattern recognition. Such outstanding scientists as M. L. Tsetlin, V. N. Pushkin, M. A. Gavrilov, whose students became the pioneers of this science in Russia, also made a great contribution to the development of the Russian school of artificial intelligence. In the ths. a new direction of situational AI was born (corresponding to the representation of knowledge in Western terminology). Professor D. A. Pospelov became the founder of this scientific school. Special models for representing situations (knowledge representation) have also been developed. Despite the fact that the attitude towards new sciences in Soviet Russia was always wary, science with such a “challenge”

13 12 Chapter 1 with the most important title also did not escape this fate and was met with hostility at the Academy of Sciences. Fortunately, among the members of the Academy of Sciences of the USSR there were people who were not afraid of such an unusual phrase as the name of a new scientific direction. However, only in 1974, under the Committee for System Analysis under the Presidium of the Academy of Sciences of the USSR, a scientific council was created on the problem of "Artificial Intelligence", it was headed by D. A. Pospelov. At the initiative of this council, five complex scientific projects were organized, headed by leading experts in this field: "Dialogue" (works on understanding natural language), "Situation" (situational management), "Bank" (data banks), "Constructor" (search engine). design) and "Intelligence of the robot". In the ths. carried out in our country active research in the field of knowledge representation, knowledge representation languages ​​and expert systems were developed; The Refal language was created at Moscow State University. In 1988, the Association of Artificial Intelligence (AII) was formed, and D. A. Pospelov was unanimously elected president. Within this association, a large number of research, schools for young professionals, seminars, symposiums were organized, joint conferences were held every two years, and a scientific journal was published. It should be noted that the level of theoretical research on artificial intelligence in Russia has always been no lower than the global level. Unfortunately, since the 1980s applied work began to be affected by a gradual lag in technology. On the this moment the backlog in the development of industrial intelligent systems is approximately 35 years. The main applications of AI systems are: theorem proving, games, pattern recognition, decision making, adaptive programming, machine music composition, natural language processing, learning networks (neural networks), verbal conceptual learning.

14 Artificial intelligence The functional structure of the artificial intelligence system The functional structure of the AI ​​system (Fig. 1.1) consists of three sets of computing tools. The first of them is an executive system (IS) - a set of tools that execute programs and are designed from the standpoint of effective problem solving; this complex has in some cases a problem orientation. The second complex is a set of intelligent interface tools that have a flexible structure, which provides the ability to adapt to a wide range of end user interests. The third set of tools, with the help of which the interaction of the first two complexes is organized, is the knowledge base, which ensures the use of the first set of computing tools.

15 [...]

16 Minimum system requirements determined by the relevant requirements Adobe software Reader version 11 or higher for Windows, Mac OS, Android, ios, Windows Phone and BlackBerry platforms; screen 10" Educational electronic edition Series: "Pedagogical education" BASICS OF ARTIFICIAL INTELLIGENCE Tutorial Lead editor D. Usenkov Artists N. Novak, S. Infante Technical editor E. Denyukova Proofreader L. Makarova Computer layout: S. Yankova Signed for use Format mm Publishing house "Laboratory of Knowledge", Moscow, Airport passage, 3 Phone: (499)

17 BOROVSKAYA ELENA VLADIMIROVNA Senior Lecturer, Department of Informatics and Methods of Teaching Informatics, Chelyabinsk State Pedagogical University. Area of ​​interest: problems of the module-rating system for monitoring and evaluating the educational achievements of students in terms of quality management at the university. DAVYDOVA NADEZHDA ALEKSEEVNA Candidate of Pedagogical Sciences with a degree in Theory and Methods of Teaching and Education (Computer Science, Level of General Education), Associate Professor of the Department of Informatics and Methods of Teaching Informatics, Chelyabinsk State Pedagogical University. Areas of interest: technology for forming the content of education in informatics in specialized classes of general education schools, intelligent learning systems. The tutorial introduces readers to the history of artificial intelligence, knowledge representation models, expert systems and neural networks. The main directions and methods used in the analysis, development and implementation of intelligent systems are described. Models of knowledge representation and methods of working with them, methods of development and creation of expert systems are considered. The book will help the reader to master the skills of logical design of domain databases and programming in the Prolog language. The book is intended for students and teachers of pedagogical universities, teachers of secondary schools, gymnasiums and lyceums.


Artificial intelligence Lecturer: Bragilevsky V.N. Speaker: Banar O.V. Plan Philosophical aspects of AI History of AI development Approaches to building AI systems Structural approach. Identification systems

On the occasion of the 100th anniversary of the birth of Germogen Sergeevich Pospelov

1. PURPOSE AND TASKS OF THE DISCIPLINE The history of computers is not only the history of the development of concepts, but also one of the parts of the history of human activity, which reflects the life of a person both as a biological species and as a member of

MANUAL for preparing for the Unified State Examination COMPUTER SCIENCE MANUAL for preparing for the Unified State Examination 3rd edition, corrected and supplemented (electronic) Edited by E. T. Vovk Moscow BINOM. Knowledge Lab 2015 UDC

Informatics Lecture 1 Basic definitions Associate Professor of the Department of RES (2302) Kuznetsov Igor Rostislavovich Definition Informatics is a science that studies all aspects of obtaining, storing, transforming, transmitting and using

Direction 09.03.03 Informatics 1.2 Lecture “Human-machine interaction. PPO Lecturer Molnina Elena Vladimirovna Senior Lecturer of the Department of Information Systems, room 9, main building. mail: [email protected]

UDC 004.89 ARTIFICIAL INTELLIGENCE IN EDUCATION R.V. Streltsov, Art. gr. TP08 L.V. Slavinskaya, Art. teacher cafe VMIP Donetsk National Technical University The process of entry of higher education into the world

Normative documents Annotation to the work program in informatics Grade 8 The work program in informatics and ICT is based on the author's program Ugrinovich N.D. taking into account sample program main

MODELS FOR SOLVING FUNCTIONAL AND COMPUTATIONAL PROBLEMS LECTOR RAZARCHENKOV A. A. BASIC CONCEPTS Tasks: computational tasks - determination of a certain value, functional tasks - creation

Content work program I. Explanatory note indicating normative documents that ensure the implementation of the program 1. general characteristics subject Informatics is a natural science discipline

Federal Agency for Education State Educational Institution of Higher Professional Education "Novosibirsk State University" (NSU) Faculty of Information Technology

FIRST HIGHER TECHNICAL EDUCATIONAL INSTITUTION OF RUSSIA MINISTRY OF EDUCATION AND SCIENCE OF THE RUSSIAN FEDERATION federal state budgetary educational institution of higher professional education

Modeling of human cognitive abilities in artificial intelligence Natalya Andreevna Yastreb VSPU, 2010 [email protected] mail.ru 1 The concept of intelligence The term "intelligence" is ambiguous,

Annotation of the program of the discipline "Methods of research and modeling of information processes and technologies" The purpose of the discipline: 1. GOALS AND TASKS OF THE DISCIPLINE Discipline "Methods of research and modeling

On the development of instrumental systems focused on solving information-logical problems R. G. Bukharaev, A. I. Enikeev, I. I. Makarov The practice of using computers for automation

Municipal budgetary educational institution "Secondary School 9" Annotation to the work program on informatics and ICT in parallel with the 6th grade Vilyuchinsk 2016-2017 academic year 1 Number of hours

Informatics Informatics establishes the laws of information transformation in the conditions of functioning automated systems, develops methods for its algorithmization, the formation of language means of communication

KAZAN FEDERAL UNIVERSITY INSTITUTE OF COMPUTATIONAL MATHEMATICS AND INFORMATION TECHNOLOGIES Department of System Analysis and Information Technologies А.М. YURIN EXPERT SYSTEMS Educational and methodical

83 UDC 004.822 DEVELOPMENT OF A SYSTEM FOR AUTOMATED SOLUTION OF COMPUTATIONAL PROBLEMS IN CAD, BASED ON THE PROGRAMMING METHOD WITHIN CONSTRAINTS SD Krilevich, AV Grigoriev. Donetsk national technical

A. A. Ernyak, Æ. A. Ernyak, Yu. Ì. Metelysky, S. A. BOGDANOVI METHOD OPTIONS: THEORY AND LABORATION TEXTBOOK FOR ACADEMIC BACHELOR STUDIES 2nd Edition, Revised and Supplemented Rev.

NA Davydova EV Borovskaya PROGRAMMING Tutorial Moscow BINOM. Knowledge Laboratory 2009 UDC 004.4 LBC 32.973-018 D13 D13 Davydova N. A. Programming: a tutorial / N. A. Davydova,

Annotation to the discipline "intellectual information systems" 1. GOALS AND TASKS OF THE DISCIPLINE 1.1. Objectives of the discipline The purpose of teaching the discipline is to help students develop the ability

Municipal budgetary educational institution secondary school 83

Test tasks in the discipline of IIS Topic: 1. Artificial intelligence Question 1: Artificial intelligence is a direction that allows you to solve complex mathematical problems in programming languages;

EXPLANATORY NOTE The work program of the circle on informatics "Young Informatician" for grades 5-7 was developed on the basis of the author's program N.V. Makarova for grades 5-9, recommended by the Ministry of Education

Artificial neural networks and the possibility of creating artificial intelligence based on them Suleymanov K.B. FGBOU VO "Dagestan State University" Makhachkala, Russia. artificial neural networks

Annotation to the discipline "Fundamentals of programming and algorithmization" Direction of training (specialty) 09.03.02 " Information Systems and technologies” Profile Information systems and technologies in construction

Methodology and Logic of Scientific Research The discipline "Methodology and Logic of Scientific Research" is included in the basic part of the general scientific cycle of master's training. The purpose of studying the discipline is to familiarize

Intelligent systems in mechanical engineering Lecture 2.1. Knowledge representation methods. 1 Representation of knowledge in artificial intelligence systems The main feature of intelligent systems is that

Marchuk 14 y. REVIEW of the leading organization for the dissertation work of Dmitry Alexandrovich Krylov “Models and methods for implementing a cloud platform for the development and use of intelligent services”,

TECHNOLOGIES OF ARTIFICIAL INTELLIGENCE Lecture 5. Expert systems Continued AI technologies 1 SEMIOTIC MODELS Classical control problems. At their foundation is the thesis that we know: the purpose

8. FUND OF EVALUATION TOOLS FOR INTERIM CERTIFICATION OF STUDENTS ON THE DISCIPLINE (MODULE) Informatics, Computer Engineering and 1. Department of Information Security 09.03.02 “Information

SUMMARY OF THE WORKING PROGRAM " Information Technology in management" in the direction of training / specialty 38.03.04 "State and municipal administration" code and name of the direction / specialty

MINISTRY OF EDUCATION AND SCIENCE OF RUSSIA Federal State Budgetary Educational Institution of Higher Education "Moscow State Technological University "STANKIN" (FGBOU VO "MSTU "STANKIN") ABSTRACT

1. Russian Pedagogical Encyclopedia. In 2 volumes / Ch. ed. V.V. Davydov. M.: Great Russian Encyclopedia, 1993. Vol. 2. 608 p. 2. Selevko G.K. Modern educational technologies: Proc. allowance M.:

G. V. Alekseev, S. A. Bredikhin, I. I. Kholyavin SYSTEM APPROACH IN FOOD ENGINEERING General definitions and some applications Recommended by the Federal Educational and Methodological Association in the system of higher

Software (SW) Software System and application software System software is used to develop the execution of software products, as well as to provide the user with certain services. Systemic

Annotation to the work programs in informatics and ICT for 2016-2017 Grade 7 (basic general education) The study of informatics and ICT in the VII grades is aimed at achieving the following goals:

UDC 004.514.6 EVALUATION OF THE QUALITY OF THE USER INTERFACE OF EDUCATIONAL PROGRAMS Goretsky A.A. Donetsk National Technical University Department of Applied Mathematics and Informatics E-mail: [email protected]

ANNOTATION OF THE WORK PROGRAM OF THE DISCIPLINE Intelligent systems and technologies in the direction / specialty 09.03.02 - "Information systems and technologies" 1. Goals and objectives of mastering the discipline The purpose of mastering

ADAPTIVE AND INTELLIGENT SYSTEMS T. Kohonen Self-organizing maps Translation of the 3rd English edition by V. N. Ageev, edited by Yu. V. Tyumentsev Moscow BINOM. Knowledge Laboratory 2008 UDC 517.11+519.92

MINISTRY OF EDUCATION AND SCIENCE OF THE RUSSIAN FEDERATION State educational institution of higher professional education "Murmansk State University for the Humanities" (MGGU)

MINISTRY OF EDUCATION AND SCIENCE OF THE RUSSIAN FEDERATION Federal State Budgetary Educational Institution of Higher Professional Education "UFA STATE AVIATION TECHNICAL

Database management systems (DBMS) 1. General information about DBMS 2. Data models 3. DBMS Microsoft Access 1. General information about database management systems Two main areas of use of computers:

COMPILERS: Ryaby VV, Senior Lecturer, Department of Mathematical Support of Electronic Computers, Belarusian State University; Pobegailo A.P., Associate Professor, Department of Technology

MINISTRY OF EDUCATION AND SCIENCE OF THE RUSSIAN FEDERATION federal state autonomous educational institution of higher professional education NATIONAL RESEARCH NUCLEAR UNIVERSITY

MINISTRY OF EDUCATION AND SCIENCE OF THE RUSSIAN FEDERATION FEDERAL STATE BUDGETARY EDUCATIONAL INSTITUTION OF HIGHER PROFESSIONAL EDUCATION

STATE BUDGET EDUCATIONAL INSTITUTION OF THE CITY OF MOSCOW SECONDARY EDUCATIONAL SCHOOL 382 Considered at the meeting of the Ministry of Defense Head of the Ministry of Defense N.V. Pavlenko Protocol dated 2014 AGREED Deputy

UDC 372.851.046.14 LBC 74.262.21 G15 Reviewers: Ph.D. ped. Sciences, Assoc. cafe Mathematics and Methods of Teaching Mathematics Educational Establishment “Mozyr State. ped. un-t im. I. P. Shamyakina» L. A. Ivanenko; teacher

YURI MIKHAILOVICH ZABRODIN IS 70 In October 2010, Yuri Mikhailovich Zabrodin, a prominent scientist and organizer of Russian psychological science, celebrated his 70th birthday. In the history of Soviet and Russian psychology

TAMBOV REGIONAL STATE EDUCATIONAL AUTONOMOUS INSTITUTION FOR ADDITIONAL PROFESSIONAL EDUCATION "INSTITUTE FOR PROFESSIONAL ADVANCEMENT OF EDUCATIONAL STAFF"

Handbook for managers, their deputies, teachers of institutions of general secondary education Mozyr "White Wind" 2 0 1 4 UDC 371 BBK 74.200.58 B59

The curriculum is based on the curriculum of a higher education institution in the specialty 1-40 05 01 "Information systems and technologies (according to areas)" and curriculum"Fundamentals of information

Contents Section Title Page section 1. Explanatory note 3-4 2. The content of the subject 4-5 3. The requirement for the level of preparation of students 5-7 4. Literature 7 5. Calendar-thematic planning

Main educational program higher education was approved by the Academic Council of the University (protocol of the Academic Council of the University 3 dated March 16, 2016) 2 CONTENTS 1. General characteristics of the main professional

Å. P. Ãîëóáêîâ ÌÅÒÎÄÛ ÏÐÈÍßÒÈß ÓÏÐÀÂËÅÍ ÅÑÊÈÕ ÐÅØÅÍÈÉ àñòü 1 Ó ÅÁÍÈÊ È ÏÐÀÊÒÈÊÓÌ ÄËß ÀÊÀÄÅÌÈ ÅÑÊÎÃÎ ÁÀÊÀËÀÂÐÈÀÒÀ 3-å èçäàíèå, èñïðàâëåííîå è äîïîëíåííîå Ðåêîìåíäîâàíî Ó åáíî-ìåòîäè åñêèì îòäåëîì âûñøåãî

Lecture 21 Group decision-making systems The decision-making process has the same character as the process of making a managerial decision. It can be divided into the following stages (Fig. 4.1). I. Analysis of the design

They write to us ROSSIKHINA Larisa Vitalievna - Candidate of Technical Sciences, Captain of the Internal Service, Senior Lecturer in the Cycle of Radio Engineering Systems, Voronezh College Federal Service execution of sentences

1 Textbook: Informatics. Grade 11. Deep level. At 2 pm Authors: K.Yu. Polyakov, E.A. Eremin M.: BINOM, Knowledge Lab, 2013. Planned results of the study of computer science Program in the subject "Informatics"

The role of logic programming in the study of computer science. N. Pelin State University Tiraspol (UST) Summary The paper analyzes the opinions of a number of scientists and

Municipal formation - urban district, the city of Ryazan, Ryazan region

APPLICATION OF ARTIFICIAL INTELLIGENCE IN THE DEVELOPMENT OF COMPUTER GAMES Kaziev AB, Prokopyuk S.Yu. Tomsk Polytechnic University Tomsk, Russia APPLICATION OF ARTIFICIAL INTELLIGENCE

Control, Computer Engineering and informatics UDC 004.032.26:612.825

SIMULATION OF INTEGRAL ROBOTS IN MATLAB Sadykov ENU them. L.N. Gumilyov, Astana, st. Munaitpasova, 5, 001008. E-mail: [email protected] Introduction. Ro bot (Czech robot) automatic device

Kolomna Institute (branch)

State educational institution of higher

vocational education

"MOSCOW STATE OPEN UNIVERSITY"

Department of Informatics and Information Technology

"APPROVED"

educational and methodical

Council of KI (f) MGOU

Chairman of the board

Professor

A.M. Lipatov

"___" ____________ 2010

P.S. Romanov

BASICS OF ARTIFICIAL INTELLIGENCE

Textbook on the disciplines of the direction

"Computer Science and Computer Engineering"

For students of higher educational institutions

Kolomna - 2010

At

Printed in accordance with the decision of the educational and methodological council of the Kolomna Institute (branch) of the State Educational Institution of Higher Professional Education "MGOU" dated __________ 2010 No. ________

DK 519.6

R69 Romanov P.S.

Fundamentals of artificial intelligence. Tutorial. - Kolomna: KI (f) MGOU, 2010. - 164 p.

The tutorial covers the basics of artificial intelligence. The basic concepts of artificial intelligence are presented. The provisions of the theory of fuzzy sets are given. The main intelligent systems, their purpose, classification, characteristics, problems of creation, examples are considered.

The textbook is intended for students of higher educational institutions studying in the direction of "Informatics and Computer Engineering". It can be used in the study of intelligent information systems by students of other specialties.

Reviewer: doctor of technical sciences, professor V.G. Novikov

© Romanov P.S.

©KI(f) MGOU, 2010

Introduction………………………………............……………………………………...5

Chapter 1. Basic concepts of artificial intelligence .............................................. 6

§ 1.1. Basic terms and definitions ............................................................... .....6

§ 1.2. The history of the development of AI systems.................................................... .............12

§ 1.4. Main directions of development and application

intelligent systems .................................................................. ................25

Chapter 2 32

§ 2.1. Fuzzy set. Operations on fuzzy sets…..32

§ 2.1.1. Basic operations on fuzzy sets....................................35

§ 2.2. Building a Membership Function.......................................................38

§ 2.2.1. Some Methods for Constructing a Membership Function......................39

§ 2.3. Fuzzy numbers ................................................................ .................................44

§ 2.4. Operations with fuzzy numbers (L-R)-type.................................................46

§ 2.5. Fuzzy and Linguistic Variables...............................................47

§ 2.6. Fuzzy relationships .................................................................. ........................fifty

§ 2.7. Fuzzy logic ................................................................ ...................................51

§ 2.8. Fuzzy conclusions .............................................................. ...............................53

§ 2.9. Automation of information processing using

fuzzy systems ................................................................ .................................59

Chapter 3. Basic intelligent systems....................................................................64

§ 3.1. Data and knowledge ............................................................... ...................................64

§ 3.2. Knowledge Representation Models .............................................................. .........66

§ 3.3.1. Production Rules .................................................................. ...............69

§ 3.3.2. Frames................................................. .........................................72

§ 3.3.3. Semantic networks .................................................................. ......................74

§ 3.4. Expert systems. Subject areas..............................................76

§ 3.5. Purpose and scope of expert systems ..............................77

§ 3.6. Methodology for the development of expert systems....................................................81

§ 3.7. Basic expert systems .................................................................. .........86

§ 3.8. Difficulties in the development of expert systems and their ways

overcoming ................................................. .................................................90

§ 3.9. Purpose, classification of robots .............................................. 94

§ 3.10. Examples of robots and robotic systems...............................................97

§ 3.10.1. Household (domestic) robots .............................................. ....97

§ 3.10.2. Rescue robots and research robots...............................99

§ 3.10.3. Robots for industry and medicine...................................100

§ 3.10.4. Military robots and robotic systems....................................101

§ 3.10.5. The brain as an analog-to-digital device..............................................104

§ 3.10.6. Robots - toys ............................................... ....................104

§ 3.11. Problems of technical implementation of robots .............................................. 105

§ 3.12. Adaptive Industrial Robots....................................................................114

§ 3.12.1. Adaptation and training .............................................................. .............114

§ 3.12.2. Classification of adaptive control systems

industrial robots .................................................................. ...117

§ 3.12.3. Examples of adaptive control systems for robots...............123

§ 3.12.4. Problems in the creation of industrial robots..............................128

§ 3.13. Neural network and neurocomputer technologies............................132

§ 3.13.1. General characteristics of the direction .................................... 132

§ 3.13.2. Neuropackages .............................................................. .........................140

§ 3.14. Neural networks................................................ ...............................147

§ 3.14.1. Perceptron and its development .............................................................. .....147

3.14.1.1. Mathematical neuron of McCulloch-Pitts .................147

3.14.1.2. Rosenblatt's Perceptron and Hebb's Rule.......................148

3.14.1.3. Delta Rule and Letter Recognition.......................................150

3.14.1.4. Adaline, Madaline and the Generalized Delta Rule..........152

§ 3.14.2. Multilayer Perceptron and Inverse Algorithm

error propagation .................................................................. .....155

§ 3.14.3. Types of activation functions...............................................160

Introduction

The science called "artificial intelligence" is included in the complex of computer sciences, and the technologies created on its basis belong to information technologies. The task of this science is to provide reasonable reasoning and action with the help of computing systems and other artificial devices. As an independent scientific direction, artificial intelligence (AI) has existed for just over a quarter of a century. During this time, the attitude of society towards specialists engaged in such research has evolved from skepticism to respect. In advanced countries, work in the field of intelligent systems is supported at all levels of society. There is a strong opinion that it is these studies that will determine the nature of the information society, which is already replacing the industrial civilization that reached its highest peak in the 20th century. Over the past years of the formation of AI as a special scientific discipline, its conceptual models have been formed, specific methods and techniques that belong only to it have accumulated, and some fundamental paradigms have been established. Artificial intelligence has become a completely respectable science, no less honorable and necessary than physics or biology.

Artificial intelligence is an experimental science. The experimental nature of AI is that when creating certain computer representations and models, the researcher compares their behavior with each other and with examples of solving the same problems by a specialist, modifies them based on this comparison, trying to achieve a better match between the results. For modifying programs in a "monotonic" way to improve results, one must have reasonable initial ideas and models. They are delivered by psychological studies of consciousness, in particular, cognitive psychology.

An important characteristic of AI methods is that it deals only with those competence mechanisms that are verbal in nature (allow symbolic representation). Not all the mechanisms that a person uses to solve problems are like that.

The book presents the basics of AI, which make it possible to navigate a large number of publications on the problems of artificial intelligence and gain the necessary knowledge in this field of science.

The development of artificial intelligence

History of artificial intelligence started not too long ago. In the second half of the 20th century, the concept artificial intelligence(artificial intelligence) and several definitions have been proposed. One of the first definitions, which, despite the considerable breadth of interpretation, still has not lost its relevance, is to present artificial intelligence as: “A way to force computer think like a human."

The relevance of the intellectualization of computing systems is due to the need for a person to find solutions in such realities. modern world as inaccuracy, ambiguity, uncertainty, fuzziness and unfounded information. The need to increase speed and adequacy this process stimulates the creation of computing systems, through interaction with the real world by means of robotics, production equipment, instruments and other hardware, can contribute to its implementation.

Computing systems, which are based exclusively on classical logic - that is, algorithms for solving known problems, face problems when they encounter uncertain situations. In contrast, living beings, although they lose in speed, are able to make successful decisions in such situations.

An example of artificial intelligence

An example is the stock market crash of 1987, when computer programs sold hundreds of millions of dollars worth of shares in order to make a profit of several hundred dollars, which actually created the prerequisites for the crash. The position was corrected after the transition full control for stock trading in protoplasmic intelligent systems, that is, to people.

Defining the concept of intelligence as a scientific category, it should be understood as the suitability of the system for learning. Thus, one of the most specific, in our opinion, definitions of artificial intelligence is interpreted as the ability of automated systems to acquire, adapt, modify and replenish knowledge in order to find solutions to problems that are difficult to formalize.

In this definition, the term "knowledge" has a qualitative difference from the concept of information. This difference well reflects the representation of these concepts in the form information pyramid in fig 1.

Figure 1 - Information pyramid

It is based on data, the next level is information, and the level of knowledge completes the pyramid. As you move up the information pyramid, the volumes of data turn into the value of information and further into the value of knowledge. That is, information arises at the moment of interaction of subjective data and objective methods of their processing. Knowledge is formed on the basis of the formation of distributed relationships between heterogeneous information, while creating a formal system - a way to reflect them in precise concepts or statements.

It is the support of such a system - a knowledge system, in such an up-to-date state, which allows you to build action programs to find solutions to the tasks assigned to them, taking into account specific situations that are formed at a certain point in time in the environment, is the task of artificial intelligence. Thus, artificial intelligence can also be represented as a universal algorithm capable of creating algorithms for solving new problems.

The tutorial introduces readers to the history of artificial intelligence, knowledge representation models, expert systems and neural networks. The main directions and methods used in the analysis, development and implementation of intelligent systems are described. Models of knowledge representation and methods of working with them, methods of development and creation of expert systems are considered. The book will help the reader to master the skills of logical design of domain databases and programming in the ProLog language.
For students and teachers of pedagogical universities, teachers of secondary schools, gymnasiums, lyceums.

The concept of artificial intelligence.
An artificial intelligence (AI) system is a software system that simulates the process of human thinking on a computer. To create such a system, it is necessary to study the very process of thinking of a person who solves certain problems or makes decisions in a specific area, highlight the main steps of this process and develop software tools that reproduce them on a computer. Therefore, AI methods involve a simple structural approach to the development of complex software decision-making systems.

Artificial intelligence is a branch of informatics, the purpose of which is to develop hardware and software tools that allow a non-programmer user to set and solve their traditionally considered intellectual tasks, communicating with a computer in a limited subset of natural language.

TABLE OF CONTENTS
Chapter 1. Artificial Intelligence
1.1. Introduction to artificial intelligence systems
1.1.1. The concept of artificial intelligence
1.1.2. Artificial intelligence in Russia
1.1.3. Functional structure of the artificial intelligence system
1.2. Directions for the development of artificial intelligence
1.3. Data and knowledge. Representation of knowledge in intelligent systems
1.3.1. Data and knowledge. Basic definitions
1.3.2. Knowledge Representation Models
1.4. Expert systems
1.4.1. Structure of an expert system
1.4.2. Development and use of expert systems
1.4.3. Classification of expert systems
1.4.4. Representation of knowledge in expert systems
1.4.5. Tools for building expert systems
1.4.6. Expert system development technology
Control questions and tasks for chapter 1
Literature for Chapter 1
Chapter 2 Logic Programming
2.1. Programming Methodologies
2.1.1. Methodology of imperative programming
2.1.2. Methodology of object-oriented programming
2.1.3. Functional programming methodology
2.1.4. Logic programming methodology
2.1.5. Constraint Programming Methodology
2.1.6. Neural Network Programming Methodology
2.2. A brief introduction to predicate calculus and theorem proving
2.3. Inference Process in Prolog
2.4. Program structure in Prolog
2.4.1. Using compound objects
2.4.2. Using alternate domains
2.5. Organizing Repetitions in Prolog
2.5.1. Rollback method after failure
2.5.2. Cut and rollback method
2.5.3. simple recursion
2.5.4. Generalized Recursion Rule Method (GRR)
2.6. Lists in Prolog
2.6.1. Operations on lists
2.7. Strings in Prolog
2.7.1. Operations on strings
2.8. Files in Prolog
2.8.1. Prolog predicates for working with files
2.8.2. File domain description
2.8.3. Write to file
2.8.4. Reading from a file
2.8.5. Modifying an existing file
2.8.6. Appending to the end of an existing file
2.9. Creating Dynamic Databases in Prolog
2.9.1. Databases on Prolog
2.9.2. Dynamic Database Predicates in Prolog
2.10. Creation of expert systems
2.10.1. Structure of an expert system
2.10.2. Knowledge Representation
2.10.3. Output Methods
2.10.4. UI system
2.10.5. Rule Based Expert System
Control questions and tasks for chapter 2
Literature for chapter 2
Chapter 3 Neural Networks
3.1. Introduction to Neural Networks
3.2. Artificial neuron model
3.3. Application of neural networks
3.4. Neural network training
Control questions and tasks for chapter 3
Literature for chapter 3.

Free download e-book in a convenient format, watch and read:
Download the book Fundamentals of Artificial Intelligence, Borovskaya E.V., Davydova N.A., 2016 - fileskachat.com, fast and free download.

Armavir State

Pedagogical University

BASICS OF ARTIFICIAL INTELLIGENCE

for students studying in the specialty "Informatics"

Armavir 2004

Printed by the decision of the ASPU UMC

Reviewer: , Candidate of Physical and Mathematical Sciences, Associate Professor, Head of the Internet Center of the Kabardino-Balkarian State Agricultural Academy

Kozyrev artificial intelligence. Teaching aid for students majoring in computer science. - Armavir, 2004

The basic concepts of artificial intelligence, directions and prospects for the development of research in the field of artificial intelligence, the basics of the logic programming language PROLOG are considered.

The educational and methodical manual is intended for students studying in the specialty "informatics", and can also be used by everyone who is interested in artificial intelligence and logic programming.

Introduction………………………………………………..……………………... 4

1. Artificial intelligence: subject, history
development, research directions ……..………………….. 5

1.1. Directions of research in the field
artificial intelligence…..…………………………………………….. 5


artificial intelligence….…………………………..………………..... 6

2. Knowledge system……………………………………………………….. 8

3. Knowledge representation models…………………………………. nine

3.1. Semantic networks……………………………………………………..9

3.2. Frame model …………………………………………….…………10

3.3. Production model………………………………………………..11

3.4. Logical model……………………………………………………. .12

4. Expert systems………………………………………………...12

4.1. Appointment of expert systems……………………………………….12

4.2. Types of tasks solved with the help of expert systems…………….14

4.3. The structure of expert systems…………………………………………...15

4.4. The main stages of development of expert systems……………………16

4.5. Tools for developing expert systems………18

5. PROLOGUE - logic programming language ……….19

5.1. General information about PROLOG…………………………………………… 19

5.2. Suggestions: facts and rules………………………………………20

5.4. Variables in PROLOG……………………………………………...22

5.5. Objects and data types in PROLOG………………………………...23

5.6. The main sections of the PROLOG program…………………………….23

5.7. Backtracking……………………………………………………...24

5.8. Backtracking control: fail and cut predicates ……26

5.9. Arithmetic calculations……………………………………………27

5.10. Recursion……………………………………………………………… .28

5.11. Lists…………………………………………………………………30

5.12. Standard List Processing Tasks………………………….….31

Literature………………………………………………............................... .35

Introduction

In recent decades, artificial intelligence has invaded all areas of activity, becoming a means of integrating sciences. Software tools based on the technology and methods of artificial intelligence have become widespread in the world. Intensive research to create a unified information space, which creates conditions for joint remote work based on knowledge bases, today began to be carried out by all economically developed countries. The course "Fundamentals of Artificial Intelligence" in higher education includes the study of such sections as the representation of knowledge in a formal language, the structure of expert systems and the basic principles of their development, various strategies for finding a goal. One of the main lines of the course is the discussion of the implementation of artificial intelligence systems for solving specific applied problems.

As a computer support for the course, the Visual Prolog program development tool environment is considered. The programming language Prolog, based on the ideas and methods of mathematical logic, was originally created for the development of artificial intelligence applications. Applications such as knowledge bases, expert systems, natural language interfaces, and intelligent information management systems are efficiently programmed in the Visual Prolog environment. A high level of abstraction, the ability to represent complex data structures and model logical relationships between objects make it possible to solve problems in various subject areas.

The teaching aid "Fundamentals of Artificial Intelligence" will help to expand the ideas of the future computer science teacher about the areas of application of the theory of artificial intelligence, about existing and promising programming languages ​​and hardware structures for creating artificial intelligence systems.

1. Artificial intelligence: subject, history of development, areas of research.

Iintellectualus(lat) - mind, reason, mind, mental abilities of a person. Artificial intelligence(AI) is a field of computer science, the subject of which is the development of hardware and software tools that allow the user to solve problems that are traditionally considered intellectual. The theory of artificial intelligence is the science of knowledge, how to extract it, represent it in artificial systems, process it inside the system and use it to solve practical problems. Technologies using AI are used today in many application areas.

The beginning of research in the field of AI (the end of the 50s of the 20th century) is associated with the work of Newell, Saiman and Shaw, who studied the processes of solving various problems. The results of their work were such programs as "LOGIC-THEORETIC", intended for proving theorems in propositional calculus, and "GENERAL PROBLEM SOLVER". These works marked the beginning of the first stage of research in the field of AI, associated with the development of programs, problem solving based on the use of various heuristic methods.

The heuristic method of solving the problem was considered as inherent in human thinking "in general", which is characterized by the emergence of guesses about the way to solve the problem with their subsequent verification. It was opposed to the algorithmic method used in the computer, which was interpreted as the mechanical implementation of a given sequence of steps, deterministically leading to the correct answer. The interpretation of heuristic methods for solving problems as a purely human activity led to the emergence and further spread of the term AI

A. Neurocybernetics.

Neurocyberietics is focused on hardware modeling of structures similar to the structure of the brain. Physiologists have long established that the basis of the human brain is a large number of interconnected and interacting nerve cells - neurons. Therefore, the efforts of neurocybernetics were focused on creating elements similar to neurons and combining them into functioning systems. These systems are called neural networks, or neural networks. IN Lately neurocybernetics began to develop again due to the leap in the development of computers. Neurocomputers and transputers appeared.

There are currently three approaches to creating neural networks:

hardware- creation of special computers, expansion boards, chipsets that implement all the necessary algorithms,

program- Creation of programs and tools designed for high-performance computers. Networks are created in the computer's memory, all the work is done by its own processors;

hybrid is a combination of the first two. Part of the calculations is performed by special expansion boards (coprocessors), part - by software.

B. Black box cybernetics.

The cybernetics of the "black box" is based on a principle opposite to neurocybernetics. It doesn't matter how the "thinking" device works. The main thing is that it reacts to the given input actions in the same way as the human brain.

This area of ​​artificial intelligence was focused on the search for algorithms for solving intellectual problems on existing computer models.

Research in the field of artificial intelligence has come a long and thorny path: the first hobbies (1960), pseudoscience (1960-65), success in solving puzzles and games (), disappointment in solving practical problems (), first successes in solving a number of practical problems ( ), mass commercial use in solving practical problems (). But the basis of commercial success is rightfully made up of expert systems and, first of all, real-time expert systems. It was they who allowed artificial intelligence to move from games and puzzles to mass use in solving practically significant problems.

1.2. The main tasks solved in the region
artificial intelligence

Knowledge representation and development of knowledge-based systems

Development of knowledge representation models, creation of knowledge bases that form the core of expert systems (ES). Recently, it includes models and methods for extracting and structuring knowledge and merges with knowledge engineering. In the field of artificial intelligence, expert systems and tools for their development have achieved the greatest commercial success.

Games and creativity.

Game intellectual tasks - chess, checkers, go. It is based on one of the early approaches - the labyrinth model plus heuristics.

Development of natural language interfaces and machine translation

Voice control, translation from language to language. The first program in this area is a translator from English into Russian. The first idea - word for word translation, turned out to be fruitless. Currently, a more complex model is used, including the analysis and synthesis of natural language messages, which consists of several blocks. For analysis it is:

The language that uses the production model is PROLOGUE.

3.4. Logic model

Their description is based on a formal system with four elements:

M=<Т, Р, А, В >, where

T is a set of basic elements of various nature with corresponding procedures;

R is a set of syntactic rules. With their help, syntactically correct sets are formed from the elements of T. The P(R) procedure determines whether this collection is correct;

A is a subset of the set P, called axioms. Procedure P(A) gives an answer to the question of belonging to the set A;

B is the set of inference rules. By applying them to the elements of A, one can obtain new syntactically correct collections to which these rules can be applied again. The P(V) procedure determines, for each syntactically correct set, whether it is inferred.

4. Expert systems

4.1. Appointment of expert systems

Expert systems(ES) are complex software complexes, accumulating knowledge of specialists in specific subject areas and replicating this empirical experience for consultations of less qualified users.

The purpose of the study of expert systems is the development of programs that, when solving problems from a certain subject area, obtain results that are not inferior in quality and efficiency to the results obtained by experts.

Expert systems are designed to solve non-formalized, practically significant tasks. The use of an expert system should only be done when their development is possible and appropriate.

Facts indicating the need to develop and implement expert systems:

Lack of professionals who spend significant time helping others;

The need for a large team of specialists, since none of them has sufficient knowledge;

Low productivity, since the task requires a complete analysis of a complex set of conditions, and the average specialist is not able to view (in the allotted time) all these conditions;

The presence of competitors who have an advantage in that they are better at the task at hand.

By functional The purpose of expert systems can be divided into the following types:

1. Powerful expert systems designed for a narrow circle of users (control systems for complex technological equipment, expert air defense systems). Such systems typically operate in real time and are very expensive.

2. Expert systems designed for a wide range of users. These include systems of medical diagnostics, complex teaching systems. The knowledge base of these systems is not cheap, as it contains unique knowledge obtained from experts. The collection of knowledge and the formation of a knowledge base is carried out by a specialist in the collection of knowledge - a cognitive engineer.

3. Expert systems with a small number of rules and relatively inexpensive. These systems are designed for the mass consumer (systems that facilitate troubleshooting in equipment). The use of such systems allows you to do without highly qualified personnel, reduce the time of troubleshooting and troubleshooting. The knowledge base of such a system can be supplemented and changed without the help of system developers. They usually use knowledge from various reference manuals and technical documentation.

4. Simple expert systems for individual use. Often made on their own. They are used in situations to facilitate everyday work. The user, having organized the rules into a certain knowledge base, creates his own expert system on its basis. Such systems are used in jurisprudence, commercial activities, repair of simple equipment.

The use of expert systems and neural networks brings significant economic benefits. For example: - American Express reduced its losses by $27 million a year thanks to an expert system that determines the appropriateness of issuing or refusing a loan to a particular firm; - DEC saves $70 million a year with XCON/XSEL, a customer-specific configuration computing system VAX. Its use reduced the number of errors from 30% to 1%; - Sira reduced pipeline construction costs in Australia by $40 million with a pipeline management expert system.

4.2. Types of tasks solved with
expert systems

Data interpretation. Interpretation refers to the determination of the meaning of the data, the results of which must be consistent and correct. Examples of ES:

Detection and identification of various types of ocean-going vessels - SIAP;

Determination of the main personality traits based on the results of psychodiagnostic testing in the AVTANTEST and MICROLUSHER systems, etc.

Diagnostics. Diagnostics refers to the detection of a malfunction in some system. Examples of ES:

Diagnosis and therapy of narrowing of the coronary vessels - ANGY;

Diagnostics of errors in hardware and software of computers - CRIB system, etc.

Monitoring. The main task of monitoring is the continuous interpretation of data in real time and signaling the output of certain parameters beyond the permissible limits. The main problems are the "skip" of an alarming situation and the inverse problem of a "false" operation. Examples of ES:

Control over the operation of SPRINT power plants, assistance to nuclear reactor dispatchers - REACTOR:

Monitoring of emergency sensors in a chemical plant - FALCON, etc.

Design. Design consists of preparing specifications for the creation of "objects" with predetermined properties. Specification refers to the entire set required documents drawing, explanatory note, etc. Examples of ES:

Designing computer configurations VAX - 1/780 in the XCON (or R1) system,

LSI design - CADHELP;

Synthesis of electrical circuits - SYN and others.

Forecasting. Predictive systems logically deduce likely consequences from given situations. Examples of ES:

Weather prediction - WILLARD system:

Estimates of the future harvest - PI. ANT;

Forecasts in the economy - ECON and others.

Planning. Planning is understood as finding action plans related to objects capable of performing certain functions. In such ES, behavioral models of real objects are used in order to logically deduce the consequences of the planned activity. Examples of ES:

Robot Behavior Planning - STRIPS,

Planning of industrial orders - 1SIS,

Experiment Design - MOLGEN et al.

Education. Training systems diagnose errors in the study of any discipline with the help of a computer and suggest the right solutions. They accumulate knowledge about a hypothetical "student" and his characteristic mistakes, then in the work they are able to diagnose weaknesses in the knowledge of students and find appropriate means to eliminate them. Examples of ES:

Teaching the Lisp programming language in the "Lisp Teacher" system;

PROUST system - learning the language Pascal, etc.

Expert system solutions are transparent, i.e. they can be explained to the user at a qualitative level.

Expert systems are able to replenish their knowledge in the course of interaction with an expert.

4.3. Structure of expert systems

The structure of expert systems includes the following components:

Knowledge base- the core of the ES, the body of knowledge of the subject area, recorded on a machine medium in a form understandable to the expert and the user (usually in some language close to natural). In parallel with such a "human" representation, there is a knowledge base in the internal "machine" representation. It consists of a set of facts and rules.

Facts - describe objects and the relationship between them. Rules - used in the knowledge base to describe relationships between objects. Based on the relationships defined by the rules, a logical inference is performed.

Database- is intended for temporary storage of facts and hypotheses, contains intermediate data or the result of communication between systems and the user.

Machine-logical inference- a reasoning mechanism that operates on knowledge and data in order to obtain new data; for this, a software-implemented decision search mechanism is usually used.

Communication subsystem- serves to conduct a dialogue with the user, during which the expert system asks the user for the necessary facts for the reasoning process, and also allows the user to control the course of reasoning to some extent.

Explanation Subsystem- is necessary in order to give the user the opportunity to control the course of reasoning.

Knowledge Acquisition Subsystem- a program that provides a knowledge engineer with the ability to create knowledge bases in an interactive mode. It includes a system of nested menus, knowledge representation language templates, hints ("help" - mode) and other service tools that make it easier to work with the database.

The expert system operates in two modes:

Acquisition of knowledge (definition, modification, addition);

Problem solving.

In this mode, task data is processed and, after appropriate encoding, transferred to the blocks of the expert system. The results of processing the received data are sent to the advice and explanations module and, after recoding into a language close to natural, they are issued in the form of advice, explanations and comments. If the answer is not clear to the user, he may require the expert system to explain how it was received.

4.4. Main stages of development of expert systems

The technological process of developing an industrial expert system can be divided into six main stages:

1. Choosing the right problem

Activities leading up to the decision to start developing a particular ES include:

Identification of the problem area and tasks;

Finding an expert who is willing to cooperate in solving the problem, and appointing a development team;

Determination of a preliminary approach to solving the problem;

Analysis of costs and profits from development;

preparation detailed plan development.

2. Development of a prototype system

prototype system is a truncated version of an expert system designed to check the correctness of coding facts, relationships, and expert reasoning strategies.

The prototype must meet two requirements:

The prototype system should solve the most typical problems, but it should not be too big.

Prototyping time and effort should be low.

The operation of the prototype programs is evaluated and tested to bring them into line with real user requests. The prototype is checked for:

Convenience and adequacy of input-output interfaces (the nature of the questions in the dialogue, the coherence of the output text of the result, etc.)

Efficiency of the control strategy (enumeration order, use of fuzzy inference, etc.);

Quality of test cases;

Correctness of the knowledge base (completeness and consistency of the rules).

An expert usually works with a knowledge engineer who helps to structure knowledge, define and form the concepts and rules needed

to solve the problem. If successful, the expert, with the help of a knowledge engineer, expands the knowledge base of the prototype about the problem area.

If it fails, it can be concluded that What other methods are needed to solve this problem or develop a new prototype.

3. Development of a prototype to an industrial expert system.

At this stage, the knowledge base is significantly expanded, big number additional heuristics. These heuristics generally increase the depth of the system by providing more rules for subtle aspects of individual cases. After establishing the basic structure of the ES, the knowledge engineer proceeds to develop and adapt the interfaces through which the system will communicate with the user and the expert.

As a rule, a smooth transition from prototypes to industrial expert systems is implemented. Sometimes, when developing an industrial system, additional stages are distinguished for the transition: demonstration prototype - research prototype - live prototype - industrial system.

4. System evaluation

Expert systems are evaluated in order to check the accuracy of the program and its usefulness. Evaluation can be carried out on the basis of various criteria, which we group as follows:

User criteria (comprehensibility and "transparency" of the system operation, convenience of interfaces, etc.);

Criteria of invited experts (assessment of advice-solutions offered by the system, its comparison with its own solutions, assessment of the subsystem of explanations, etc.);

Criteria of the development team (implementation efficiency, performance, response time, design, breadth of coverage of the subject area, consistency of the knowledge base, the number of deadlocks when the system cannot make a decision, analysis of the sensitivity of the program to minor changes in knowledge representation, weight coefficients used in the mechanisms of logical output, data, etc.).

5. Docking system

At this stage, the expert system is docked with other software tools in the environment in which it will operate and the training of the people it will serve. Coupling also implies the development of links between the expert system and the environment in which it operates.

Docking includes ensuring the connection of the ES with existing databases and other systems in the enterprise, as well as improving the time-dependent system factors so that it can be provided more efficient work and improve its performance technical means if the system is operating in an unusual environment (for example, communication with measuring devices).

6. System support

Recoding a system to a C-like language improves performance and portability, but reduces flexibility. This is acceptable only if the system retains all knowledge of the problem area, and this knowledge will not change in the near future. However, if the expert system is created precisely because the problem area changes, then it is necessary to maintain the system in the development tool environment.

Artificial intelligence languages

Lisp (LISP) and Prolog (Prolog) are the most common languages ​​for solving artificial intelligence problems. There are also less common artificial intelligence languages, such as REFAL, developed in Russia. The universality of these languages ​​is less than that of traditional languages, but artificial intelligence languages ​​compensate for its loss with rich opportunities for working with symbolic and logical data, which is extremely important for artificial intelligence tasks. On the basis of artificial intelligence languages, specialized computers (for example, Lisp machines) are created for solving artificial intelligence problems. The disadvantage of these languages ​​is their inapplicability for creating hybrid expert systems.

Special software tools

Lisp libraries and add-ons for the artificial intelligence language Lisp: KEE (Knowledge Engineering Environment), FRL (Frame Representation Language), KRL (Knowledge Represantation Language), ARTS, etc., allowing users to work with expert systems blanks at a higher level than is possible in conventional artificial intelligence languages.

"Shells"

"Shells" are empty" versions of existing expert systems, i.e. ready-made expert systems without a knowledge base. An example of such a shell is EMYCIN (Empty MYCIN - empty MYC1N), which is an empty MYCIN expert system. The advantage of shells is that that they do not require the work of programmers at all to create a ready-made expert system.It only requires experts in the subject area to populate the knowledge base.However, if a certain subject area does not fit well into the model used in some shell, it is not easy to populate the knowledge base in this case.

5. PROLOGUE - the language of the logical
programming

5.1. General information about PROLOG.

PROLOG (PROGRAMMING IN LOGIC) is a logical programming language designed to solve problems from the field of artificial intelligence (creation of ES, translation programs, natural language processing). It is used for natural language processing and has powerful means, allowing you to extract information from databases, and the search methods used in it are fundamentally different from traditional ones.

The basic constructions of PROLOGUE are borrowed from logic. PROLOGUE is not a procedural, but a declarative programming language. It is focused not on the development of solutions, but on a systematic and formalized description of the problem so that the solution follows from the description.

The essence of the logical approach is that the machine is offered not an algorithm as a program, but a formal description of the subject area and the problem being solved in the form of an axiomatic system. Then the search for a solution using the output in this system can be entrusted to the computer itself. The main task of a programmer is to successfully represent the subject area with a system of logical formulas and such a set of relations on it that most fully describe the task.

Fundamental properties of PROLOG:

1) inference mechanism with search and return

2) built-in pattern matching mechanism

3) simple and easily changeable data structure

4) lack of pointers, assignment and transition operators

5) naturalness of recursion

Stages of programming in PROLOG:

1) declaration of facts about objects and relations between them;

2) definition of the rules for the relationship of objects and relations between them;

3) formulation of the question about objects and relations between them.

The theoretical basis of PROLOG is a section of symbolic logic called the predicate calculus.

Predicate is the name of a property or relationship between objects with a sequence of arguments.

<имя_предиката>(t1, t2, ..., tn)), t1,t2,...,tn are arguments

For example, the fact black(cat) is written using the black predicate, which has one argument. Fact wrote (Sholokhov, "QUIET DON") written using the predicate wrote, which has two arguments.

The number of predicate arguments is called the arity of the predicate and is denoted by black/1 (the black predicate has one argument, its arity is one). Predicates may have no arguments; the arity of such predicates is 0.

The Prolog language grew out of the work of A. Colmerauer on natural language processing and the independent work of R. Kowalski on Applications of Logic to Programming (1973).

The most famous programming system in Russia is Turbo Prolog - a commercial implementation of the language for IBM-compatible PCs. In 1988, a much more powerful version of Turbo Prolog 2.0 was released, including an improved IDE, a fast compiler, and low-level programming tools. Borland distributed this version until 1990, and then PDC acquired the exclusive right to use the compiler source code and further market the programming system under the name PDC Prolog.

In 1996, the Prolog Development Center released Visual Prolog 4.0 to the market. The Visual Prolog environment uses an approach called "visual programming", in which the appearance and behavior of programs are defined using special graphical design tools without traditional programming in an algorithmic language.

Visual Prolog includes an interactive visual development environment (VDE - Visual Develop Environment), which includes text and various graphic editor, code generation tools that construct control logic (Experts), as well as an extension of the interface interface visual programming(VPI - Visual Programming Interface), Prolog compiler, a set of various plug-in files and libraries, a link editor, files containing examples and help.

5.2. Suggestions: facts and rules

A PROLOGUE program consists of sentences, which can be facts, rules, or queries.

Fact is a statement that some specific relationship between objects is observed. A fact is used to show a simple relationship between data.

Fact structure:

<имя_отношения>(t1,t2,...,tn)), t1,t2,...,tn are objects

Fact examples:

studies (Ira, university). % Ira studies at the university

parent (ivan, alexey). % Ivan is the parent of Alexei

programming_language (prologue). % Prolog is a programming language

The set of facts is database. In the form of a fact, the program records data that is accepted as true and does not require proof.

rules are used to establish relationships between objects based on existing facts.

Rule structure:

<имя_правила> :- <тело правила>or

<имя_правила >if<тело правила>

The left side of the inference rule is called head rules, and the right side - body. The body can consist of several conditions separated by commas or semicolons. The comma stands for the logical AND operation, the semicolon stands for the logical OR operation. Sentences use variables to generalize the formulation of inference rules. Variables only work in one sentence. The name in different sentences refers to different objects. All sentences must end with a dot.

Rule examples:

mother (X, Y) :- parent (X, Y), woman (X).

student (X) :- studies (X, institute); studying (X, university).

A rule differs from a fact in that a fact is always true, and a rule is true if all the statements that make up the body of the rule hold. Facts and rules form knowledge base.

If there is a database, then you can write inquiry(target) to it. A query is a statement of a problem that the program must solve. Its structure is the same as that of a rule or a fact. There are queries with constants and queries with variables.

Queries with constants allow you to get one of two answers: “yes” or “no”

For example, there are facts:

knows (lena, tanya).

knows (lena, sasha).

knows (Sasha, Tanya).

a) Does Lena know Sasha?

inquiry: knows (lena, sasha).

Result: yes

b) Does Tanya know Lena?

inquiry knows (tanya, lena).

Result: no

If a variable is included in the request, then the interpreter tries to find such values ​​for which the request will be true.

a) Who does Lena know?

inquiry: knows (lena, X).

Result:

X = Tanya

X = sasha

b) Who knows Sasha?

inquiry: knows (X, Sasha).

Result: X = Lena

Requests can be compound, i.e., consist of several simple requests. They are combined with the sign “,”, which is understood as a logical connective “and”.

Simple queries are called subgoal, the multipart query evaluates to true when each subgoal is true.

To answer whether Lena and Sasha have common acquaintances, you should make a request:

knows (lena, X), knows (sasha, X).

Result:

X = Tanya

5.4. Variables in PROLOG

A variable in PROLOG is not treated as an allocated piece of memory. It is used to designate an object that cannot be referred to by name. A variable can be thought of as a local name for some object.

The variable name must begin with an uppercase letter or underscore and contain only letters, numbers, and underscores: X, _y, AB, X1. A variable that has no value is called free, a variable that has a value - specific.

A variable consisting of only an underscore is called anonymous and is used when its value is not significant. For example, there are facts:

parent (Ira, Tanya).

parent (Misha, Tanya).

parent (olya, ira).

All parents need to be identified

Inquiry: parent(X, _)

Result:

X = Ira

X = Misha

X = Olya

The scope of the variable is the assertion. Within a statement, the same name belongs to the same variable. Two statements can use the same variable name in completely different ways.

There is no assignment operator in PROLOGUE, its role is played by the equality operator =. The target X=5 can be viewed as a comparison (if X has a value) or an assignment (if X is free).

In PROLOG you cannot write X=X+5 to increase the value of a variable. A new variable should be used: Y=X+5.

5.5. Objects and data types in PROLOG

Data objects in PROLOG are called terms. A term can be a constant, a variable, or a composite term (structure). The constants are integers and real numbers(0, - l, 123.4, 0.23E-5), as well as atoms.

Atom– any sequence of characters enclosed in quotation marks. The quotes are omitted if the string starts with lower case and contains only letters, numbers, and underscores (i.e., if it can be distinguished from variable designation). Atom examples:

abcd, “a+b”, “student Ivanov”, prologue, “Prologue”.

Structure allows you to combine several objects into a single whole. It consists of a functor (name) and a sequence of terms.

The number of components in a structure is called the arity of the structure: data/3.

A structure can contain another structure as one of its objects.

birthday_date (person("Masha","Ivanova"), data(April 15, 1983))

domain in PROLOG is a data type. The standard domains are:

integer - whole numbers.

real - real numbers.

string - strings (any sequence of characters enclosed in quotes).

char is a single character enclosed in apostrophes.

symbol - sequence Latin letters, digits, and underscore characters starting with a small letter, or any sequence of characters enclosed in quotation marks.

5.6. The main sections of the PROLOG program

As a rule, the program on PROLOG consists of four sections.

DOMAINS– section of description of domains (types). The section is used if non-standard domains are used in the program.

For example:

PREDICATES- predicate description section. The section is used if non-standard predicates are used in the program.

For example:

knows (name, name)

student (name)

CLAUSES- offer section. It is in this section that sentences are written: facts and rules of inference.

For example:

knows (Lena, Ivan).

student (ivan).

student_sign(X, Y):- knows (X, Y), student (Y).

GOAL- target section. The request is written in this section.

For example:

sign_student(lena, X).

The simplest program may contain only a GOAL section, for example:

write("Enter your name: "), readln(Name),

write("Hello, ", Name, "!").







2022 gtavrl.ru.