The Fifth Generation Computer Systems (FGCS) was a 10-year initiative begun in 1982 by Japan's
Ministry of International Trade and Industry
The was a ministry of the Government of Japan from 1949 to 2001. The MITI was one of the most powerful government agencies in Japan and, at the height of its influence, effectively ran much of Japanese industrial policy, funding research and d ...
(MITI) to create computers using
massively parallel computing
Massively parallel is the term for using a large number of computer processors (or separate computers) to simultaneously perform a set of coordinated computations in parallel. GPUs are massively parallel architecture with tens of thousands of t ...
and
logic programming
Logic programming is a programming paradigm which is largely based on formal logic. Any program written in a logic programming language is a set of sentences in logical form, expressing facts and rules about some problem domain. Major logic pro ...
. It aimed to create an "epoch-making computer" with supercomputer-like performance and to provide a platform for future developments in
artificial intelligence
Artificial intelligence (AI) is intelligence—perceiving, synthesizing, and inferring information—demonstrated by machines, as opposed to intelligence displayed by animals and humans. Example tasks in which this is done include speech r ...
. FGCS was ahead of its time and a commercial failure. FGCS contributed greatly to the field of
concurrent logic programming
Concurrent logic programming is a variant of logic programming in which programs are sets of guarded Horn clauses of the form:
:
The conjunction is called the guard of the clause, and is the commitment operator.
Declaratively, guarded Horn ...
.
The term "fifth generation" was intended to convey the system as being advanced. In the
history of computing hardware, computers using
vacuum tube
A vacuum tube, electron tube, valve (British usage), or tube (North America), is a device that controls electric current flow in a high vacuum between electrodes to which an electric potential difference has been applied.
The type known as ...
s were called the first generation;
transistor
upright=1.4, gate (G), body (B), source (S) and drain (D) terminals. The gate is separated from the body by an insulating layer (pink).
A transistor is a semiconductor device used to Electronic amplifier, amplify or electronic switch, switch ...
s and
diodes, the second;
integrated circuits, the third; and those using
microprocessor
A microprocessor is a computer processor where the data processing logic and control is included on a single integrated circuit, or a small number of integrated circuits. The microprocessor contains the arithmetic, logic, and control circ ...
s, the fourth. Whereas previous computer generations had focused on increasing the number of logic elements in a single CPU, the fifth generation, it was widely believed at the time, would instead turn to massive numbers of CPUs for added performance.
Background
In the late 1965s until the early 1970s, there was much talk about "generations" of computer hardware — usually "three generations".
# First generation: Thermionic vacuum tubes. Mid-1940s. IBM pioneered the arrangement of vacuum tubes in pluggable modules. The
IBM 650 was a first-generation computer.
# Second generation: Transistors. 1956. The era of miniaturization begins. Transistors are much smaller than vacuum tubes, draw less power, and generate less heat. Discrete transistors are soldered to circuit boards, with interconnections accomplished by stencil-screened conductive patterns on the reverse side. The
IBM 7090
The IBM 7090 is a second-generation transistorized version of the earlier IBM 709 vacuum tube mainframe computer that was designed for "large-scale scientific and technological applications". The 7090 is the fourth member of the IBM 700/7000 se ...
was a second-generation computer.
# Third generation: Integrated circuits (silicon chips containing multiple transistors). 1964. A pioneering example is the ACPX module used in the IBM 360/91, which, by stacking layers of silicon over a ceramic substrate, accommodated over 20 transistors per chip; the chips could be packed together onto a circuit board to achieve unprecedented logic densities. The IBM 360/91 was a hybrid second- and third-generation computer.
Omitted from this taxonomy is the "zeroth-generation" computer based on metal gears (such as the
IBM 407
The IBM 407 Accounting Machine, introduced in 1949, was one of a long line of IBM tabulating machines dating back to the days of Herman Hollerith. It had a card reader and printer; a summary punch could be attached. Processing was directed by ...
) or mechanical relays (such as the Mark I), and the post-third-generation computers based on Very Large Scale Integrated (
VLSI
Very large-scale integration (VLSI) is the process of creating an integrated circuit (IC) by combining millions or billions of MOS transistors onto a single chip. VLSI began in the 1970s when MOS integrated circuit (Metal Oxide Semiconductor) ...
) circuits.
There was also a parallel set of generations for software:
#
First generation:
Machine language
In computer programming, machine code is any low-level programming language, consisting of machine language instructions, which are used to control a computer's central processing unit (CPU). Each instruction causes the CPU to perform a very ...
.
#
Second generation:
Low-level programming language
A low-level programming language is a programming language that provides little or no Abstraction (computer science), abstraction from a computer's instruction set architecture—commands or functions in the language map that are structurally sim ...
s such as
Assembly language.
#
Third generation Third generation may refer to:
* ''Third Generation'' (album), a 1982 album by Hiroshima
* ''The Third Generation'' (1920 film), an American drama film directed by Henry Kolker
* ''The Third Generation'' (1979 film), a West German black comedy b ...
: Structured
high-level programming language
In computer science, a high-level programming language is a programming language with strong abstraction from the details of the computer. In contrast to low-level programming languages, it may use natural language ''elements'', be easier to us ...
s such as
C,
COBOL and
FORTRAN.
#
Fourth generation: "Non-procedural"
high-level programming language
In computer science, a high-level programming language is a programming language with strong abstraction from the details of the computer. In contrast to low-level programming languages, it may use natural language ''elements'', be easier to us ...
s (such as object-oriented languages)
Throughout these multiple generations up to the 1970s, Japan built computers following U.S. and British leads. In the mid-1970s, the Ministry of International Trade and Industry stopped following western leads and started looking into the future of computing on a small scale. They asked the
Japan Information Processing Development Center
Japan ( ja, 日本, or , and formally , ''Nihonkoku'') is an island country in East Asia. It is situated in the northwest Pacific Ocean, and is bordered on the west by the Sea of Japan, while extending from the Sea of Okhotsk in the north ...
(JIPDEC) to indicate a number of future directions, and in 1979 offered a three-year contract to carry out more in-depth studies along with industry and academia. It was during this period that the term "fifth-generation computer" started to be used.
Prior to the 1970s, MITI guidance had successes such as an improved steel industry, the creation of the oil
supertanker
An oil tanker, also known as a petroleum tanker, is a ship designed for the bulk transport of oil or its products. There are two basic types of oil tankers: crude tankers and product tankers. Crude tankers move large quantities of unrefined ...
, the automotive industry, consumer electronics, and computer memory. MITI decided that the future was going to be
information technology
Information technology (IT) is the use of computers to create, process, store, retrieve, and exchange all kinds of Data (computing), data . and information. IT forms part of information and communications technology (ICT). An information te ...
. However, the
Japanese language
is spoken natively by about 128 million people, primarily by Japanese people and primarily in Japan, the only country where it is the national language. Japanese belongs to the Japonic or Japanese- Ryukyuan language family. There have been ...
, particularly in its written form, presented and still presents obstacles for computers. As a result of these hurdles, MITI held a conference to seek assistance from experts.
The primary fields for investigation from this initial project were:
* Inference computer technologies for knowledge processing
* Computer technologies to process large-scale data bases and
knowledge base
A knowledge base (KB) is a technology used to store complex structured and unstructured information used by a computer system. The initial use of the term was in connection with expert systems, which were the first knowledge-based systems. ...
s
* High performance workstations
* Distributed functional computer technologies
* Super-computers for scientific calculation
Project launch
The aim was to build parallel computers for artificial intelligence applications using concurrent logic programming. The project imagined an "epoch-making" computer with supercomputer-like performance running on top of large
database
In computing, a database is an organized collection of data stored and accessed electronically. Small databases can be stored on a file system, while large databases are hosted on computer clusters or cloud storage. The design of databases s ...
s (as opposed to a traditional
filesystem
In computing, file system or filesystem (often abbreviated to fs) is a method and data structure that the operating system uses to control how data is Computer data storage, stored and retrieved. Without a file system, data placed in a storage me ...
) using a
logic programming language
Logic programming is a programming paradigm which is largely based on formal logic. Any program written in a logic programming language is a set of sentences in logical form, expressing facts and rules about some problem domain. Major logic prog ...
to define and access the data using massively
parallel computing/processing. They envisioned building a prototype machine with performance between 100M and 1G LIPS, where a LIPS is a ''
Logical Inference Per Second.'' At the time typical workstation machines were capable of about 100k LIPS. They proposed to build this machine over a ten-year period, 3 years for initial R&D, 4 years for building various subsystems, and a final 3 years to complete a working prototype system. In 1982 the government decided to go ahead with the project, and established the Institute for New Generation Computer Technology (ICOT) through joint investment with various Japanese computer companies. After the project ended, MITI would consider an investment in a new "sixth generation" project.
Ehud Shapiro captured the rationale and motivations driving this project:
"As part of Japan's effort to become a leader in the computer industry, the Institute for New Generation Computer Technology has launched a revolutionary ten-year plan for the development of large computer systems which will be applicable to knowledge information processing systems. These Fifth Generation computers will be built around the concepts of logic programming. In order to refute the accusation that Japan exploits knowledge from abroad without contributing any of its own, this project will stimulate original research and will make its results available to the international research community."
Logic programming
The target defined by the FGCS project was to develop "Knowledge Information Processing systems" (roughly meaning, applied
Artificial Intelligence
Artificial intelligence (AI) is intelligence—perceiving, synthesizing, and inferring information—demonstrated by machines, as opposed to intelligence displayed by animals and humans. Example tasks in which this is done include speech r ...
). The chosen tool to implement this goal was
logic programming
Logic programming is a programming paradigm which is largely based on formal logic. Any program written in a logic programming language is a set of sentences in logical form, expressing facts and rules about some problem domain. Major logic pro ...
. Logic programming approach as was characterized by Maarten Van Emden – one of its founders – as:
* The use of logic to express information in a computer.
* The use of logic to present problems to a computer.
* The use of logical inference to solve these problems.
More technically, it can be summed up in two equations:
* ''Program'' = ''Set of axioms''.
* ''Computation'' = ''Proof of a statement from axioms''.
The Axioms typically used are universal axioms of a restricted form, called
Horn-clauses or
definite-clauses. The statement proved in a computation is an existential statement. The proof is constructive, and provides values for the existentially quantified variables: these values constitute the output of the computation.
Logic programming was thought as something that unified various gradients of computer science (
software engineering
Software engineering is a systematic engineering approach to software development.
A software engineer is a person who applies the principles of software engineering to design, develop, maintain, test, and evaluate computer software. The term '' ...
,
databases
In computing, a database is an organized collection of data stored and accessed electronically. Small databases can be stored on a file system, while large databases are hosted on computer clusters or cloud storage. The design of databases spa ...
,
computer architecture
In computer engineering, computer architecture is a description of the structure of a computer system made from component parts. It can sometimes be a high-level description that ignores details of the implementation. At a more detailed level, the ...
and
artificial intelligence
Artificial intelligence (AI) is intelligence—perceiving, synthesizing, and inferring information—demonstrated by machines, as opposed to intelligence displayed by animals and humans. Example tasks in which this is done include speech r ...
). It seemed that logic programming was a key missing connection between
knowledge engineering
Knowledge engineering (KE) refers to all technical, scientific and social aspects involved in building, maintaining and using knowledge-based systems.
Background Expert systems
One of the first examples of an expert system was MYCIN, an appli ...
and parallel computer architectures.
Results
After having influenced the
consumer electronics
Consumer electronics or home electronics are electronic ( analog or digital) equipment intended for everyday use, typically in private homes. Consumer electronics include devices used for entertainment, communications and recreation. Usuall ...
field during the 1970s and the
automotive world during the 1980s, the Japanese had developed a strong reputation. The launch of the FGCS project spread the belief that parallel computing was the future of all performance gains, producing a wave of apprehension in the computer field. Soon parallel projects were set up in the US as the
Strategic Computing Initiative
The United States government's Strategic Computing Initiative funded research into advanced computer hardware and artificial intelligence from 1983 to 1993. The initiative was designed to support various projects that were required to develop ma ...
and the
Microelectronics and Computer Technology Corporation
Microelectronics and Computer Technology Corporation, originally the Microelectronics and Computer Consortium and widely seen as the acronym MCC, was the first, and at one time one of the largest, computer industry research and development co ...
(MCC), in the UK as
Alvey
The Alvey Programme was a British government sponsored research programme in information technology that ran from 1984 to 1990. The programme was a reaction to the Japanese Fifth Generation project, which aimed to create a computer using massi ...
, and in Europe as the
(ESPRIT), as well as the
European Computer‐Industry Research Centre (ECRC) in
Munich
Munich ( ; german: München ; bar, Minga ) is the capital and most populous city of the German state of Bavaria. With a population of 1,558,395 inhabitants as of 31 July 2020, it is the third-largest city in Germany, after Berlin and Ha ...
, a collaboration between
ICL in Britain,
Bull
A bull is an intact (i.e., not castrated) adult male of the species ''Bos taurus'' (cattle). More muscular and aggressive than the females of the same species (i.e., cows), bulls have long been an important symbol in many religions,
includin ...
in France, and
Siemens in Germany.
The project ran from 1982 to 1994, spending a little less than ¥57 billion (about US$320 million) total.
[ After the FGCS Project, MITI stopped funding large-scale computer research projects, and the research momentum developed by the FGCS Project dissipated. However MITI/ICOT embarked on a neural-net project which some called the Sixth Generation Project in the 1990s, with a similar level of funding. Per-year spending was less than 1% of the entire R&D expenditure of the electronics and communications equipment industry. For example the project's highest expenditure year was 7.2 million yen in 1991, but IBM alone spent 1.5 billion dollars (370 billion yen) in 1982, while the industry spent 2150 billion yen in 1990.][
]
Concurrent logic programming
In 1982, during a visit to the ICOT, Ehud Shapiro invented Concurrent Prolog
Prolog is a logic programming language associated with artificial intelligence and computational linguistics.
Prolog has its roots in first-order logic, a formal logic, and unlike many other programming languages, Prolog is intended primarily ...
, a novel programming language that integrated logic programming and concurrent programming. Concurrent Prolog is a process oriented language, which embodies dataflow synchronization and guarded-command indeterminacy as its basic control mechanisms. Shapiro described the language in a Report marked as ICOT Technical Report 003, which presented a Concurrent Prolog interpreter written in Prolog. Shapiro's work on Concurrent Prolog inspired a change in the direction of the FGCS from focusing on parallel implementation of Prolog to the focus on concurrent logic programming
Concurrent logic programming is a variant of logic programming in which programs are sets of guarded Horn clauses of the form:
:
The conjunction is called the guard of the clause, and is the commitment operator.
Declaratively, guarded Horn ...
as the software foundation for the project. It also inspired the concurrent logic programming language Guarded Horn Clauses (GHC) by Ueda, which was the basis of KL1
KL1, or Kernel Language 1 is an experimental AND-parallel version of KL0 developed for the ICOT Fifth Generation Computer project. KL1 is an implementation of Flat GHC (a subset of the Guarded Horn Clauses language by Kazunori Ueda), making ...
, the programming language that was finally designed and implemented by the FGCS project as its core programming language.
The FGCS project and its findings contributed greatly to the development of the concurrent logic programming field. The project produced a new generation of promising Japanese researchers.
Commercial failure
Five running Parallel Inference Machines (PIM) were eventually produced: PIM/m, PIM/p, PIM/i, PIM/k, PIM/c. The project also produced applications to run on these systems, such as the parallel database management system Kappa, the legal reasoning system '' HELIC-II'', and the automated theorem prover '' MGTP'', as well as applications to bioinformatics.
The FGCS Project did not meet with commercial success for reasons similar to the Lisp machine
Lisp machines are general-purpose computers designed to efficiently run Lisp as their main software and programming language, usually via hardware support. They are an example of a high-level language computer architecture, and in a sense, they ...
companies and Thinking Machines
Thinking Machines Corporation was a supercomputer manufacturer and artificial intelligence (AI) company, founded in Waltham, Massachusetts, in 1983 by Sheryl Handler and W. Daniel "Danny" Hillis to turn Hillis's doctoral work at the Massachuse ...
. The highly parallel computer architecture was eventually surpassed in speed by less specialized hardware (for example, Sun workstations and Intel
Intel Corporation is an American multinational corporation and technology company headquartered in Santa Clara, California. It is the world's largest semiconductor chip manufacturer by revenue, and is one of the developers of the x86 seri ...
x86
x86 (also known as 80x86 or the 8086 family) is a family of complex instruction set computer (CISC) instruction set architectures initially developed by Intel based on the Intel 8086 microprocessor and its 8088 variant. The 8086 was intr ...
machines).
A primary problem was the choice of concurrent logic programming as the bridge between the parallel computer architecture and the use of logic as a knowledge representation and problem solving language for AI applications. This never happened cleanly; a number of languages were developed, all with their own limitations. In particular, the committed choice feature of concurrent constraint logic programming Concurrent constraint logic programming is a version of constraint logic programming aimed primarily at programming concurrent processes rather than (or in addition to) solving constraint satisfaction problems. Goals in constraint logic programming ...
interfered with the logical semantics of the languages.[Carl Hewitt]
Inconsistency Robustness in Logic Programming
ArXiv 2009. The project found that the promises of logic programming
Logic programming is a programming paradigm which is largely based on formal logic. Any program written in a logic programming language is a set of sentences in logical form, expressing facts and rules about some problem domain. Major logic pro ...
were largely negated by the use of committed choice.
Another problem was that existing CPU performance quickly pushed through the barriers that experts perceived in the 1980s, and the value of parallel computing dropped to the point where it was for some time used only in niche situations. Although a number of workstation
A workstation is a special computer designed for technical or scientific applications. Intended primarily to be used by a single user, they are commonly connected to a local area network and run multi-user operating systems. The term ''workstat ...
s of increasing capacity were designed and built over the project's lifespan, they generally found themselves soon outperformed by "off the shelf" units available commercially.
The project also failed to maintain continuous growth. During its lifespan, GUI
The GUI ( "UI" by itself is still usually pronounced . or ), graphical user interface, is a form of user interface that allows users to interact with electronic devices through graphical icons and audio indicator such as primary notation, inste ...
s became mainstream in computers; the internet
The Internet (or internet) is the global system of interconnected computer networks that uses the Internet protocol suite (TCP/IP) to communicate between networks and devices. It is a '' network of networks'' that consists of private, pub ...
enabled locally stored databases to become distributed; and even simple research projects provided better real-world results in data mining.
The workstations had no appeal in a market where general purpose systems could now replace and outperform them. This is parallel to the Lisp machine market, where rule-based systems such as CLIPS
CLIPS is a public domain software tool for building expert systems. The name is an acronym for "C Language Integrated Production System." The syntax and name were inspired by Charles Forgy's OPS5. The first versions of CLIPS were developed st ...
could run on general-purpose computers, making expensive Lisp machines unnecessary.
Ahead of its time
In summary, the Fifth-Generation project was revolutionary, and accomplished some basic research that anticipated future research directions. Many papers and patents were published. MITI established a committee which assessed the performance of the FGCS Project as having made major contributions in computing, in particular eliminating bottlenecks in parallel processing software and the realization of intelligent
interactive processing based on large knowledge bases. However, the committee was strongly biased to produce a positive outcome, so this overstates the actual results.
Many of the themes seen in the Fifth-Generation project are now being re-interpreted in current technologies. In the early 21st century, many flavors of parallel computing began to proliferate, including multi-core architectures at the low-end and massively parallel processing
Massively parallel is the term for using a large number of computer processors (or separate computers) to simultaneously perform a set of coordinated computations in parallel. GPUs are massively parallel architecture with tens of thousands of t ...
at the high end. When clock speed
In computing, the clock rate or clock speed typically refers to the frequency at which the clock generator of a processor can generate pulses, which are used to synchronize the operations of its components, and is used as an indicator of the pro ...
s of CPUs began to move into the 3–5 GHz range, CPU power dissipation Processor power dissipation or processing unit power dissipation is the process in which computer processors consume electrical energy, and dissipate this energy in the form of heat due to the resistance in the electronic circuits.
Power manag ...
and other problems became more important. The ability of industry
Industry may refer to:
Economics
* Industry (economics), a generally categorized branch of economic activity
* Industry (manufacturing), a specific branch of economic activity, typically in factories with machinery
* The wider industrial sector ...
to produce ever-faster single CPU systems (linked to Moore's Law about the periodic doubling of transistor counts) began to be threatened. Ordinary consumer machines and game consoles began to have parallel processors like the Intel Core
Intel Core is a line of streamlined midrange consumer, workstation and enthusiast computer central processing units (CPUs) marketed by Intel Corporation. These processors displaced the existing mid- to high-end Pentium processors at the time o ...
, AMD K10
The AMD Family 10h, or K10, is a microprocessor microarchitecture by AMD based on the K8 microarchitecture. Though there were once reports that the K10 had been canceled, , and Cell
Cell most often refers to:
* Cell (biology), the functional basic unit of life
Cell may also refer to:
Locations
* Monastic cell, a small room, hut, or cave in which a religious recluse lives, alternatively the small precursor of a monastery ...
. Graphics card companies like Nvidia and AMD began introducing large parallel systems like CUDA
CUDA (or Compute Unified Device Architecture) is a parallel computing platform and application programming interface (API) that allows software to use certain types of graphics processing units (GPUs) for general purpose processing, an approach ...
and OpenCL
OpenCL (Open Computing Language) is a framework for writing programs that execute across heterogeneous platforms consisting of central processing units (CPUs), graphics processing units (GPUs), digital signal processors (DSPs), field-progra ...
. On another line of development, the Web Ontology Language
The Web Ontology Language (OWL) is a family of knowledge representation languages for authoring ontologies. Ontologies are a formal way to describe taxonomies and classification networks, essentially defining the structure of knowledge for vario ...
(OWL) employs several layers of logic-based knowledge representation systems.
It appears, however, that these new technologies do not cite FGCS research. It is not clear if FGCS was leveraged to facilitate these developments in any significant way. No significant impact of FGCS on the computing industry has been demonstrated.
References
{{DEFAULTSORT:Fifth Generation Computer
Classes of computers
History of artificial intelligence
MITI projects
Parallel computing
Research projects
Supercomputing in Japan