Читать книгу Intellectual Property Law for Engineers, Scientists, and Entrepreneurs - Howard B. Rockman - Страница 18

Оглавление

INVENTORS AND INVENTIONS
Charles Babbage
THE DIFFERENCE ENGINE


Charles Babbage was a man of many talents. However, completing projects he started was not one of them. This essay will skip over many of the accomplishments of Mr. Babbage in his lifetime, and go straight to the point where he became known as a computing pioneer. Babbage, an Englishman, is credited with developing the first mechanical computers. However, his models were never completed, largely because of economic problems, and possibly clashes of personality, particularly with the Astronomer Royal of England.

Babbage directed the construction of early steam‐powered calculating machines that achieved modest success, but those machines also suggested that the calculations could be mechanized. He received British government funding for his calculation mechanism project for over 10 years, but eventually the treasury in England lost faith in him, and stopped funding his project. The machines that Babbage did manage to prototype were mechanical, and their basic architecture was similar to a modern computer. For example, the program memory and the data memory were separated, operation was based on instructions, the control unit could make conditional jumps, and his devices had a separate input/output unit.

In Babbage’s time, printed mathematical tables were calculated by humans. As you might expect, errors were constantly known to occur in the transcription of such calculations. Babbage at one time prepared his own account of how he began thinking about mechanical mathematical computations to replace those that were made by hand. In his own words, he stated that, in 1812, he was in his room in the Analytical Society, reviewing a table of logarithms, which he concluded was full of mistakes. He then had the thought of computing all tabular functions by machinery. He knew that the French government had previously produced several tables by a new method, where several French mathematicians decided how to compute the tables, six more divided the operations into simple stages, and the work itself, which was merely addition and subtraction, was performed by 80 human “computers” who knew only those two arithmetical processes. Babbage considered that this was mass production applied to arithmetic, and became enthralled by the concept that the labors of unskilled human computers could be taken over completely by faster and more reliable machinery.

In about 1819, Babbage’s interests were turning to astronomical instruments, and his ideas became more precise. He conceived of a plan to construct tables using the method of differences by mechanical means. He began to construct a small prototype “difference engine” in 1819, which he completed by 1822. He described his invention in a paper published on June 14, 1822, by the Royal Astronomical Society of England, titled “Note on the Application of Machinery to the Computation of Astronomical and Mathematical Tables.” At the time the paper was written, Babbage had also thought about a machine that could print the results of the difference engine, but this printer was not completed at the time his paper was written. An assistant of Babbage’s was required to write down the results obtained by the difference engine by calculating successive terms of the sequence n2 + n + 41. Babbage urged that a larger difference engine could do the work undertaken by many people, saving costs and being totally accurate. However, such a larger machine was never built during his lifetime.

Babbage’s difference engine was designed to compute values of polynomial functions. The calculations were supposed to be done automatically by using the method of finite differences, which made it possible to avoid the need for multiplication and division. In his 1822 paper, he described a machine using the decimal number system that was powered by cranking a handle. Babbage worked with Joseph Clement on the prototype of his design for a difference engine in 1823. In 1831, the collaboration between Babbage and Clement ended over arguments involving money. The prototype that Babbage and Clement did construct evolved into the first difference engine, but remained unfinished. This prototype was approximately one‐seventh of the calculating section of the difference engine that Babbage initially envisioned. Even though Babbage’s design was feasible, the metalworking techniques of the early 1800s could not economically produce the needed parts in the quantity and to the precision required. The design of the first difference engine would have included, had it been completed, around 25,000 parts, weighed 15 tons, and would have been 8 feet tall. Babbage received ample initial government funding for the project; however, the device was never completed.

A difference engine can be defined as an automatic mechanical calculator designed to tabulate polynomial functions. The name derives from the method of divided differences, a way to interpolate or tabulate functions by using a small set of polynomial coefficients. Most mathematical functions commonly used by engineers, including logarithmic and trigonometric functions, can be approximated by polynomials, allowing a difference engine to compute several useful tables of numbers. The difficulty in producing an error‐free table by teams of mathematicians or human computers was the driving force behind Charles Babbage’s desire to build a mechanical device to automate the calculating process.

In 1827, the costs of constructing Difference Engine No. 1 were becoming astronomical, and work stopped on the project in 1834. Up to that time, the British government had invested £17,000 into the project, and Babbage had invested £6,000 of his own funds. From 1834 to 1842, the British government did not make a decision on whether to continue to support Babbage in his projects, but the decision not to proceed was taken in 1842 by Robert Peel’s government.

Between 1847 and 1849, Babbage produced detailed drawings for an improved version, which he called Difference Engine No. 2, but he failed to receive funding for this project from the British government.

After failing at his efforts to complete Difference Engine No. 1, Babbage worked on a design for a more complex machine, which he called the “Analytical Engine.” He and C. G. Jarvis, who had previously worked for Clement, worked on the analytical engine, which was a transition from mechanized arithmetic to full‐fledged general‐purpose computation. It is largely on his development work on the analytical engine that Babbage’s reputation as a computer pioneer was established, although the analytical engine was never completed in Babbage’s lifetime.

The analytical engine was to be programmed with punch cards that would control a mechanical calculator, which would use the results of preceding computations as input. The device was also intended to employ several features subsequently used in modern computers, including sequential control, and looping and branching. It would have been the first mechanical device to be considered a complete computer. The analytical engine was not a single physical machine, but rather a succession of designs that Babbage continued working on until he died in 1871.

By 1834, Babbage had completed the first drawings of the analytical engine, which is now considered by some as the forerunner of the modern electronic computer. The analytic engine never progressed beyond detailed drawings; however, it is quite similar in logic components to present‐day computers. Babbage’s writings described five logic components of his computer: the store, the mill, the control, the input, and the output. The store contains all the variables to be operated upon, as well as all quantities that had arisen from the results of other operations. The mill, which is similar to the CPU in a modern computer, is a locale into which the quantities about to be operated upon are always brought. The control was carried out by a Jacquard loom–type device, operated by punch cards. The punch cards comprised a program for the particular task, where every set of cards made for any formula would at any future time recalculate the formula with whatever constants would be required. Thus, Babbage envisioned that his analytical engine would possess a library of its own—with every set of cards, having once been made, reproducing at any time the calculations for which it was first configured. Babbage designed the analytic engine to effectively have infinite storage by outputting data to punch cards, which could be read into the system again at a later stage when necessary. As the difference engine, the analytical engine was never completed by Babbage.

Babbage visited Luigi Federico Menabrea in Turin, Italy, in 1840. During this visit, Menabrea collected all the material needed to describe Babbage’s analytical engine, which Menabrea published in October 1842. Ada Lovelace, also known as Lady Byron, the daughter of Lord Byron, translated Menabrea’s article into English, adding considerably more extensive notes than the original memoir. Lovelace’s work was published in 1843.

Ada Lovelace described seeing Babbage’s working prototype in 1833: “We both went to see the thinking machine (or so it seems) last Monday. It raised several numbers to the 2nd and 3rd powers and extracted the root of a quadratic equation.”

Ada Lovelace was credited with developing an algorithm that would enable the analytical engine to calculate a sequence of Bernoulli numbers. Therefore, Ada Lovelace is often considered the first computer programmer, although no programming language had yet been invented during her time.

When Babbage turned his attention to developing the analytical engine, he further undermined the British government’s support of his difference engine, and this was one reason government financial support was withdrawn. By improving the concept as an analytical engine, Babbage had obsoleted his earlier difference engine.

Believe it or not, Babbage’s design was finally constructed between 1989 and 1991 using his plans and nineteenth‐century manufacturing tolerances. Lo and behold, this machine performed its first calculation in the Science Museum in London, returning results to 31 digits. During the 1980s, Allan G. Bromley, assistant professor at the University of Sydney, Australia, looked at Babbage’s original drawings for both the difference engine and the analytical engine that were located at the Science Museum Library in London. Ultimately, the Science Museum was persuaded to construct a working Difference Engine No. 2, which was built between 1980 and 1991 to tolerances achievable with nineteenth‐century technology. In 2000, the printer that Babbage had originally designed for the difference engine was also completed. Construction revealed some minor errors in Babbage’s design, which some commentators surmise had been purposefully introduced as protection in case his designs were stolen. These errors were corrected, and once completed both the difference engine and his printer worked flawlessly, and still work to the present day. This resolved the long‐standing debate as to whether Babbage’s design would have actually worked.

Babbage’s printer’s primary purpose was to produce stereotype plates for use in printing presses, by pressing type into soft plaster to create a flong. Babbage’s plans show that the engine’s results would be conveyed directly to mass printing, having recognized that many errors in previous tables were not the result of human calculating mistakes, but resulted from errors in the manual typesetting process. Therefore, the printer’s paper output is a means of checking the difference engine’s performance.

There are many articles and books written about Babbage’s work and how his difference engine operates. Those of you who are interested in delving into this subject matter further are encouraged to review the literature and gain more information about the earliest computer ever made from these sources, several of which are named in the Bibliography section of this text.

Intellectual Property Law for Engineers, Scientists, and Entrepreneurs

Подняться наверх