OpenBUGS
   HOME

TheInfoList



OR:

OpenBUGS is a
software application Application software is any computer program that is intended for end-user use not computer operator, operating, system administration, administering or computer programming, programming the computer. An application (app, application program, sof ...
for the
Bayesian analysis Thomas Bayes ( ; c. 1701 – 1761) was an English statistician, philosopher, and Presbyterian Presbyterianism is a historically Reformed Protestant tradition named for its form of church government by representative assemblies of elde ...
of
complex Complex commonly refers to: * Complexity, the behaviour of a system whose components interact in multiple ways so possible interactions are difficult to describe ** Complex system, a system composed of many components which may interact with each ...
statistical model A statistical model is a mathematical model that embodies a set of statistical assumptions concerning the generation of Sample (statistics), sample data (and similar data from a larger Statistical population, population). A statistical model repre ...
s using
Markov chain Monte Carlo In statistics, Markov chain Monte Carlo (MCMC) is a class of algorithms used to draw samples from a probability distribution. Given a probability distribution, one can construct a Markov chain whose elements' distribution approximates it – that ...
(MCMC) methods. OpenBUGS is the open source variant of WinBUGS (
Bayesian inference Bayesian inference ( or ) is a method of statistical inference in which Bayes' theorem is used to calculate a probability of a hypothesis, given prior evidence, and update it as more information becomes available. Fundamentally, Bayesian infer ...
Using
Gibbs Sampling In statistics, Gibbs sampling or a Gibbs sampler is a Markov chain Monte Carlo (MCMC) algorithm for sampling from a specified multivariate distribution, multivariate probability distribution when direct sampling from the joint distribution is dif ...
). It runs under
Microsoft Windows Windows is a Product lining, product line of Proprietary software, proprietary graphical user interface, graphical operating systems developed and marketed by Microsoft. It is grouped into families and subfamilies that cater to particular sec ...
and
Linux Linux ( ) is a family of open source Unix-like operating systems based on the Linux kernel, an kernel (operating system), operating system kernel first released on September 17, 1991, by Linus Torvalds. Linux is typically package manager, pac ...
, as well as from inside the R statistical package.
Version Version may refer to: Computing * Software version, a set of numbers that identify a unique evolution of a computer program * VERSION (CONFIG.SYS directive), a configuration directive in FreeDOS Music * Cover version * Dub version * Remix * ''V ...
s from v3.0.7 onwards have been designed to be at least as efficient and reliable as WinBUGS over a range of test applications.


Differences from WinBUGS

In addition to the different licence and greater range of operating systems, a fundamental difference between OpenBUGS and WinBUGS is the way in which the expert system selects the updating algorithm to use for the class of full
conditional distribution Conditional (if then) may refer to: * Causal conditional, if X then Y, where X is a cause of Y *Conditional probability, the probability of an event A given that another event B * Conditional proof, in logic: a proof that asserts a conditional, ...
of each node. While WinBUGS defines one algorithm for each possible class, there is no limit to the number of algorithms that OpenBUGS can use, allowing greater flexibility and extensibility. The user can select the updater to be used for each node after compilation. Further differences are detailed on the OpenBUGS website.


Programming language

The
source code In computing, source code, or simply code or source, is a plain text computer program written in a programming language. A programmer writes the human readable source code to control the behavior of a computer. Since a computer, at base, only ...
of OpenBUGS is written in the
Component Pascal Component Pascal is a programming language in the tradition of Niklaus Wirth's Pascal, Modula-2, Oberon and Oberon-2. It bears the name of the language Pascal and preserves its heritage, but is incompatible with Pascal. Instead, it is a minor ...
programming language A programming language is a system of notation for writing computer programs. Programming languages are described in terms of their Syntax (programming languages), syntax (form) and semantics (computer science), semantics (meaning), usually def ...
and is dependent on the Component Pascal
libraries A library is a collection of Book, books, and possibly other Document, materials and Media (communication), media, that is accessible for use by its members and members of allied institutions. Libraries provide physical (hard copies) or electron ...
provided by Oberon Microsystems as part of the Blackbox Component Framework. The development tools are available as open source. Binaries of the current version of OpenBUGS are available for Microsoft Windows, and the previous version for
Linux Linux ( ) is a family of open source Unix-like operating systems based on the Linux kernel, an kernel (operating system), operating system kernel first released on September 17, 1991, by Linus Torvalds. Linux is typically package manager, pac ...
, it can also run under WINE for Linux. Installation problems, development and usage questions are discussed at the OpenBUGS Bulletin Board. Attempts to port OpenBUGS to
Java Java is one of the Greater Sunda Islands in Indonesia. It is bordered by the Indian Ocean to the south and the Java Sea (a part of Pacific Ocean) to the north. With a population of 156.9 million people (including Madura) in mid 2024, proje ...
with the Gardens Point Component Pascal were given up in favor of a new portable implementation called JAGS. The BUGS language is the language that specifies the model code. It is
parse Parsing, syntax analysis, or syntactic analysis is a process of analyzing a string of symbols, either in natural language, computer languages or data structures, conforming to the rules of a formal grammar by breaking it into parts. The term ''pa ...
d by OpenBUGS, which then creates an
executable In computer science, executable code, an executable file, or an executable program, sometimes simply referred to as an executable or binary, causes a computer "to perform indicated tasks according to encoded instruction (computer science), in ...
(compiled code) that generates a sample from the
posterior distribution The posterior probability is a type of conditional probability that results from updating the prior probability with information summarized by the likelihood via an application of Bayes' rule. From an epistemological perspective, the posterior ...
when run. OpenBUGS was designed to run together with
S-Plus S-PLUS is a commercial implementation of the S (programming language), S programming language sold by TIBCO Software Inc. It features object-oriented programming capabilities and advanced analytical algorithms. Its statistical analysis capabilit ...
BUGS 0.5 Manual, date 1996-08-14
/ref> and the BUGS language is similar to the
S programming language S is a statistical programming language developed primarily by John Chambers and (in earlier versions) Rick Becker, Trevor Hastie, William Cleveland and Allan Wilks of Bell Laboratories. The aim of the language, as expressed by John Chambers, i ...
. OpenBUGS works well together with R; the R2OpenBUGS or BRugs packages provides some interoperability, and R modules help further analyses.


References


External links


OpenBugs
at the
University of Cambridge The University of Cambridge is a Public university, public collegiate university, collegiate research university in Cambridge, England. Founded in 1209, the University of Cambridge is the List of oldest universities in continuous operation, wo ...
* Since 2021 former official website at openbugs.net is offline, a source code mirror can be found a
Github/openbugs
but development appears to be shifted t
MultiBugs
with it
source
also on
GitHub GitHub () is a Proprietary software, proprietary developer platform that allows developers to create, store, manage, and share their code. It uses Git to provide distributed version control and GitHub itself provides access control, bug trackin ...
as noted in the pag
Future Developments
which still can be found on
Internet Archive The Internet Archive is an American 501(c)(3) organization, non-profit organization founded in 1996 by Brewster Kahle that runs a digital library website, archive.org. It provides free access to collections of digitized media including web ...
. {{Statistical software Free Bayesian statistics software Numerical programming languages Monte Carlo software