page1
Attempting to recreate accurate human responses to stimuli is something that man has been working on since the dawn of computers. While doing so would require a lifetime of research and work, bits and pieces can be attempted by individuals. Using a survey format, this experiment hopes to produce a unique response to a stimuli based on information gained about the user. While alone, the ramification of this lab can perhaps draw broad conclusions about groups of people and how they respond, combined with other techniques of emulating human thought patterns, computers can become closer and closer to accurately representing a real human.
Human Cognitive Emulation
by Lee Rumpf
2006-2007 Period 3 TJHSST Computer Systems Techlab
-Abstract-
-Background and Related Studies-
This lab is designed to take in specific information from multiple users and eventually produce typecast that users can be put under. Using the typecast, a response to stimuli will be produced that hopefully matches what the user would do in real life.
Forsythe, C., Xavier, P. (2002). Human emulation: Progress toward realistic synthetic human agents. Proceedings of the 11th Conference on Computer-Generated Forces and Behavior Representation, Orlando, FL.257-266. http://www.sandia.gov/cog.systems/documents/Cgfpaper.pdf
Project Title: Extensible Knowledge-Based Agents for Simulation
An essential step in developing agent-based simulations for any application involves the representation of knowledge for the application domain. This project was undertaken with the objective to expand existing capabilities for human modeling and simulation to facilitate their application to new domain problems. Specifically, this project has emphasized the development of techniques for knowledge elicitation and modeling to support creation of individualized models of naturalistic decision making processes.
Forsythe, C. (2001). Toward a human emulator: A comprehensive representation of human cognition. Presentation at ATEDS/SA, March 13-15, San Diego CA. http://www.sandia.gov/cog.systems/documents/ForsytheATEDS.pdf
-Results (Expected)-
Thus far I have written a survey program that prompts the user with various stimuli. I have limited the responses that the user can give to about 10 different colors. Currently I am working on storing the entire data for all users in an external file. It has been recommended to me that I use mySQL to store the data and during the second quarter I will look into that. Right now my entire program is written in Python, simply because I like the language and speed isn't an issue for this program.
-Methods and Procedures-
def main():
answers = open('answers.txt', 'r')
array = []
array = answers.read().split("\n")
prompt = raw_input("new or name: ")
if prompt == "new":
prompt = raw_input("name: ")
outfile = open(prompt, 'w')
outfile.write(prompt+"\n")
else:
outfile = open(prompt, 'w')
outfile.write(prompt+"\n")
test = ["france","balls","home","salad","poodle","oar","classic rock","mary","door","math"]
count = 0
hard = dict(zip(test, [None]*len(test)))
for a in test:
count = count + 1
for k in range(len(array)-1):
temp = array[k].split(',')
ans = temp[count]
hard[a][k] = [ans]
answers.close()
Sandia National Labs have been experimenting with the same type of research that I am doing. I have contacts within the program and they have agreed to assist me in my project as it unfolds. Some of those projects are the following:
A sample of the main program. This, as well as a list of responses and some data storing code creates the survey. It produces the following:
rrumpf@othello:~/comsys/project$ python reader.py
file name: will
will
france - team americays/project$ python reader.py
balls - gold bond
home - is where the heart is
salad - dressing/comsys/project$ python reader.py
poodle - france
oar - ty otto
classic rock - acdc
mary - had a little lambproject$ python reader.py
door - frameill
math - test
france - team america
The optimal results would be to put each person in his or her own typecast, with similarities to and differences with other users. Then when a stimulus is given to the "computer" user the response will match, within a certain error bound, the reaction the user would give. More likely the user will be put with a group of other users who share similar traits with the user. Then the program will analyze the responses of all the users in the group and determine a response to a given stimuli. Chances are that this result will be less accurate, but more feasible.