Bootstrapping

From Exampleproblems

Jump to: navigation, search



Bootstrapping alludes to a German legend about a Baron Münchhausen, who was able to lift himself out of a swamp by pulling himself up by his own hair. In later versions he was using his own boot straps to pull himself out of the sea which gave rise to the term bootstrapping.

In computers, this term refers to any process where a simple system activates a more complicated system. It is the problem of starting a certain system without the system already functioning. It seems just as impossible as "pulling oneself up by the bootstraps" which Baron Münchhausen, according to stories, could do. However, solutions, accordingly called bootstrapping, exist; they are processes whereby a complex system emerges by starting simply and, bit by bit, developing more complex capabilities on top of the simpler ones.

Bootstrapping describes different things in several domains.

Contents

Computing

The term is believed to have entered computer jargon by way of Heinlein's short story By His Bootstraps.

Bootstrapping is generally considered a longer term for booting, or the process of starting up any computer. "Bootstrap" most commonly refers to the program that actually begins the initialization of the computer's operating system, like GRUB, LILO or NTLDR. Modern personal computers have the ability of using their network interface card (NIC) for bootstrapping, on IA-32(x86) and IA-64(Itanium) this method is implemented by PXE and Etherboot.

Bootstrapping can also refer to the development of successively more complex programming environments. The simplest environment will be, perhaps, a very basic text editor (e.g. ed) and an assembler program. Using these tools, one can write a more complex text editor, and a simple compiler for a higher-level language and so on, until one can have a graphical IDE and an extremely high-level programming language.

For more detail, see booting

Compilers

In compiler design, a bootstrap or bootstrapping compiler is a compiler that is written in the target language that it compiles. Examples include gcc, GHC, and PL/I.

For more detail, see Bootstrapping (compilers)

Linguistics

Syntactic bootstrapping is the idea that children use syntactic knowledge they have developed to help learn what words mean -- semantics builds on top of syntax.

Biology

The idea of bootstrapping is significant in a number of fields in the biological sciences. The process by which a fertilised ovum develops into an embryo, particularly the way in which the nuclear genome is expressed differently in its various cells as these differentiate, is one example of bootstrapping. The evolution of progressively better adapted organs through natural selection in a lineage of organisms is another. Some biologists, including Graham Cairns-Smith, believe that the origin of life itself may have been a bootstrap process as one or more systems of biological information storage formed the foundation for successor systems that ultimately supplanted them culminating in the emergence of our current DNA-based system. For more details see the articles on embryology, ontogeny and phylogeny and RNA World.

Electronics

The term bootstrap has a number of meanings in electronics.

In classical analog designs, a bootstrap circuit is an arrangement of components used to boost the input impedance of a circuit by using a small amount of positive feedback, usually over two stages. This was often necessary in the early days of bipolar transistors, which inherently have quite a low input impedance. The need for such arrangements has largely been alleviated by the use of modern field effect transistor designs, except when ultra-high input impedances are required. Note that because the feedback is positive, such circuits usually suffer from poor stability and noise performance compared to a circuit that doesn't bootstrap.

Another meaning is in connection with the booting process of a computer or other complex system, where the underlying electronics must arrange for the orderly startup of the CPU and related electronics components. This is done long before the CPU is in a state where it can begin to execute software. Nowadays the bootstrap is coordinated by special integrated circuits that monitor the raw power supply and provide the relevant signals to enable the CPU and other chips accordingly.

In a typical car alternator, a DC field current is required before the device can produce any output. Once running, a small portion of the output is fed back to keep the field alive — this can be seen as a form of bootstrapping. The initial priming current is usually obtained from the vehicle's battery — if the battery is totally flat the alternator won't produce any output voltage to recharge it even if the engine is started (by push starting for example) since it will be unable to bootstrap itself. However, in practice, a battery will usually have enough residual charge to avoid this.

Statistics

In statistics bootstrapping is a method for estimating the sampling distribution of an estimator by resampling with replacement from the original sample.

The bootstrap was invented by Bradley Efron (1979, 1981, 1982) and further developed by Efron and Tibshirani (1993). "Bootstrap" means that resampling one available sample gives rise to many others, reminiscent of pulling yourself up by your bootstraps. While the original objective of cross-validation was to verify replicability of results and that of jackknife is to detect outliers, Efron (1981, 1982) developed bootstrap for inferential purposes.

There are more complicated bootstraps for sampling without replacement, two-sample problems, regression, time series, hierarchical sampling, etc.

Check particle filter for the general theory of Sequential Monte Carlo methods, as well as details on some common implementations.

Finance

In finance, bootstrapping refers to the procedure used to calculate the zero coupon yield curve, solving for the maturities where no instruments are available. The method uses interpolation to complete the yield curve, using available zero coupon securities with varying maturities.

It may also mean a company acquiring a competitor with a sole reason of temporarily increasing earnings per share.

Bootstrapping also means starting and operating a business with little or no money or assistance from outside investors.

Resources

statistical bootstrapping

  • Davison, A. C. and Hinkley, D. V. (1997): Bootstrap Methods and their Applications, software.
  • Diaconis, P. & Efron, B. (1983). Computer-intensive methods in statistics. Scientific American, May, 116-130.
  • Edgington, E. S.(1995). Randomization tests. New York: M. Dekker.
  • Efron, B. (1979). Bootstrap methods: Another look at the jackknife. The Annals of Statistics, 7, 1-26.
  • Efron, B. (1981). Nonparametric estimates of standard error: The jackknife, the bootstrap and other methods. Biometrika, 68, 589-599.
  • Efron, B. (1982). The jackknife, the bootstrap, and other resampling plans. Society of Industrial and Applied Mathematics CBMS-NSF Monographs, 38.
  • Efron, B., & Tibshirani, R. J. (1993). An introduction to the bootstrap. New York: Chapman & Hall, software.

other kinds of bootstrapping

  • ...

External link

es:Bootstrapping


visitor stats