Fourth-generation Programming Languages Fourth-generation languages include the following:
Visual Basic (VB). Visual Basic is the newest incarnation of BASIC from Microsoft. VB supports object-oriented features and methods. With this language, programmers can build programs in a visual environment. Visual Basic offers several toolbars with lots of tools to assist the programmer in designing the code visually, as well as a window for editing code directly.
VisualAge. VisualAge is a family of IBM development tools that allows the user to create entire Java- and Web-based systems using drag-and-drop development techniques.
Authoring Environments. Authoring environments are special-purpose programming tools for creating multimedia, computer-based training, Web pages, and so forth. One example of an authoring environment is Macromedia Director (which uses the Lingo scripting language). You can use it to create multimedia titles combining music clips, text, animation, graphics, and so forth. As with other visual development environments, much of the code is written automatically. However, most of the robust authoring environments also include their own languages, called scripting languages, that provide tools for added control over the final product. The programs used to create World Wide Web pages fall into another category of tools that are often lumped together with authoring environments. Some of these programs include Microsoft FrontPage, Netscape Visual JavaScript, and NetObjects Fusion.
Artificial Intelligence
Artificial intelligence (AI) can be defined as a program or machine that can solve problems or recognize patterns. A more "pure" definition of AI might be a computer or program that can fool a human into thinking he or she is dealing with another human. Such a computer could both learn and reason, so yet another definition of artificial intelligence might be a computer that can learn and reason.
Artificial intelligence software is used in many real-world applications, from determining if banks should grant loans, to voice recognition and terrain-following missile guidance systems. Even applications like word processors and e-mail make use of AI concepts. For example, a word processor's grammar checker attempts to understand and correct a language concept that most users cannot fully explain themselves. Regardless of the actual task, artificial intelligence is used in two basic areas:
Problem Solving. In problem solving, the artificial intelligence program must look at a problem or collection of data and determine what to do next. For example, a bank may use an artificial intelligence system to look at your credit history and life style before deciding whether or not to lend you money. This type of system is called an expert system.
Pattern Recognition. In pattern recognition, the artificial intelligence program must look for repeated or known occurrences of data. Examples include artificial vision and speech recognition.
Of course, many artificial intelligence programs combine elements of both areas to solve a problem. For example, a data compression utility must look for repeated patterns in the data and then decide how to rewrite the data to eliminate the duplications.
Some Examples of AI Techniques
Artificial intelligence may be applied in many different ways depending on the problem to be solved and the resources available. Some common techniques include the following:
Decision Trees. These software guides are simply maps that tell the computer what to do next based on each decision it makes. Each decision leads to a new branch with new decisions and consequences.
Rules-Based Systems. These systems work by following a set of rules given by the programmer. So long as the programmer has anticipated every possible circumstance that the program may encounter, it can solve any problem.
Feedback. This technique is used to modify programs. Basically, a feedback system monitors the results of a solution to see if the solution worked or in what areas it failed.
Knowledge-Based Systems. These systems are similar to a rules-based system, but they use feedback to learn from their mistakes. As a result, knowledge-based systems can actually learn to solve new problems.
Heuristics. This software technique is something like a recipe for a problem-solving approach rather than an algorithm that solves a specific problem.
Building an Artificial Brain
To create a true artificial intelligence, scientists could try building an artificial brain called a neural network. The human brain consists of billions and even trillions of neurons, each with as many as a million connections to other neurons. Scientists have identified hundreds of different types of neurons and more than fifty different patterns of neuron connections. This level of complexity is simply beyond any computer currently in existence. Even the most powerful parallel computers with tens of thousands of processors don't come close to equaling the number or variety of connections in a human brain.