Używasz ludzi jako komponentów do budowy komputera?

20

Ok, zanim zacznę, zdaję sobie sprawę, że jest to na marginesie tematu (przeczytałem Pomoc dotyczącą pytań na tej stronie), szczególnie, że nie jest to rzeczywisty problem. Jednak:

  1. Nie mogę znaleźć niczego istotnego w Google
  2. Z purystycznego punktu widzenia z pewnością musi należeć do informatyki?

W każdym razie, jeśli przekroczyłem granicę, przepraszam i witam Zamknięcie, ponieważ jestem zapalonym użytkownikiem innych stron SE, więc rozumiem problemy.

Odkładając na bok uwagi, oto: od dawna zastanawiałem się, czy można zbudować działający system komputerowy, wykorzystując ludzi jako dyskretne elementy logiczne, aby rozwiązać problemy, których poszczególni ludzie nie byliby w stanie rozwiązać w praktycznej skali czasowej. Wyobraźmy sobie na przykład, że na wyspie nie ma żadnych maszyn, które musiałyby pokonać kilka skomplikowanych liczb, aby uciec.

Wyobrażam sobie organizowanie ludzi tak, aby otrzymywali dane wejściowe od innych grup w systemie, podejmowali proste decyzje (być może decyzje binarne, a może nie) i przekazywali wyniki innym grupom.

Potem wyobrażam sobie, że można by opracować jakiś język programowania do sterowania przepływem danych i obliczeń, a język ten mógłby zostać użyty do rozwiązywania złożonych problemów bez indywidualnego zrozumienia ogólnego problemu.

Sądzę więc, że powyższe pytanie nie jest odpowiedzią na pytanie - ale czy ktoś wie o jakichkolwiek badaniach, książkach, artykułach lub czymkolwiek, co trzeba by osiągnąć, jakie rodzaje problemów można rozwiązać i potencjalnie rozwiązać, jaki język kontrolny mógłby wdrożyć i jak można rozbudować architekturę, aby rozwiązać bardziej złożone problemy?

Przypuszczam, że w gruncie rzeczy szukam czegokolwiek na „wyidealizowanych” atomowych (jak w samodzielnych) i standardowych jednostkach obliczeniowych, które można by dowolnie zaaranżować - myślę tylko w kategoriach ludzkich.

Uważam ten pomysł za fascynujący i pociągający. Chciałbym go wypróbować pewnego dnia i przekonać się, jaką wydajność można osiągnąć! Przepraszam za tagi, których użyłem, ponieważ szukałem tutaj tagi, szybko zdałem sobie sprawę, że nie mam pojęcia o właściwej terminologii tego, co myślę, chociaż jestem pewien, że istnieje ona w terenie ...

Marv Mills
źródło
17
Debugowanie byłoby naprawdę bolesne.
Raphael
7
Myślę, że odpowiedź na to pytanie jest jednoznaczna, że ​​jest to możliwe i faktycznie zostało zrobione od czasu innowacyjności linii montażowej w produkcji; tam ludzie są wykorzystywani jako elementy dyskretne, z których każdy wykonuje coś, co można rozsądnie nazwać „obliczeniem” wszystkiego, co gromadzi.
Patrick87
2
Modne hasło Google „przetwarzanie komputerowe”. Wokół jest dużo. Pamiętaj, że oryginalne komputery, w których kobiety w halach fabrycznych, które omijały kartki papieru z liczbami, z których każdy wykonuje krok obliczeń atomowych.
Raphael
1
W taki właśnie sposób akademia: ktoś publikuje pewien wgląd w problem, inni wykorzystują wyniki i bazują na nim.
rath
2
„Używanie ludzi jako komponentów do budowy komputera ...”… a po „włączeniu” program przechodzi test Turinga :-)
Vor

Odpowiedzi:

20

Właściwie do lat 50. XX wieku słowo komputer oznaczało człowieka, który dokonywał obliczeń arytmetycznych. Jedna (lub więcej) z (wielu) autobiografii Richarda Feynmana zawiera anegdoty o jego czasie w projekcie na Manhattanie , gdzie kierował grupą ludzkich komputerów . Aby zaaranżować grupę ludzi do wykonywania skomplikowanych obliczeń, nie zaczęliby od dyskretnych elementów logicznych, ale raczej kazali każdemu człowiekowi wykonać wiele operacji arytmetycznych, a następnie skoordynować wyniki (wraz z pewną kontrolą błędów). Jak zorganizować tego rodzaju duże obliczenia mogą być omówione w książkach metod numerycznych z lat czterdziestych i wczesnych pięćdziesiątych.

Pierwsza wersja Logic Theoreist autorstwa Newella, Simona i Shawa została zasymulowana przy użyciu ludzi w 1956 r. (Tańsza niż czas komputerowy). Później zdobyli nagrodę Turinga za podstawowy wkład w sztuczną inteligencję, psychologię ludzkiego poznania i przetwarzanie list (teoretyk logiki mógł być pierwszym programem, który wykorzystywał listy połączone do reprezentowania struktur danych). Doświadczenie to wpłynęło na późniejsze pomysły Simona na temat wschodzących zachowanie (patrz jego Science of the Artificial ).

Jak wskazano w komentarzach i innych odpowiedziach, pojawiła się nowa dyscyplina obliczeń opartych na ludziach , w której stosuje się różne zachęty, aby skłonić ludzi do wykonywania części większych obliczeń, w których te części dobrze wykorzystują ludzkie rozwiązywanie problemów lub wzorce uznanie. Jednym z przykładów jest reCaptcha , w którym użytkownicy muszą wprowadzić dwa słowa, aby udowodnić, że nie są botem, jeden zniekształcony obraz używany do rzeczywistego „dowodu”, a drugi rzeczywiste słowo ze zeskanowanej książki, które jest używane stworzyć cyfrową wersję książki. Innym przykładem jest Amazon Mechanical Turk, w którym firma może zlecić robotnikom ludzkim „mikroprocesory” za niewielkie sumy pieniędzy. Mechaniczny turk został użyty na przykład dozbieraj adnotacje na 250 000 obrazów do badań przetwarzania obrazu . Wydaje się, że kluczem jest rozbicie problemu na stos niezależnych elementów pracy, przy czym znaczna ilość redundancji została wykorzystana do zmniejszenia liczby błędów. (Np. Przypisujesz ten sam element pracy do 2 różnych ludzi, a następnie, jeśli udzielą sprzecznych odpowiedzi, przypisujesz element pracy do trzeciego człowieka, aby rozwiązać różnicę).

Wędrująca logika
źródło
1
Do tej pory skupiono się na wykorzystywaniu ludzi tam, gdzie komputery są słabe, np. W rozpoznawaniu obrazów. Czy możesz podać jakieś informacje na ten temat?
Raphael
2
Zobacz także When Computers Were Human , David Alan Grier. Książka obejmuje historię obliczeń od 1758 do 1986 roku i obejmuje takie rzeczy, jak pokój pełen kobiet, których NASA użyłaby do obliczeń rakiet, ponieważ nie ufały tym maszynom komputerowym, aby wszystko dobrze załatwić.
Brian S
2
Dziękuję za to. Właściwie jestem świadomy rzeczy z Feynman / Manhattan Project. Oczywiste jest, że można całkowicie modelować dziedzinę problemową i rozdzielić ją między grupę kalkulatorów ludzkich, aby w ten sposób rozwiązać określone równanie. Nie odnosi się to jednak do mojej opinii na temat języka kontrolnego, dlatego problem jest modelowany w tym języku, a następnie „wykonywany” przez system, co stanowi kolejny poziom abstrakcji. Chodzi o to, że ten sam system funkcjonalny może być następnie użyty do rozwiązania różnych problemów bez „ponownego instalowania”. Zdefiniuję podążaj za tymi referencjami
Marv Mills
@MarvMills „program” został prawdopodobnie zapisany w instrukcjach dla każdej z osób wykonujących obliczenia, ale wydaje się, że zainteresowanie takimi programami nastąpiło znacznie później. Być może niektórzy przeżyli w starych książkach lub raportach z analiz numerycznych ... ale nie googleable :-(
vonbrand
2
Podobał mi się Google Tech Talk on Human Computing autorstwa Luisa von Ahna. Ma kilka lat, ale ilustruje kilka kluczowych aspektów i motywacji. Proponowana przez niego gra polegająca na oznaczaniu obrazów jest naprawdę zabawna.
Raphael
1

Sądzę, że w pewnym sensie obecna technologia opracowywania dowodów i być może powiązane techniki syntezy programów polegają na symbiozie ludzi i komputerów, która nie jest daleko od przykładu z komputerów ludzkich z projektu Manhattan. Komputer zapewnia pewne kroki rozumowania i wykonuje wszystkie żmudne, choć trudne prowadzenie ksiąg rachunkowych, podczas gdy ludzie zapewniają kroki Aha, których komputer nie może (jeszcze?) Znaleźć.

Pamiętam stary system transformacji programu, w którym transformacje były programowane w określonym języku programowania. Gdy program zidentyfikuje sytuację, z którą nie może sobie poradzić, może przekazać kontrolę użytkownikowi, który miał zrobić wszystko, czego potrzeba ręcznie, za pomocą zinterpretowanych poleceń, a następnie przekazać kontrolę z powrotem do programu transformacji.

Babou
źródło
1

jak wskazują inne odpowiedzi, ludzie byli wykorzystywani jako komputery przed obliczeniami sprzętowymi (głównie do obliczania dużych tabel matematycznych publikowanych w tomach), i to jest pierwotne dosłowne znaczenie słowa „komputer”. w historii komputerów trend był odwrotny od obliczeń ludzkich do obliczeń sprzętowych, ponieważ ludzie są zasadniczo zawodni (i coraz bardziej niepotrzebni) do zadań niemal mechanicznych.

sieci społecznościowe zaowocowały jednak nowymi formami obliczeń opartych na ludziach, czyli „inteligencji zbiorowej” (CI). jest wiele przykładów. na przykład w przypadku stackexchange pytania „oceny” (pozytywne minus negatywne głosy) i „gorące pytania” oparte są na CI użytkowników stosu wymiany (wyrażone w głosowaniu). algorytmy znajdowania podobnych pozycji np. w Amazon na podstawie zachowań użytkowników są powiązane z CI. podobne algorytmy działają w serwisie Netflix, aby znaleźć podobne filmy na podstawie preferencji użytkownika (i ocen przesłanych przez użytkownika).

Google Pagerank jest zaprojektowany do pracy w oparciu o CI zakodowane we wzorcach linków (linkowanie na stronach internetowych jest ostatecznie oparte na ludzkich wyborach). Facebook wprowadza nowy algorytm wyszukiwania grafów, ściśle powiązany z CI. zwróć uwagę, że nawet znajomości danej osoby wyrażone w sieciach społecznościowych są powiązane z CI.

przykłady pojęć związanych z informatyką człowieka:

tak więc, jeśli chodzi o trend dalekiego zasięgu, ludzie jako komputery cyfrowe lub mechaniczne podupadają przez cały XX wiek aż do XXI wieku , ale kolektywna inteligencja bardzo rośnie, a także tanie komputery obliczeniowe i klastry obliczeniowe napędzane przez Prawo Moores .

vzn
źródło
-1

Jest to prawdziwe wyzwanie i ściśle związane z przepływem pracy. Ideą przepływu pracy jest utworzenie kolejki lub uporządkowanej lub niezamówionej listy zadań, które ludzie lub komputery muszą podjąć w dowolnym momencie, aby ukończyć większy proces, w którym mogą, ale nie muszą się martwić lub w ogóle o tym wiedzieć .

W efekcie będziesz mieć maszynę, która może coś zrobić i zwykle jest to główne wyzwanie i / lub cel dla przedsiębiorcy, głównie dlatego, że można zarobić pieniądze, jeśli możesz zautomatyzować coś, a następnie odejść od niego (jak maszyna).

Nieodłącznym problemem związanym z używaniem ludzi jest to, że popełniają więcej błędów lub nudzą się pracą. Zasadniczo jest to również powód, dla którego przedsiębiorcy próbują zastąpić części prawdziwych ludzi częściami mechanicznymi lub komputerowymi.

jwize
źródło
1
To nie wydaje się odpowiadać na pytanie, jak byś to robił z ludźmi. Oczywiście ludzie popełniają błędy, więc każdy system musiałby być w stanie je wykryć i poprawić.
David Richerby
Proces korporacyjny to nie to samo, co komputer (ogólnego przeznaczenia). Jest to raczej protokół komunikacyjny i harmonogram dystrybucji obciążenia dla niezależnych aktorów / komputerów.
Raphael