Representations/Languages Used:
Many people are taught "AI" with the opening line: "The three most important things in "AI" are representation, representation and representation". While choosing the way of representing knowledge in "AI" programs will always be a key concern, many methods now have well-chosen ways to represent data which have been shown to be useful for that technique. Many of the problems machines are expected to solve will require extensive knowledge about the world. Among the things that "AI" needs to represent are: objects, properties, number of items, categories and relations between objects situations, actions and time causes and effects. Along the way, much research has been undertaken into discovering the best ways to represent certain types of knowledge. The way in which knowledge can be represented is often taken as another way to characterize Artificial Intelligence.
Some general representation schemes include:
- First order logic
- Higher order logic
- Logic programs
- Frames
- Production Rules
- Semantic Networks
- Fuzzy logic
- Bayes nets
- Hidden Markov models
- Neural networks
- Strips
- Computer simulation
A representation of "what exists" is an ontology (borrowing a word from traditional philosophy), of which the most general are known as upper auto logics. Some standard "AI" programming languages have been developed in order to build intelligent programs efficiently and robustly. That include:
Note that other languages are used extensively to build "AI" programs, including: