ARTIFICIAL INTELLIGENT ( ITS / TASK 6 ) done by Wael Saad Hameedi / P71062

12
FACULTY OF ENGINEERING DEPARTMENT OF CIVIL AND STRUCTURAL ENGINEERING KKKA6424 INTELLIGENT URBAN TRAFFIC CONTROL SYSTEM Prof. Dr. Riza Atiq Abdullah O.K. Rahmat TASK (6) ARTIFICIAL INTELLIGENT PREPARED BY: WAEL SAAD HAMEEDI P71062

description

ARTIFICIAL INTELLIGENT ( ITS / TASK 6 ) done by Wael Saad Hameedi / P71062

Transcript of ARTIFICIAL INTELLIGENT ( ITS / TASK 6 ) done by Wael Saad Hameedi / P71062

Page 1: ARTIFICIAL INTELLIGENT ( ITS / TASK 6 ) done by Wael Saad Hameedi / P71062

FACULTY OF ENGINEERING

DEPARTMENT OF CIVIL AND STRUCTURAL ENGINEERING

KKKA6424

INTELLIGENT URBAN TRAFFIC CONTROL SYSTEM

Prof. Dr. Riza Atiq Abdullah O.K. Rahmat

TASK (6) ARTIFICIAL INTELLIGENT

PREPARED BY:

WAEL SAAD HAMEEDI

P71062

Page 2: ARTIFICIAL INTELLIGENT ( ITS / TASK 6 ) done by Wael Saad Hameedi / P71062

INTRODUCTION TO ARTIFICIAL INTELLIGENT

Definition...

Artificial Intelligence is a branch of Science which deals with helping machines find solutions to complex problems in a more human-like fashion. This generally involves borrowing characteristics from human intelligence, and applying them as algorithms in a computer friendly way. A more or less flexible or efficient approach can be taken depending on the requirements established, which influences how artificial the intelligent behaviour appears.

AI is generally associated with Computer Science, but it has many important links with other fields such as Maths, Psychology, Cognition, Biology and Philosophy, among many others. Our ability to combine knowledge from all these fields will ultimately benefit our progress in the quest of creating an intelligent artificial being.

Motivation...

Computers are fundamentally well suited to performing mechanical computations, using fixed programmed rules. This allows artificial machines to perform simple monotonous tasks efficiently and reliably, which humans are ill-suited to. For more complex problems, things get more difficult... Unlike humans, computers have trouble understanding specific situations, and adapting to new situations. Artificial Intelligence aims to improve machine behavior in tackling such complex tasks.

Together with this, much of AI research is allowing us to understand our intelligent behavior. Humans have an interesting approach to problem-solving, based on abstract thought, high-level deliberative reasoning and pattern recognition. Artificial Intelligence can help us understand this process by recreating it, then potentially enabling us to enhance it beyond our current capabilities.

Limitations...

To date, all the traits of human intelligence have not been captured and applied together to spawn an intelligent artificial creature. Currently, Artificial Intelligence rather seems to focus on lucrative domain specific applications, which do not necessarily require the full extent of AI capabilities. This limit of machine intelligence is known to researchers as narrow intelligence.

There is little doubt among the community that artificial machines will be capable of intelligent thought in the near future. It's just a question of what and when... The machines may be pure silicon, quantum computers or hybrid combinations of manufactured components and neural tissue. As for the date, expect great things to happen within this century!

Page 3: ARTIFICIAL INTELLIGENT ( ITS / TASK 6 ) done by Wael Saad Hameedi / P71062

Technology... There are many different approaches to Artificial Intelligence, none of which are either completely right or wrong. Some are obviously more suited than others in some cases, but any working alternative can be defended. Over the years, trends have emerged based on the state of mind of influencial researchers, funding opportunities as well as available computer hardware. Over the past five decades, AI research has mostly been focusing on solving specific problems. Numerous solutions have been devised and improved to do so efficiently and reliably. This explains why the field of Artificial Intelligence is split into many branches, ranging from Pattern Recognition to Artificial Life, including Evolutionary Computation and Planning.

Applications...

The potential applications of Artificial Intelligence are abundant. They stretch from the military for autonomous control and target identification, to the entertainment industry for computer games and robotic pets. Let's also not forget big establishments dealing with huge amounts of information such as hospitals, banks and insurances, who can use AI to predict customer behavior and detect trends.

As you may expect, the business of Artificial Intelligence is becoming one of the major driving forces for research. With an ever growing market to satisfy, there's plenty of room for more personel. So if you know what you're doing, there's plenty of money to be made from interested big companies!

Page 4: ARTIFICIAL INTELLIGENT ( ITS / TASK 6 ) done by Wael Saad Hameedi / P71062

WHAT IS A NEURAL NETWORK ?

A neural network is a powerful data modeling tool that is able to capture and represent complex input/output relationships. The motivation for the development of neural network technology stemmed from the desire to develop an artificial system that could perform "intelligent" tasks similar to those performed by the human brain. Neural networks resemble the human brain in the following two ways:

1. A neural network acquires knowledge through learning. 2. A neural network's knowledge is stored within inter-neuron connection strengths known

as synaptic weights.

The true power and advantage of neural networks lies in their ability to represent both linear and non-linear relationships and in their ability to learn these relationships directly from the data being modeled. Traditional linear models are simply inadequate when it comes to modeling data that contains non-linear characteristics.

The most common neural network model is the multilayer perceptron (MLP). This type of neural network is known as a supervised network because it requires a desired output in order to learn. The goal of this type of network is to create a model that correctly maps the input to the output using historical data so that the model can then be used to produce the output when the desired output is unknown. A graphical representation of an MLP is shown below.

Block diagram of a two hidden layer multiplayer perceptron (MLP). The inputs are fed into the input layer and get multiplied by interconnection weights as they are passed from the input layer to the first hidden layer. Within the first hidden layer, they get summed then processed by a nonlinear function (usually the hyperbolic tangent). As the processed data leaves the first hidden layer, again it gets multiplied by interconnection weights, then summed and processed by the second hidden layer. Finally the data is multiplied by interconnection weights then processed one last time within the output layer to produce the neural network output.

Page 5: ARTIFICIAL INTELLIGENT ( ITS / TASK 6 ) done by Wael Saad Hameedi / P71062

A good way to introduce the topic is to take a look at a typical application of neural networks. Many of today's document scanners for the PC come with software that performs a task known as optical character recognition (OCR). OCR software allows you to scan in a printed document and then convert the scanned image into to an electronic text format such as a Word document, enabling you to manipulate the text. In order to perform this conversion the software must analyze each group of pixels (0's and 1's) that form a letter and produce a value that corresponds to that letter. Some of the OCR software on the market use a neural network as the classification engine.

Demonstration of a neural network used within an optical character recognition (OCR) application. The original document is scanned into the computer and saved as an image. The OCR software breaks the image into sub-images, each containing a single character. The sub-images are then translated from an image format into a binary format, where each 0 and 1 represents an individual pixel of the sub-image. The binary data is then fed into a neural network that has been trained to make the association between the character image data and a numeric value that corresponds to the character. The output from the neural network is then translated into ASCII text and saved as a file.

Page 6: ARTIFICIAL INTELLIGENT ( ITS / TASK 6 ) done by Wael Saad Hameedi / P71062

Of course character recognition is not the only problem that neural networks can solve. Neural networks have been successfully applied to broad spectrum of data-intensive applications, such as:

Process Modeling and Control - Creating a neural network model for a physical plant then using that model to determine the best control settings for the plant.

Machine Diagnostics - Detect when a machine has failed so that the system can automatically shut down the machine when this occurs.

Portfolio Management - Allocate the assets in a portfolio in a way that maximizes return and minimizes risk.

Target Recognition - Military application which uses video and/or infrared image data to determine if an enemy target is present.

Medical Diagnosis - Assisting doctors with their diagnosis by analyzing the reported symptoms and/or image data such as MRIs or X-rays.

Credit Rating - Automatically assigning a company's or individuals credit rating based on their financial condition.

Targeted Marketing - Finding the set of demographics which have the highest response rate for a particular marketing campaign.

Voice Recognition - Transcribing spoken words into ASCII text. Financial Forecasting - Using the historical data of a security to predict the future

movement of that security. Quality Control - Attaching a camera or sensor to the end of a production process to

automatically inspect for defects. Intelligent Searching - An internet search engine that provides the most relevant

content and banner ads based on the users' past behavior. Fraud Detection - Detect fraudulent credit card transactions and automatically

decline the charge.

NeuroSolutions is a leading edge neural network development software that combines a modular, icon-based network design interface with an implementation of advanced learning procedures, such as Levenberg-Marquardt and backpropagation through time. Some other notable features include C++ source code generation, customized components through DLLs, neuro-fuzzy architectures, and programmatic control from Visual Basic using OLE Automation.

Page 7: ARTIFICIAL INTELLIGENT ( ITS / TASK 6 ) done by Wael Saad Hameedi / P71062

WHAT IS GENETIC ALGORITHMS ? Genetic algorithms (GAs) are stochastic algorithms whose search methods are based on the principle of survival of the fittest. In recent years, GAs have been applied to a wide range of difficult optimization problems for which classical mathematical programming solute approaches were not appropriate. The basic idea behind GAs is quite simple. The procedure starts with a randomly generated initial population of individuals, where each individual or chromosome represents a potential solution to the problem under consideration. Each solution is evaluated to give some measure of its “fitness.” A new population is then formed by selecting the more fit individuals. Some members of this new population undergo alterations by means of genetic operations (typically referred to as crossover and mutation operations) to form new solutions. This process of evaluation, selection, and alteration is repeated for a number of iterations (generations in GA terminology). After some number of generations, it is expected that the algorithm “converges” to a near-optimum solution. In addition to the aforementioned AI methods, there has recently been an interest in a new modeling paradigm known as agent-based modeling (ABM). This modeling approach came out of research work in AI as well as in complex systems analysis. The idea behind ABM is to describe a system from the perspective of its constituent units. The approach is therefore quite appropriate for modeling complex systems whose behavior emerges as a result of interactions among the components making up the system. Since transportation systems exhibit almost all the characteristics of complex systems, ABM has been attracting a lot of attention within the transportation research community. Given this, ABM will be discussed in the last section of this circular.

Page 8: ARTIFICIAL INTELLIGENT ( ITS / TASK 6 ) done by Wael Saad Hameedi / P71062

WHAT IS AN EXPERT SYSTEM ? An expert system is computer software that attempts to act like a human expert on a particular subject area. Expert systems are often used to advise non-experts in situations where a human expert in unavailable (for example it may be too expensive to employ a human expert, or it might be a difficult to reach location).

How Do Expert Systems Work? An expert system is made up of three parts:

A user interface - This is the system that allows a non-expert user to query (question) the expert system, and to receive advice. The user-interface is designed to be a simple to use as possible.

A knowledge base - This is a collection of facts and rules. The knowledge base is created from information provided by human experts

An inference engine - This acts rather like a search engine, examining the knowledge base for information that matches the user's query

Page 9: ARTIFICIAL INTELLIGENT ( ITS / TASK 6 ) done by Wael Saad Hameedi / P71062

The non-expert user queries the expert system. This is done by asking a question, or by answering questions asked by the expert system. The inference engine uses the query to search the knowledge baseand then provides an answer or some advice to the user.

Where Are Expert Systems Used? Medical diagnosis (the knowledge base would contain medical information, the symptoms of the patient would be used as the query, and the advice would be a diagnose of the patient’s illness) Playing strategy games like chess against a computer (the knowledge base would contain strategies and moves, the player's moves would be used as the query, and the output would be the computer's 'expert' moves) Providing financial advice - whether to invest in a business, etc. (the knowledge base would contain data about the performance of financial markets and businesses in the past) Helping to identify items such as plants / animals / rocks / etc. (the knowledge base would contain characteristics of every item, the details of an unknown item would be used as the query, and the advice would be a likely identification) Helping to discover locations to drill for water / oil (the knowledge base would contain characteristics of likely rock formations where oil / water could be found, the details of a particular location would be used as the query, and the advice would be the likelihood of finding oil / water there) Helping to diagnose car engine problems (like medical diagnosis, but for cars!)

Can Expert Systems Make Mistakes? Human experts make mistakes all the time (people forget things, etc.) so you might imagine that a computer-based expert system would be much better to have around. However expert systems can some problems:

Can't easily adapt to new circumstances (e.g. if they are presented with totally unexpected data, they are unable to process it)

Can be difficult to use (if the non-expert user makes mistakes when using the system, the resulting advice could be very wrong)

They have no 'common sense' (a human user tends to notice obvious errors, whereas a computer wouldn't)

Page 10: ARTIFICIAL INTELLIGENT ( ITS / TASK 6 ) done by Wael Saad Hameedi / P71062

WHAT IS A FUZZY LOGIC ?

Fuzzy set theory was proposed by Zadeh (1965) as a way to deal with the ambiguity associated with almost all real-world problems. Fuzzy set membership functions provide a way to show that an object can partially belong to a group. Classic set theory defines sharp boundaries between sets, which mean that an object can only be a member or a nonmember of a given set. Fuzzy membership functions allow for gradual transitions between sets and varying degrees of membership for objects within sets. Complete membership in a fuzzy function is indicated by a value of +1, while complete non-membership is shown by a value of 0. Partial membership is represented by a value between 0 and +1. Figure 1 shows an example of a fuzzy membership function defined for the set of “medium traffic volume” on a certain highway. In this example, traffic volumes between 800 and 1,000 vehicles per hour (vph) fully belong to the medium traffic level set. Traffic volumes less than 400 vph or more than 1,400 vph would not be regarded as medium at all (membership function value = 0). However, values between 400 and 800 vph, or between 10,00 and 1,400 vph

would have partial membership in the medium traffic level set. In a crisp set definition, on the other hand, only values between 800 and 1,000 vph would be regarded as medium, while all other values would not (for example, a traffic volume of 799 vph would not be regarded as a medium traffic level). The use of fuzzy set theory does not necessarily minimize uncertainty related to problem objectives or input values, but rather provides a standardized way to systematically capture and define ambiguity.

Page 11: ARTIFICIAL INTELLIGENT ( ITS / TASK 6 ) done by Wael Saad Hameedi / P71062

WHAT MAKES ARTIFICIAL INTELLIGENCE APPROPRIATE FOR TRANSPORTATION PROBLEMS ?

Transportation problems exhibit a number of characteristics that make them amenable to solution using AI techniques. First, transportation problems often involve both quantitative as well as qualitative data. The fact that we often have to deal with qualitative data in transportation makes the use of expert and FS an obvious choice. Second, in transportation we often deal with systems whose behavior is very hard to model with traditional approach, either because the interactions among the different system components are not fully understood or because one is dealing with a lot of uncertainty stemming from the human component of the system. For such complex systems, building empirical models, based on observed data are, may be the only option remaining. NNs, given their universal function approximation capabilities, are perfect tools for building such models. Third, transportation problems often lead to challenging optimization problems that are quite challenging to solve using traditional mathematical programming techniques, either because the relationships are hard to specify analytically or because of the size of the problem and its computational intractability. For these problems, GAs may provide an alternative solution approach. Finally, the complex nature of transportation systems and the fact Artificial Intelligence Applications in Transportation 5 that their behavior emerges as a result of interactions among the system components makes ABM techniques quite appropriate for study the behavior of the system.

Page 12: ARTIFICIAL INTELLIGENT ( ITS / TASK 6 ) done by Wael Saad Hameedi / P71062

THANK YOU