The social computer is a future computational system that harnesses the innate problem solving, action and information gathering powers of humans and the environments in which they live, including computers, in order to tackle problems that cannot be addressed by conventional operating systems and algorithms. Its behavior is algorithmic, and it produces consistent and persistent problem solving performance which improves with time.
The social computer is a future computational system for which the hardware is supplied by people (through the activity of their brains and bodies), the environment where they live, including artifacts (e.g., buildings and roads, sensors into the environment, networks and computers); and where the software is designed to be an extension of human social reasoning conditioned by laws, organizational and social rules and social conventions. A social computer is characterized by being relatively limited in space, for instance within a region or a town and by being connected by high speed networks which enable knowledge storage and transfer. Although grounded in human activity, a social computer exhibits an algorithmic behavior and problem solving capabilities which, are the result of very large numbers of local computations, decisions, interactions, data and control information transfers.
Algorithms for social computation are those which take advantage of the resilience and scale of mass human problem solving and which achieve higher performance by supplementing social capabilities of individuals by adapting the environment in order to provide better feedback and instrumentation for the mass computation achieved by society. This means that the analogue of an operating system for a social computer is not just the computer or the network but is primarily the social and environmental infrastructure that enables large-scale social computation to occur. Although part of the behaviour of social computation is emergent (in the sense that it is derived from the individual intelligences within a society) the overall aim of a social computation is to produce consistent and persistent problem solving performance which improves over time. Individual reactions to the ongoing computation should tend to reinforce the algorithm so that as more people participate its performance improves.
The state of a social computation includes part of the state of the physical, social environment in which the computation is situated. Therefore, it is characterized by being distributed but also situated within a limited space, for instance within a region or a town. The requirement of limitation in space is due to the physical need of being able act within a limited amount of time, for instance in order to react to a given stimulus, or to achieve a goal. Social computations also effect the state of the physical environment, so it must be capable of making its components interact and exchange data, information and knowledge, and also to effect change in the environment. People are one the main natural means for sensing and people are the main actuators of change to system state. The social computer can also act via machines (e.g. pervasive sensor networks, robotic devices) where these enhance the data provision or the effectiveness of scaleable algorithms. The basic sensor-effector model, nevertheless, involves large-scale, personal, human interaction of the sort that is becoming progressively more common as technology becomes more pervasive.
The development of the social computer will have an impact on theory (in ICT and other disciplines); on practice in system design and on society via its consequences for social organization and innovation.
The impact on theory is partly through the need to develop new algorithms (or variants on traditional ones) that take advantage of the ability to operate over a social infrastructure and take advantage of large scale social effects. It is also on the development of social and economic theories that take into account the effects of such algorithms; and legal models of the social contracts necessary for them to operate effectively at regional and international levels. All the science and concepts which have recently emerged under the heading of “Internet Science” will be at the core of this latter work.
The impact on system design is that it requires new styles of engineering that bring the social setting of computation much more intimately within the system design process than hitherto. It also involves integration (in service of the focused aim of social computation) of components of virtually all the ICT sub-disciplines, most noticeably: data and knowledge management, service-oriented architectures, software engineering, privacy and security, and, ultimately, all the Web and Internet focused disciplines.
The impact on society is obtained by developing greater synergy between computational structures and social structure with the aim of finding symbiotic relationships between the two. The development of the social computer will generate a major improvement in innovation capability (e.g., technological innovation, service and social innovation), no matter how far we go in its development, because it puts the end user at the center of the innovation process via the development of new socially aware software development methodologies.
Our goal is to enable social computation directly to meet key societal challenges by improving the quality of decision making, targeting, and timeliness of response to need. The social computer will empower us to configure information, human, computational, robotic and environmental resources to create new hybrid structures to respond to challenges in the 21st century. This requires new approaches to architecture that acknowledge the power of an open, transparent, structure that stimulates innovation while recognizing the need for democratic control that protects the rights of individuals, minority groups and property owners. The architects of social computation need a skill set that draws deeply on interdisciplinary research into humans, organizations and society:
- Cognitive science, researching the match between human cognitive capacities and the new environment enabled by the social computer.
- Sociology and organizational science, researching the synergy between the new technologies underpinning the social computer and the existing social and organizational structures together with the trajectory of adoption and successive adaptations and evolution of social structures and technologies as the social computer diffuses through our societies.
- Criminology, researching the evolution of deviancy, conflict and crime in the new environments enabled by the social computer.
- Economics, researching quantitative aspects of the transformation brought about be the social computer, including incentives to use social computation, economic impact, the effects of competition, the stability of new markets and mechanisms.
- Law, which will provide us with the means for dealing with legislative consequences of the approach and its negative effects (attacks, viruses and other threats to the social computer).
- Innovation (both technological and social) which will provide us with the required knowledge of the difficulties encountered when trying to transfer technology to the real world.
In turn, the studies developed by the disciplines listed above will provide input to ICT. ICT will have to evolve the way it is done today in at least two dimensions: by putting the management of diversity over time at its core; and by designing software systems at a much more abstract level, exploiting notions which are much closer to the societal notions (e.g., notions such as goal, actor, plan, activity, community and group).
The development of the social computer will lead to a radical departure from the current practice in ICT and also in the other disciplines (think for instance of the design or experimentation processes, which will have to be deeply aware of the social and economical notions which will underlie the behavior of the social computer). The future ICT will go beyond the differences and barriers which now exist among the ICT sub‐disciplines and the other disciplines. The development of the social computer will require a holistic approach which will require an in depth merge of the existing know‐how which, in turn, will generate new disciplines which will position themselves at the boundaries of the current disciplines.
The development of the social computer will require not only engineering, e.g. the construction of new prototypes aimed at solving specific problems, but also fundamental science aimed at explaining the emerging phenomena (some of which are already arising now). This will require experimentation and, more in general, an empirical approach which will provide the basis for the development of the theoretical foundations of the social computer. At the same time, the current, more application oriented, interdisciplinary efforts towards the Future Internet and the emerging research areas (e.g., eEnergy, eInclusion, eEnvironments, smart cities, social networking) can be interpreted as first steps towards the social computer.
We believe that there is an interesting and overall convergence in software and knowledge architecture that makes it timely now to build a social computing architecture. In the internet world, there has been a strong shift towards service-oriented architectures based on the notion of encapsulating significant functionalities as services and making these available to other services as a way of producing larger systems via components with trusted interfaces. In the mobile device world we are seeing services cluster around particular types of data provision and design of components being standardized in order to allow consistency of service over time, based on strong standardization on the means of coordinating those services. In the world of physical, robotic devices we have seen behaviour-based architectures dominate, in which the modularity of “service” is defined in terms of a behavioural competence that can be trusted to a given tolerance as a component of other, more complex behaviours. In knowledge, diversity has been recognized as a feature which must be exploited, thus leading the way towards the integration of isolated and diverse pieces of knowledge. The “ICT forever yours” call and the underlying core emphasis on diversity are further evidence of this phenomenon.
In all of these areas, the core idea (although approached in different ways) is that diversity must be handled based on the consideration that the knowledge and program design metaphor should be that of module definition accompanied by coordination of modules to obtain aggregate behaviours that are evolved through use. However for this to happen two fundamental requirements must be satisfied: there must be a mapping between the software (knowledge and program) modules and their interactions and the corresponding societal components and interactions; the pervasive societal diversity must be mapped into the corresponding pervasive diversity in software.
To achieve this requires integration of two forms. The first is across disciplines in sociology, economics, law and system architecture to provide broad alignment. This first form of integration is, of necessity, “soft” in the sense that it deals primarily with human activities for which there is no precise algorithm and where the engineering aim is to orient the initial phases of design. The second is between the sub-disciplines of computational science that already have inhabited these broader human areas with the aim of understanding them in a computational sense. This second form of integration is technically more precise but very diverse so the engineering aim is to select appropriate computational tools from the vast repertoire already provided (e.g. from distributed workflow, knowledge representation and ontology, agency, security, etc). This provides a challenging integration task for which there is no prospect of a single, optimal architecture. Fortunately, the social computer (like society) does not have to be correctly integrated first time but can be developed progressively buy “going from working to working” with social feedback brought in early to drive evolution.