Archive

Posts Tagged ‘Artificial intelligence’

Knowledge Representation & Reasoning

September 4, 2010 Leave a comment

Knowledge representation and reasoning is an area of artificial intelligence whose fundamental goal is to represent knowledge in a manner that facilitates inferencing (i.e. drawing conclusions) from knowledge. It analyzes how to formally think – how to use a symbol system to represent a domain of discourse (that which can be talked about), along with functions that allow inference (formalized reasoning) about the objects. Some kind of logic is used to both supply formal semantics of how reasoning functions apply to symbols in the domain of discourse, as well as to supply operators such as quantifiers, modal operators, etc. that, along with an interpretation theory, give meaning to the sentences in the logic.

When we design a knowledge representation (and a knowledge representation system to interpret sentences in the logic in order to derive inferences from them), we have to make choices across a number of design spaces. The single most important decision to be made is the expressivity of the KR. The more expressive, the easier and more compact it is to “say something”. However, more languages that are expressive are harder to automatically derive inferences from. An example of a less expressive KR would be propositional logic. An example of a more expressive KR would be auto epistemic temporal modal logic. Less expressive KRs may be both complete and consistent (formally less expressive than set theory). KRs that are more expressive may be neither complete nor consistent.

Genetic Algorithms

September 4, 2010 Leave a comment
Genetic algorithm works to find the "most blue image"

Image via Wikipedia

In a genetic algorithm, a population of strings (called chromosomes or the genotype of the genome), which encode candidate solutions (called individuals, creatures, or phenotypes) to an optimization problem, evolves toward better solutions. Traditionally, solutions are represented in binary as strings of 0s and 1s, but other encodings are also possible. The evolution usually starts from a population of randomly generated individuals and happens in generations. In each generation, the fitness of every individual in the population is evaluated, multiple individuals are stochastically selected from the current population (based on their fitness), and modified (recombined and possibly randomly mutated) to form a new population. The new population is then used in the next iteration of the algorithm. Commonly, the algorithm terminates when either a maximum number of generations has been produced, or a satisfactory fitness level has been reached for the population. If the algorithm has terminated due to a maximum number of generations, a satisfactory solution may or may not have been reached.

Genetic algorithms find application in bioinformatics, phylogenetic, computational science, engineering, economics, chemistry, manufacturing, mathematics, physics and other fields.

A typical genetic algorithm requires:

  • A genetic representation of the solution domain.
  • A fitness function to evaluate the solution domain.

A standard representation of the solution is as an array of bits. Arrays of other types and structures can be used in essentially the same way. The main property that makes these genetic representations convenient is that their parts are easily aligned due to their fixed size, which facilitates simple crossover operations. Variable length representations may also be used, but crossover implementation is more complex in this case. Tree-like representations are explored in genetic programming and graph-form representations are explored in evolutionary programming.

Natural Algorithms

September 4, 2010 Leave a comment

Image via Wikipedia

Nature, a source of minerals and precious stones is a mine of algorithms too.  In nature there are phenomena that resemble sorting action, phenomena which closely resemble division operation and so on.  By observing and studying these phenomena computer algorithms can be extracted.

It is possible to identify or observe natural phenomena from which algorithms can be derived, by accident or through a random search.  At the same time, it is difficult to propose a formal procedure (a set of well-defined steps) to search for a natural system that solves the problem at hand.  Nevertheless, the following suggestions given in the form of an algorithm will be useful in hunting for a suitable natural system.

1. Try to associate the data items that are central to the problem with entities in nature.  Let their attributes (mass, length, volume etc.) represent the magnitude of the data items.

2. Any algorithm transforms the input data, which is in a particular state into another form, which is the output data.  Therefore, keeping the entities in mind, try imagining a particular state of the system that depicts the input data and another state that depicts the output.

3. Now try to conceive a set of activities that can change the system state from the input state to the output state.

The above steps augmented with a little intuition should help the problem solver to zero-in onto a suitable natural system.

Types of AI search Techniques

September 4, 2010 Leave a comment

Solution can be found with less information or with more information. It all depends on the problem we need to solve. Usually when we have more information it will be easy to solve the problem. There are two kinds of AI search techniques:

Uninformed search and Informed search.

Uninformed Search

Sometimes we may not get much relevant information to solve a problem. Suppose we lost our car key and we are not able to recall where we left, we have to search for the key with some information such as in which places we used to place it. It may be our pant pocket or may be the table drawer. If it is not there then we have to search the whole house to get it. The best solution would be to search in the places from the table to the wardrobe. Here we need to search blindly with fewer clues. This type of search is called uninformed search or blind search. There are two popular AI search techniques in this category:

Breadth first search and Depth first search.

Informed search

We can solve the problem in an efficient manner if we have relevant information, clues or hints. The clues that help solve the problem constitute heuristic information. So informed search is also call heuristic search. Instead of searching one path or many paths, just like that informed search uses the given heuristic information to decide whether to explore the current state further. Hill climbing is an AI search algorithm that explores the neighboring states, chooses the most promising state as successor, and continues searching for the subsequent states. Once a state is explored, hill climbing algorithm simply discards it. Hill climbing search technique can make substantial savings if it has reliable information. It has to face three challenges: foothill, ridge and plateau. Best first search is a heuristic search technique that stores the explored states as well so that it can backtrack if it realizes that the present path proves unworthy.

Toy Problems

September 4, 2010 Leave a comment
a tic tac toe game

Image via Wikipedia

In mathematics and information science, a toy problem is a problem that is not of immediate scientific interest, yet is used as an expository device to illustrate a trait that may be shared by other, more complicated, instances of the problem, or as a way to explain a particular, more general, problem solving technique.

Why is games fun? In part, because they challenge our ability to think. Even simple games like Tic-Tac-Toe, Nim and Kalah, or puzzles like the Eights Puzzle, are challenging to children. More complex games like checkers, chess, bridge, and Go are difficult enough that it takes years for gifted adults to master them. Nearly all games require seeing patterns, making plans, searching combinations, judging alternative moves, and learning from experience, all being skills which are also involved in many daily tasks.

It’s no surprise that Alan Turing proposed chess playing as a good project for studying computers’ ability to reason. In many ways, games have provided simple proving grounds for many of AI’s powerful ideas.

Replies to the Chinese Room Argument

September 4, 2010 Leave a comment

Criticisms of the narrow Chinese Room argument against Strong AI have often followed three main lines, which can be distinguished by how much they concede:

  1. Some critics concede that the man in the room does not understand Chinese, but hold that at the same time there is some other thing that does understand. These critics object to the inference from the claim that the man in the room does not understand Chinese to the conclusion that no understanding has been created. There might be understanding by a larger, or different, entity. This is the strategy of The Systems Reply and the Virtual Mind Reply. These replies hold that there could be understanding in the original Chinese Room scenario.
  2. Other critics concede Searle’s claim that just running a natural language processing program as described in the CR scenario does not create any understanding, whether by a human or a computer system. However, these critics hold that a variation on the computer system could understand. The variant might be a computer embedded in a robotic body, having interaction with the physical world via sensors and motors (“The Robot Reply”), or it might be a system that simulated the detailed operation of an entire brain, neuron by neuron (“the Brain Simulator Reply”).
  3. Finally, some critics do not concede even the narrow point against AI. These critics hold that the man in the original Chinese Room scenario might understand Chinese, despite Searle’s denials, or that the scenario is impossible. For example, critics have argued that our intuitions in such cases are unreliable. Other critics have held that it all depends on what one means by “understand” points discussed in the section on the Intuition Reply. Others (e.g. Sprevak 2007) object to the assumption that any system (e.g. Searle in the room) can run any computer program. And finally some have argued that if it is not reasonable to attribute understanding on the basis of the behavior exhibited by the Chinese Room, then it would not be reasonable to attribute understanding to humans on the basis of similar behavioral evidence (Searle calls this last the “Other Minds Reply”).

In addition to these responses, Critics also independently argue against Searle’s larger claim, and hold that one can get semantics (that is, meaning) from syntactic symbol manipulation, including the sort that takes place inside a digital computer, a question discussed in the section on syntax and semantics.

The Chinese Room argument

September 4, 2010 Leave a comment
The Chinese Room argument

Image via Wikipedia

The Chinese Room argument, devised by John Searle, is an argument against the possibility of true artificial intelligence. The argument centers on a thought experiment in which someone who knows only English sits alone in a room following English instructions for manipulating strings of Chinese characters, such that to those outside the room it appears as if someone in the room understands Chinese.

The argument is intended to show that while suitably programmed computers may appear to converse in natural language, they are not capable of understanding language, even in principle. Searle argues that the thought experiment underscores the fact that computers merely use syntactic rules to manipulate symbol strings, but have no understanding of meaning or semantics. Searle’s argument is a direct challenge to proponents of Artificial Intelligence, and the argument has broad implications for functionalist and computational theories of meaning and of mind. As a result, there have been many critical replies to the argument.

Application Areas

September 4, 2010 Leave a comment
Agriculture, Natural Resource Management and the Environment, Architecture & Design

Art

Artificial Noses … and Taste

Astronomy & Space Exploration

Assistive Technologies

Automatic Programming

Autonomous Vehicles, Robots, Rovers, Explorers

Marketing, Customer Relations/Service & E-Commerce, Medicine

Military

Music

Networks – including Maintenance, Security & Intrusion Detection

Petroleum Industry

Politics & Foreign Relations

Public Health & Welfare

Scientific Discovery

Banking, Finance & Investing, Bioinformatics

Business & Manufacturing

Drama, Fiction, Poetry, Storytelling & Machine Writing

Earth & Atmospheric Sciences

Engineering

Filtering

Fraud Detection & Prevention

Agents, Expert Systems

Games & Puzzles

Machine Learning

Natural Language Processing

Robots

Vision

Hazards & Disasters, Information Retrieval & Extraction

Intelligent Tutoring Systems

Knowledge Management

Law

Law Enforcement & Public Safety

Libraries

Machine Translation

Smart Rooms, Smart Houses and Household Appliances, Social Science

Sports

Telecommunications

Transportation & Shipping

Video Games, Toys. Robotic Pets & Entertainment

Artificial Intelligence in the form of expert systems and neural networks have applications in every field of human endeavor. They combine precision and computational power with pure logic, to solve problems and reduce error in operation. Already, robot expert systems are taking over many jobs in industries that are dangerous for or beyond human ability. Some of the applications divided by domains are as follows:

Heavy Industries and Space

Robotics and cybernetics have taken a leap combined with artificially intelligent expert systems. An entire manufacturing process is now totally automated, controlled and maintained by a computer system in car manufacture, machine tool production, computer chip production and almost every high-tech process. They carry out dangerous tasks like handling hazardous radioactive materials. Robotic pilots carry out complex maneuvering techniques of unmanned spacecraft sent in space. Japan is the leading country in the world in terms of robotics research and use.

Finance

Banks use intelligent software applications to screen and analyze financial data. Software that can predict trends in the stock market have created which have known to beat humans in predictive power. Credit card providers, telephone companies, mortgage lenders, banks, and the U.S. Government employs AI systems to detect fraud and expedite financial transactions, with daily transaction volumes in the billions. These systems first use-learning algorithms to construct profiles of customer usage patterns, and then use the resulting profiles to detect unusual patterns and take the appropriate action (e.g., disable the credit card). Such automated oversight of financial transactions is an important component in achieving a viable basis for electronic commerce.

Computer Science

Researchers in quest of artificial intelligence have created spin offs like dynamic programming, object-oriented programming, symbolic programming, intelligent storage management systems and many more such tools. The primary goal of creating an artificial intelligence remains a distant dream but people are getting an idea of the ultimate path, which could lead to it.

Aviation

Researchers in quest of artificial intelligence have created spin offs like dynamic programming, object-oriented programming, symbolic programming, intelligent storage management systems and many more such tools. The primary goal of creating an artificial intelligence remains a distant dream but people are getting an idea of the ultimate path, which could lead to it.

Weather Forecast

Neural networks are used for predicting weather conditions. Previous data is fed to a neural network, which learns the pattern and uses that knowledge to predict weather patterns.

Swarm Intelligence

This is an approach to, as well as application of artificial intelligence similar to a neural network. Here, programmers study how intelligence emerges in natural systems like swarms of bees even though on an individual level, a bee just follows simple rules. They study relationships in nature like the prey-predator relationships that give an insight into how intelligence emerges in a swarm or collection from simple rules at an individual level. They develop intelligent systems by creating agent programs that mimic the behavior of these natural systems… etc.

Approaches to AI

September 4, 2010 Leave a comment

The researchers have branched Artificial Intelligence into different approaches, but they had the same goal of creating intelligent machines. Let us introduce ourselves to some of the main approaches to artificial intelligence. They are divided into two main lines of thought, the bottom up and the top down approach:

Neural Networks

Neural Network

Image via Wikipedia

This is the bottom up approach. It aims at mimicking the structure and functioning of the human brain, to create intelligent behavior. Researchers are attempting to build a silicon-based electronic network that is modeled on the working and form of the human brain! Our brain is a network of billions of neurons, each connected with the other.

At an individual level, a neuron has very little intelligence, in the sense that it operates by a simple set of rules, conducting electric signals through its network. However, the combined network of all these neurons creates intelligent behavior that is unrivaled and unsurpassed. Therefore, these researchers created network of electronic analogues of a neuron, based on Boolean logic. Memory was recognized to be an electronic signal pattern in a closed neural network.

How the human brain works is, it learns to realize patterns and remembers them. Similarly, the neural networks developed have the ability to learn patterns and remember. This approach has its limitations due to the scale and complexity of developing an exact replica of a human brain, as the neurons number in billions! Currently, through simulation techniques, people create virtual neural networks. This approach has not been able to achieve the ultimate goal but there is a very positive progress in the field. The progress in the development of parallel computing will aid it in the future.

Expert Systems

This is the top down approach. Instead of starting at the base level of neurons, by taking advantage of the phenomenal computational power of the modern computers, followers of the expert systems approach are designing intelligent machines that solve problems by deductive logic. It is like the dialectic approach in philosophy.

This is an intensive approach as opposed to the extensive approach in neural networks. As the name expert systems suggest, these are machines devoted to solving problems in very specific niche areas. They have total expertise in a specific domain of human thought. Their tools are like those of a detective or sleuth. They are programmed to use statistical analysis and data mining to solve problems. They arrive at a decision through a logical flow developed by answering yes-no questions.

Chess computers like Fritz and its successors that beat chess grandmaster Kasparov are examples of expert systems. Chess is known as the drosophila or experimental specimen of artificial intelligence.

Philosophy of AI

September 3, 2010 Leave a comment

The philosophy of artificial intelligence attempts to answer such questions as,

  • Can a machine act intelligently? Can it solve any problem that a person would solve by thinking?
  • Can a machine have a mind, mental states and consciousness in the same sense humans do? Can it feel?
  • Are human intelligence and machine intelligence the same? Is the human brain essentially a computer?

These three questions reflect the divergent interests of AI researchers, philosophers and cognitive scientists respectively. The answers to these questions depend on how one defines “intelligence” or “consciousness” and exactly which “machines” are under discussion.
Important propositions in the philosophy of AI include:

  • Turing’s “polite convention”: If a machine acts as intelligently as a human being does, then it is as intelligent as a human being is.
  • The Dartmouth proposal: Every aspect of learning or any other feature of intelligence can be so precisely described that a machine can be made to simulate it.
  • Newell and Simon’s physical symbol system hypothesis: A physical symbol system has the necessary and sufficient means of general intelligent action.
  • Searle’s strong AI hypothesis: The appropriately programmed computer with the right inputs and outputs would thereby have a mind in exactly the same sense human beings have minds.

One can expect there to be an academic subject called the philosophy of artificial intelligence analogous to the existing fields of philosophy of physics and philosophy of biology. By analogy, it will be a philosophical study of the research methods of AI and will propose to clarify philosophical problems raised.

I suppose it will take up the methodological issues raised by Hubert Dreyfus and John Searle, even the idea that intelligence requires that the system be made of meat.

Presumably, some philosophers of AI will do battle with the idea that AI is impossible (Dreyfus), that it is immoral (Weizenbaum) and that the very concept is incoherent (Searle).

It is unlikely to have any more effect on the practice of AI research than philosophy of science generally has on the practice of science.