Human-based computation: Difference between revisions

Content deleted Content added
No edit summary
No edit summary
Line 1:
In computer science, a technique when an algorithm or computational process relies on human abilities to perform its function, e.g. to solve a certain computational problem or a set of problems. This approach explores differences in abilities and alternative costs between humans and computer agents to achieve symbiotic human-computer interaction.
 
In traditional computation, a human presents a computer with a problem and later receives the result of computation, a solution. In human-based computation, the roles are reversed: computer asks a person or often many people to solve a problem, collects and integrates their solutions. Precursors of this idea are interactive programs requesting input from a user, e.g. asking a confirmation to delete a file. However, this concept in its explicit form appeared at the intersection of computer graphics and evolutionary computation. [Sims 91] used human visual perception and esthetic ability to implement evaluation function in evolutionary programming application and evolve pieces of graphic art this way. The crucial difference here is in agency: Sim's program was no longer an agent of its user, but rather a coordinator of many human evaluators who became agents of the program. Human-based genetic algorithm is a logical extension of this approach where human also can contribute their innovative solutions into the process and thus have more control over the functions they are performing.
 
The following table from [Kosorukoff 00] uses the evolutionary computation model to describe four classes of computation, three of which rely on humans in some role. The classification is in terms of the roles (innovation or selection) performed in each case by humans and computational processes.