Scientific community metaphor

From Wikipedia, the free encyclopedia

In computer science, the Scientific Community Metaphor is one way of understanding scientific communities. In this approach, a high level programming language called Ether was developed that made use of pattern-directed invocation to invoke high-level procedural plans on the basis of messages (e.g. assertions and goals). The Scientific Community Metaphor builds on the philosophy, history and sociology of science with its analysis that scientific research depends critically on monotonicity, concurrency, commutativity, and pluralism to propose, modify, support, and oppose scientific methods, practices, and theories.

The first publications on the Scientific Community Metaphor (Bill Kornfeld and Carl Hewitt 1981, Kornfeld 1981, Kornfeld 1982) involved the development of a programming language named Ether that invoked procedural plans to process goals and assertions concurrently by dynamically creating new rules during program execution. Ether also addressed issues of conflict and contradiction with multiple sources of knowledge and multiple viewpoints.

Contents

[edit] Monotonicity, concurrency, commutativity, pluralism, skepticism and provenance

Quoting from Carl Hewitt,[1] Scientific Community Metaphor systems have characteristics of monotonicity, concurrency, commutativity, pluralism, skepticism and provenance.

monotonicity: Once something is published it cannot be withdrawn. Scientists publish their results so they are available to all. Published work is collected and indexed in libraries. Scientists who change their mind can publish later articles contradicting earlier ones. However, they are not allowed to go into the libraries and "erase" old publications.
concurrency: Scientists can work concurrently, overlapping in time and interacting with each other.
commutativity: Publications can be read regardless of whether they initiate new research or become relevant to ongoing research. Scientists who become interested in a scientific question typically make an effort to find out if the answer has already been published. In addition they attempt to keep abreast of further developments as they continue their work.
pluralism: Publications include heterogeneous, overlapping and possibly conflicting information. There is no central arbiter of truth in scientific communities.
skepticism: Great effort is expended to test and validate current information and replace it with better information.
provenance: The provenance of information is carefully tracked and recorded.

Of course the above characteristics are limited in real scientific communities. Publications are sometimes lost or difficult to retrieve. Concurrency is limited by resources including personnel and funding. Sometimes it is easier to rederive a result than to look it up. Scientists only have so much time and energy to read and try to understand the literature. Scientific fads sometimes sweep up almost everyone in a field. The order in which information is received can influence how it is processed. Sponsors can try to control scientific activities. In Ether the semantics of the kinds of activity described in this paragraph are governed by the Actor model.

[edit] Proposing, modifying, supporting, and opposing

Scientific research includes generating theories and processes for modifying, supporting, and opposing these theories. Karl Popper called the process "conjectures and refutations", which although expressing a core insight, has been shown to be too restrictive a characterization by the work of Michel Callon, Paul Feyerabend, Elihu M. Gerson, Mark Johnson, Thomas Kuhn, George Lakoff, Imre Lakatos, Bruno Latour, John Law, Susan Leigh Star, Anselm Strauss, Lucy Suchman, Ludwig Wittgenstein, etc.. Three basic kinds of participation in Ether are proposing, supporting, and opposing. Scientific communities are structured to support competition as well as cooperation.

These activities affect the adherence to approaches, theories, methods, etc. in scientific communities. Current adherence does not imply adherence for all future time. Later developments will modify and extend current understandings. Adherence is a local rather than a global phenomenon. No one speaks for the scientific community as a whole.

Opposing ideas may coexist in communities for centuries. On rare occasions a community reaches a breakthrough that clearly decides an issue previously muddled.

[edit] Viewpoints, inheritance, translation, and negotiation

Ether used viewpoints to relativist information in publications. However a great deal of information is shared across viewpoints. So Ether made use of inheritance so that information in a viewpoint could be readily used in other viewpoints. Sometimes this inheritance is not exact as when the laws of physics in Newtonian mechanics are derived from those of Special Relativity. In such cases Ether used translation instead of inheritance. Bruno Latour has analyzed translation in scientific communities in the context of actor network theory. Imre Lakatos studied very sophisticated kinds of translations of mathematical (e.g., the Euler formula for polyhedra) and scientific theories.

Viewpoints were used to implement natural deduction (Fitch [1952]) in Ether. In order to prove a goal of the form (P implies Q) in a viewpoint V, it is sufficient to create a new viewpoint V' that inherits from V, assert P in V', and then prove Q in V'. An idea like this was originally introduced into programming language proving by Rulifson, Derksen, and Waldinger [1973] except since Ether is concurrent rather than being sequential it does not rely on being in a single viewpoint that can be sequentially pushed and popped to move to other viewpoints.

Ultimately resolving issues among these viewpoints are matters for negotiation as studied in the sociology and philosophy of science by Geof Bowker, Michel Callon, Paul Feyerabend, Elihu M. Gerson, Bruno Latour, John Law, Karl Popper, Susan Leigh Star, Anselm Strauss, Lucy Suchman, etc.

[edit] Emphasis on communities rather than individuals

Alan Turing was one of the first to attempt to more precisely characterize individual intelligence through the notion of his famous Turing Test. This paradigm was developed and deepened in the field of Artificial Intelligence. Allen Newell and Herbert Simon did pioneer work in analyzing the protocols of individual human problem solving behavior on puzzles. More recently Marvin Minsky has developed the idea that the mind of an individual human is composed of a society of agents in Society of Mind (see the analysis by Push Singh).

The above research on individual human problem solving is complementary to the Scientific Community Metaphor.

[edit] Current applications of the Scientific Community Metaphor

Some developments in hardware and software technology for the Internet are being applied in light of the Scientific Community Metaphor Hewitt 2006.

Legal concerns (e.g., HIPAA, Sarbanes-Oxley , "The Books and Records Rules" in SEC Rule 17a-3/4 and "Design Criteria Standard for Electronic Records Management Software Applications" in DOD 5015.2 in the U.S.) are leading organizations to store information monotonically forever. It has just now become less costly in many cases to store information on magnetic disk than on tape. With increasing storage capacity, sites can monotonically record what they read from the Internet as well as monotonically recording their own operations.

Search engines currently provide rudimentary access to all this information. Future systems will provide interactive question answering broadly conceived that will make all this information much more useful.

Massive concurrency (i.e., Web services and multi-core computer architectures) lies in the future posing enormous challenges and opportunities for the Scientific Community Metaphor.

[edit] See also

[edit] References

  • Frederic Fitch. Symbolic Logic: an Introduction. Ronald Press, New York, 1952.
  • Carl Hewitt. "PLANNER: A Language for Proving Theorems in Robots" IJCAI 1969
  • Carl Hewitt. "Procedural Embedding of Knowledge In Planner" IJCAI 1971.
  • Carl Hewitt.Description and Theoretical Analysis (Using Schemata) of Planner, A Language for Proving Theorems and Manipulating Models in a Robo AI Memo No. 251, MIT Project MAC, April 1972. MIT mathematics doctoral dissertation.
  • Julian Davies. "Popler 1.5 Reference Manual" University of Edinburgh, TPU Report No. 1, May 1973.
  • Jeff Rulifson, Jan Derksen, and Richard Waldinger. "QA4, A Procedural Calculus for Intuitive Reasoning" SRI AI Center Technical Note 73, November 1973.
  • Robert Kowalski "Predicate Logic as Programming Language" Memo 70, Department of Artificial Intelligence, Edinburgh University. 1973
  • Pat Hayes. "Computation and Deduction" Mathematical Foundations of Computer Science: Proceedings of Symposium and Summer School, Štrbské Pleso, High Tatras, Czechoslovakia, September 3-8, 1973.
  • Carl Hewitt, Peter Bishop and Richard Steiger. "A Universal Modular Actor Formalism for Artificial Intelligence" IJCAI 1973.
  • Earl Sacerdoti, et al., "QLISP A Language for the Interactive Development of Complex Systems" AFIPS. 1976
  • William Kornfeld and Carl Hewitt. "The Scientific Community Metaphor" IEEE Transactions on Systems, Man and Cybernetics, SMC-11. 1981
  • Bill Kornfeld. "The Use of Parallelism to Implement a Heuristic Search" IJCAI 1981.
  • Bill Kornfeld. Parallelism in Problem Solving MIT EECS Doctoral Dissertation. August 1981.
  • Bill Kornfeld. "Combinatorially Implosive Algorithms" CACM. 1982.
  • John McCarthy. "Generality in Artificial Intelligence" CACM. December 1987.
  • Ramanathan Guha. Contexts: A Formalization and Some Applications PhD thesis, Stanford University, 1991.
  • Push Singh "Examining the Society of Mind" To appear in Computing and Informatics
  • ^  Carl Hewitt: "The repeated demise of logic programming and why it will be reincarnated" What Went Wrong and Why: Lessons from AI Research and Applications. Technical Report SS-06-08. AAAI Press. March 2006.