Scientific community metaphor
In computer science, the scientific community metaphor is a metaphor used to aid understanding scientific communities. The first publications on the scientific community metaphor in 1981 and 1982[1] 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.
Development
The scientific community metaphor builds on the philosophy, history and sociology of science. It was originally developed building on work in the philosophy of science by Karl Popper and Imre Lakatos. In particular, it initially made use of Lakatos' work on proofs and refutations. Subsequently, development has been influenced by the work of Geof Bowker, Michel Callon, Paul Feyerabend, Elihu M. Gerson, Bruno Latour, John Law, Karl Popper, Susan Leigh Star, Anselm Strauss, and Lucy Suchman.
In particular Latour's Science in Action had great influence. In the book, Janus figures make paradoxical statements about scientific development. An important challenge for the scientific community metaphor is to reconcile these paradoxical statements.
Qualities of scientific research
Scientific research depends critically on monotonicity, concurrency, commutativity, and pluralism to propose, modify, support, and oppose scientific methods, practices, and theories. Quoting from Carl Hewitt, scientific community metaphor systems have characteristics of monotonicity, concurrency, commutativity, pluralism, skepticism and provenance.
- monotonicity: Once something is published it cannot be undone. 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.
- 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.
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.
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.
Ether
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.).
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 A. 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.
Current applications
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. In particular, the scientific community metaphor is being used in client cloud computing.[2]
References
- Bill Kornfeld and Carl Hewitt 1981, Kornfeld 1981, Kornfeld 1982
- A historical perspective on developing foundations for privacy-friendly client cloud computing: the paradigm shift from “inconsistency denial” to “semantic integration” ArXiv January 30, 2009.
Further reading
- Julian Davies. "Popler 1.5 Reference Manual" University of Edinburgh, TPU Report No. 1, May 1973.
- Frederic Fitch. Symbolic Logic: an Introduction. Ronald Press, New York, 1952.
- Ramanathan Guha. Contexts: A Formalization and Some Applications PhD thesis, Stanford University, 1991.
- 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. "PLANNER: A Language for Proving Theorems in Robots" IJCAI 1969
- Carl Hewitt. "Procedural Embedding of Knowledge In Planner" IJCAI 1971.
- Carl Hewitt, Peter Bishop and Richard Steiger. "A Universal Modular Actor Formalism for Artificial Intelligence" IJCAI 1973.
- Carl Hewitt. Large-scale Organizational Computing requires Unstratified Reflection and Strong Paraconsistency in "Coordination, Organizations, Institutions, and Norms in Agent Systems III" edited by Jaime Sichman, Pablo Noriega, Julian Padget and Sascha Ossowski. Springer. 2008.
- Carl Hewitt. Development of Logic Programming: What went wrong, What was done about it, and What it might mean for the future What Went Wrong and Why: Lessons from AI Research and Applications; papers from the 2008 AAAI Workshop. Technical Report WS-08-14. AAAI Press. July 2008.
- 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.
- Robert Kowalski "Predicate Logic as Programming Language" Memo 70, Department of Artificial Intelligence, Edinburgh University. 1973
- Imre Lakatos. "Proofs and Refutations" Cambridge: Cambridge University Press. 1976.
- Bruno Latour. Science In Action: How to Follow Scientists and Engineers Through Society, Harvard University Press, Cambridge Mass., USA, 1987.
- John McCarthy. "Generality in Artificial Intelligence" CACM. December 1987.
- Jeff Rulifson, Jan Derksen, and Richard Waldinger. "QA4, A Procedural Calculus for Intuitive Reasoning" SRI AI Center Technical Note 73, November 1973.
- Earl Sacerdoti, et al., "QLISP A Language for the Interactive Development of Complex Systems" AFIPS. 1976
- Push Singh "Examining the Society of Mind" To appear in Computing and Informatics