AgentSheets: Difference between revisions

The educational technology and digital learning wiki
Jump to navigation Jump to search
Line 10: Line 10:
== Architecture ==
== Architecture ==


'''AgentSheets''' is an [[end-user programming]] system.
'''AgentSheets''' is an [[end-user programming]] system to build simulation microworlds.
 
According to Repenning et al (2000) and Ioannidou (2003) AgentSheets can be summarized as follows:
 
; A visual programming environment
AgentSheets is a visual programming environment which combines
agents, spreadsheets and Java authoring technologies in a single medium.
Agents. Agents appear as small, movable pictures on the computer screen,
and have associated behaviors which define how they interact with their
environment. These behaviors are end-user programmable, and Agent-
Sheets features a number of end-user programming approaches (described
below), which allow users without a programming background to create
agents with complex behaviors.
 
; Spreadsheet-like organization
Spreadsheets. Agents are placed together in a grid, called an agentsheet or
worksheet, where they interact with one another. Similar to a spreadsheet,
the grid structure of a worksheet enables spatial communication between
elements in cells (e.g., \u201cseeing\u201d what\u2019s in an adjoining cell, or counting
the number of neighbors of a certain type, and responding appropriately).
Unlike spreadsheet cells, which are limited to numbers, text and formulae,
worksheet cells can contain any number of agents piled on top of one other.
Each agent is a unique object which can move around on the worksheet and
exhibit a variety of other behaviors.
 
; Agent programming
Visual AgenTalk (VAT) allows users to create behaviors for their agents
by dragging conditions and actions from command palettes into rules. The
palettes for conditions and actions include a wide variety of elements. For
example, VAT provides conditions that check the appearance of agents
and test the values of an agent\u2019s variables, and actions that set these variables,
make sounds, change the appearance of agents, destroy agents, and
create new agents.>
 
* AgentSheets' main programming language, called Visual AgenTalk (VAT), is a rule-based language allowing users to express agent behavior as IF-THEN rules containing conditions and actions. The VAT language is extensible. New conditions and actions can be added to the language to build more domain-oriented programming languages.
 
Rules in VAT are grouped into methods. The primary method for each
agent, called \u201cWhile Running,\u201d is invoked at each simulation clock tick.
When a method is invoked, its rules are tested in order, and the first rule
whose conditions are true is executed. Additional methods may be created
to allow users to subdivide the overall behavior into smaller tasks or to
respond to special triggers, such as keyboard input, or \u201cwhacking\u201d the
agent (i.e. selecting a hammer tool from the tool bar on the side of the
worksheet and clicking on the agent)
 
The style of programming provided by VAT is an expansion of graphical
rewrite rules in AgentSheets (Repenning, 1994), and KidSim/Cocoa
(Smith, 1996). We have aimed for what we call a tactile style, to help
learners play with the language and explore its functionality. Tactility is
used here not in a literal sense, but in the sense used by Papert to
explain the closeness of bricoleur programmers to their computational objects (Papert,
1993a). Visual AgenTalk extends Papert\u2019s framework with the notion that
tactility is not limited to objects that are programmed, such as Logo
turtles, but extends to the programming components themselves.
 
* The built-in repertoire of conditions and actions allows agents to perceive mouse clicks, sound and keyboard input, the existence of other agents, attribute values, messages, and even web page content. Agents can be programmed to act by moving, changing their appearance, playing sounds, playing video clips, computing values, "speaking" text through voice synthesis, sending messages to other agents, opening URLs and performing several other actions.
 
; Compilation into Java
 
Java authoring tools. The AgentSheets environment includes the
Ristretto technology that provides a simple way for users to turn their
simulations into Java applets and JavaBeans, which can be embedded into
web pages. This mechanism empowers users to create applications that can
be shared with others over the web, without having to learn Java programming.
 
== Educational usage ==
 
The AgentSheets projet is anchored in a [[constructionism | constructionist]] tradition. E.g. Iannidou (2003) starts by citing Papert: {{quotationbox | From its inception, the idea of constructionism (Papert, 1993b) has been intertwined with the expressive power of computing technology. The introduction of LOGO made it possible for children to create computational
structures that have conceptual depth and are capable of complex behaviors that can capture children's interest and imagination (Papert, 1980; Papert, 1993a).
 
More precisely, AgentSheets is  constructivist simulation design environment at
at the elementary and high school level, i.e. a kind of [[cognitive tool]]. {{quotation | Its fundemental aim is to explore the  use of technology as means to gain a deeper understanding of complex phenomena in math, science and social studies in ways not possible
without computers. Simulations can act as a kind of a thought amplifier
combining human capabilities with computer affordances. As part
of a learning process, a learner forms a hypothesis and expresses the
hypothesis in a simulation medium.
In the case of AgentSheets, ideas are represented as IF/THEN rules. Computers running simulations illustrate
the consequences of the rules defined by the learner. These illustrations, in turn, help the learner to comprehend complex causalities and may stimulate further investigation.
}}
 
The AgentSheets project aimed particularly to improve the relationship between constructionist activities and the mainstream classroom.
In practical terms, one major R&D focus was to engage students to create models or simulations of phenomena being studied in the classroom.
In support, Ioannidou (2003:64) quotes a study by the Educational Testing
Service (Wenglinsky, 1998) that found that students in classes which used
computer simulations to teach mathematics made significant gains on
standardized tests. In addition, they found that students scored significantly higher than did students in classes where computers were used for drill and practice.
 
{{quotation | Students in our studies learn about a phenomenon and represent their
knowledge in an animated graphical model, rather than simply watching
or manipulating a representation provided for them. Because the models
are related to other classwork, students work with concepts in the content
domain of the class, not just concepts about computers or programming,
to create the models. On the face of it, model creation should permit ready integration with
the classroom curriculum by drawing students into more in-depth study of
ideas presented as part of the standard curriculum. Despite this apparent
fit, there are substantial challenges involved in making simulation building
work in the classroom and with the curriculum.}} (Ioannidou 2003:64)
 
However, increased educational effectiveness comes at a cost. Ioannidou (2003:105) admit
that {{quotation | our experience has shown that while constructivist learning activities
are highly engaging, they are very demanding in terms of time and
resources. Teachers and students need to get trained on how to use tools.
Teachers need to become comfortable with the open nature of design
activities. Additionally, learning depth often comes at the cost of learning
breadth, which may conflict with anticipated learning goals defined in
today's curriculum.}}
 
=== AgentSheets in the classroom ===
 
AgentSheets is claimed to be interesting for a wide range of simulations, both in science and social science.
 
E.g. Repenning et al (2000) list:
* Collaborative learning in elementary schools, e.g. life sciences topics such as food webs and ecosystems by designing their own animals.
* Training, e.g. SimProzac patients can explore the relationships among Prozac, the neurotransmitter serotonin, and neurons.
* Educational games, e.g. a voting simulation explains concepts such as clustering, migration and stability of two party systems
* Interactive Illusations, e.g. how a TV works
* Interactive Story Telling: History students create interactive stories of historical events such as the Montgomery bus boycott.
* Scientific Modelling, e.g. The effects of microgravity onto E.coli bacteria are modelled by NASA.
* Non-Educational Games, e.g. the process of building a game will teach about algorithms
* Deconstruction Kits / Learning by taking apart: E.g. what makes a bridge stable?
 
=== Educational outcomes of using and building simulations ===
 
Repenning et al (2000:6.1-7.8):
 
; Simulations as learning tools
Students learn by ''building'' simulation
 
; Simulations as teaching tool
Students learn by ''explainging'' to others
 
; Simulations as collaboration-enabling tools




Line 20: Line 151:


== References ==
== References ==
* Ioannidou, A., Rader, C., Repenning, A., Lewis, C., & Cherry, G. (2003). Making Constructionism Work in the Classroom. International Journal of Computers for Mathematical Learning, 8(1), 63-108. International Journal of Computers for Mathematical Learning, 8, 1, 9/30/2003, Page 63, [http://dx.doi.org/10.1023/A:1025617704695 DOI 10.1023/A:1025617704695] {{ar}}


* Repenning, A., Ioannidou, A. and Ambach, J. (1998). Learn to Communicate and Communicate to Learn. Journal of Interactive Media in Education, 98 (7). [http://www-jime.open.ac.uk/98/7 HTML Hypertext] - [http://www-jime.open.ac.uk/98/7/repenning-98-7-paper.html HTML]
* Repenning, A., Ioannidou, A. and Ambach, J. (1998). Learn to Communicate and Communicate to Learn. Journal of Interactive Media in Education, 98 (7). [http://www-jime.open.ac.uk/98/7 HTML Hypertext] - [http://www-jime.open.ac.uk/98/7/repenning-98-7-paper.html HTML]
Line 28: Line 161:


; Other to explore
; Other to explore
* Repenning, A., & Ioannidou, A. (2004). Agent-Based End-User Development. Paper in the Communications of the ACM, September 2004, Volume 47, Number 9, 43-46.


* Repenning, A., A. Ioannidou, and J. Phillips, "Collaborative Use & Design of Interactive Simulations," Proceedings of Computer Supported Collaborative Learning Conference at Stanford (CSCL'99), 1999. [http://www.cs.colorado.edu/~ralex/papers/abstracts/cscl99.html abstract] - [http://www.cs.colorado.edu/~ralex/papers/PDF/CSCL99.pdf pdf]
* Repenning, A., A. Ioannidou, and J. Phillips, "Collaborative Use & Design of Interactive Simulations," Proceedings of Computer Supported Collaborative Learning Conference at Stanford (CSCL'99), 1999. [http://www.cs.colorado.edu/~ralex/papers/abstracts/cscl99.html abstract] - [http://www.cs.colorado.edu/~ralex/papers/PDF/CSCL99.pdf pdf]

Revision as of 15:22, 5 September 2006

Draft

Definition

AgentSheets are a kind of authoring kit for microworld.

  • “The AgentSheets environment is an agent-based Web authoring tool enabling a wide range of end users, ranging from children to professionals, to create their own SimCityTM-like interactive simulations, domain-oriented visual programming languages, knowbots, cellular automata, and games. At the the blink of an eye these simulations can be compiled by the Ristretto compiler directly into Java applets that can be embedded into web pages.” [1]
  • “From personal and information Agents to interactive demos, modifiable simulations to virtual game worlds, AgentSheets' unique user interface captivates people and draws them into a new relationship with technology. What can you do with it? Create interactive virtual worlds, modifiable simulations, training demos... and put them online fast with music, speech, video, and Java!” [2], retrieved 19:27, 4 September 2006 (MEST).

Architecture

AgentSheets is an end-user programming system to build simulation microworlds.

According to Repenning et al (2000) and Ioannidou (2003) AgentSheets can be summarized as follows:

A visual programming environment

AgentSheets is a visual programming environment which combines agents, spreadsheets and Java authoring technologies in a single medium. Agents. Agents appear as small, movable pictures on the computer screen, and have associated behaviors which define how they interact with their environment. These behaviors are end-user programmable, and Agent- Sheets features a number of end-user programming approaches (described below), which allow users without a programming background to create agents with complex behaviors.

Spreadsheet-like organization

Spreadsheets. Agents are placed together in a grid, called an agentsheet or worksheet, where they interact with one another. Similar to a spreadsheet, the grid structure of a worksheet enables spatial communication between elements in cells (e.g., \u201cseeing\u201d what\u2019s in an adjoining cell, or counting the number of neighbors of a certain type, and responding appropriately). Unlike spreadsheet cells, which are limited to numbers, text and formulae, worksheet cells can contain any number of agents piled on top of one other. Each agent is a unique object which can move around on the worksheet and exhibit a variety of other behaviors.

Agent programming

Visual AgenTalk (VAT) allows users to create behaviors for their agents by dragging conditions and actions from command palettes into rules. The palettes for conditions and actions include a wide variety of elements. For example, VAT provides conditions that check the appearance of agents and test the values of an agent\u2019s variables, and actions that set these variables, make sounds, change the appearance of agents, destroy agents, and create new agents.>

  • AgentSheets' main programming language, called Visual AgenTalk (VAT), is a rule-based language allowing users to express agent behavior as IF-THEN rules containing conditions and actions. The VAT language is extensible. New conditions and actions can be added to the language to build more domain-oriented programming languages.

Rules in VAT are grouped into methods. The primary method for each agent, called \u201cWhile Running,\u201d is invoked at each simulation clock tick. When a method is invoked, its rules are tested in order, and the first rule whose conditions are true is executed. Additional methods may be created to allow users to subdivide the overall behavior into smaller tasks or to respond to special triggers, such as keyboard input, or \u201cwhacking\u201d the agent (i.e. selecting a hammer tool from the tool bar on the side of the worksheet and clicking on the agent)

The style of programming provided by VAT is an expansion of graphical rewrite rules in AgentSheets (Repenning, 1994), and KidSim/Cocoa (Smith, 1996). We have aimed for what we call a tactile style, to help learners play with the language and explore its functionality. Tactility is used here not in a literal sense, but in the sense used by Papert to explain the closeness of bricoleur programmers to their computational objects (Papert, 1993a). Visual AgenTalk extends Papert\u2019s framework with the notion that tactility is not limited to objects that are programmed, such as Logo turtles, but extends to the programming components themselves.

  • The built-in repertoire of conditions and actions allows agents to perceive mouse clicks, sound and keyboard input, the existence of other agents, attribute values, messages, and even web page content. Agents can be programmed to act by moving, changing their appearance, playing sounds, playing video clips, computing values, "speaking" text through voice synthesis, sending messages to other agents, opening URLs and performing several other actions.
Compilation into Java

Java authoring tools. The AgentSheets environment includes the Ristretto technology that provides a simple way for users to turn their simulations into Java applets and JavaBeans, which can be embedded into web pages. This mechanism empowers users to create applications that can be shared with others over the web, without having to learn Java programming.

Educational usage

The AgentSheets projet is anchored in a constructionist tradition. E.g. Iannidou (2003) starts by citing Papert: {{quotationbox | From its inception, the idea of constructionism (Papert, 1993b) has been intertwined with the expressive power of computing technology. The introduction of LOGO made it possible for children to create computational structures that have conceptual depth and are capable of complex behaviors that can capture children's interest and imagination (Papert, 1980; Papert, 1993a).

More precisely, AgentSheets is constructivist simulation design environment at at the elementary and high school level, i.e. a kind of cognitive tool. “Its fundemental aim is to explore the use of technology as means to gain a deeper understanding of complex phenomena in math, science and social studies in ways not possible without computers. Simulations can act as a kind of a thought amplifier combining human capabilities with computer affordances. As part of a learning process, a learner forms a hypothesis and expresses the hypothesis in a simulation medium. In the case of AgentSheets, ideas are represented as IF/THEN rules. Computers running simulations illustrate the consequences of the rules defined by the learner. These illustrations, in turn, help the learner to comprehend complex causalities and may stimulate further investigation.”

The AgentSheets project aimed particularly to improve the relationship between constructionist activities and the mainstream classroom. In practical terms, one major R&D focus was to engage students to create models or simulations of phenomena being studied in the classroom. In support, Ioannidou (2003:64) quotes a study by the Educational Testing Service (Wenglinsky, 1998) that found that students in classes which used computer simulations to teach mathematics made significant gains on standardized tests. In addition, they found that students scored significantly higher than did students in classes where computers were used for drill and practice.

“Students in our studies learn about a phenomenon and represent their knowledge in an animated graphical model, rather than simply watching or manipulating a representation provided for them. Because the models are related to other classwork, students work with concepts in the content domain of the class, not just concepts about computers or programming, to create the models. On the face of it, model creation should permit ready integration with the classroom curriculum by drawing students into more in-depth study of ideas presented as part of the standard curriculum. Despite this apparent fit, there are substantial challenges involved in making simulation building work in the classroom and with the curriculum.” (Ioannidou 2003:64)

However, increased educational effectiveness comes at a cost. Ioannidou (2003:105) admit that “our experience has shown that while constructivist learning activities are highly engaging, they are very demanding in terms of time and resources. Teachers and students need to get trained on how to use tools. Teachers need to become comfortable with the open nature of design activities. Additionally, learning depth often comes at the cost of learning breadth, which may conflict with anticipated learning goals defined in today's curriculum.”

AgentSheets in the classroom

AgentSheets is claimed to be interesting for a wide range of simulations, both in science and social science.

E.g. Repenning et al (2000) list:

  • Collaborative learning in elementary schools, e.g. life sciences topics such as food webs and ecosystems by designing their own animals.
  • Training, e.g. SimProzac patients can explore the relationships among Prozac, the neurotransmitter serotonin, and neurons.
  • Educational games, e.g. a voting simulation explains concepts such as clustering, migration and stability of two party systems
  • Interactive Illusations, e.g. how a TV works
  • Interactive Story Telling: History students create interactive stories of historical events such as the Montgomery bus boycott.
  • Scientific Modelling, e.g. The effects of microgravity onto E.coli bacteria are modelled by NASA.
  • Non-Educational Games, e.g. the process of building a game will teach about algorithms
  • Deconstruction Kits / Learning by taking apart: E.g. what makes a bridge stable?

Educational outcomes of using and building simulations

Repenning et al (2000:6.1-7.8):

Simulations as learning tools

Students learn by building simulation

Simulations as teaching tool

Students learn by explainging to others

Simulations as collaboration-enabling tools


Links

References

  • Ioannidou, A., Rader, C., Repenning, A., Lewis, C., & Cherry, G. (2003). Making Constructionism Work in the Classroom. International Journal of Computers for Mathematical Learning, 8(1), 63-108. International Journal of Computers for Mathematical Learning, 8, 1, 9/30/2003, Page 63, DOI 10.1023/A:1025617704695 (Access restricted)
  • Repenning, A., Ioannidou, A. and Ambach, J. (1998). Learn to Communicate and Communicate to Learn. Journal of Interactive Media in Education, 98 (7). HTML Hypertext - HTML
  • Repenning, A., Ioannidou, A., & Zola, J. (2000). AgentSheets: End-User Programmable Simulations. Journal of Artificial Societies and Social Simulation, 3(3) HTML
  • Repenning, A., "AgentSheets®: an Interactive Simulation Environment with End-User Programmable Agents," Interaction 2000, Tokyo, Japan, 2000 PDF
Other to explore
  • Repenning, A., & Ioannidou, A. (2004). Agent-Based End-User Development. Paper in the Communications of the ACM, September 2004, Volume 47, Number 9, 43-46.
  • Repenning, A., A. Ioannidou, and J. Phillips, "Collaborative Use & Design of Interactive Simulations," Proceedings of Computer Supported Collaborative Learning Conference at Stanford (CSCL'99), 1999. abstract - pdf
  • Repenning, A., and Ambach, J. (1997). The Agentsheets Behavior Exchange: Supporting Social Behavior Processing. CHI 97, Conference on Human Factors in Computing Systems, Extended Abstracts, (Atlanta, Georgia), 26-27. ACM Press.
  • Repenning, A., and Ioannidou, A. (1997). Behavior Processors: Layers between End-Users and Java Virtual Machines. Proceedings of the 19967IEEE Symposium of Visual Languages, (Capri, Italy). Computer Society.
  • Repenning, A., Rausch, M., Ioannidou, A., and Phillips, J. (1998). Using Agents as a Currency of Exchange between End-Users. WebNet, (Orlando, Florida). Association for the Advancement of Computing in Education (AACE).
  • Repenning, A., and Sumner, T. (1994). Programming as Problem Solving: A Participatory Theater Approach. Workshop on Advanced Visual Interfaces, (Bari, Italy), 182-191.
  • Repenning, A., and Sumner, T. (1995). Agentsheets: A Medium for Creating Domain-Oriented Visual Languages. IEEE Computer, 28, (3), 17-25.