Write Less Code with Algebra!

10:30 AM - 10:55 AM on July 16, 2016, Room CR7

Gene Callahan

Audience level:
intermediate
Watch:
https://www.youtube.com/watch?v=3mNX29IEl3A

Description

This talk will describe an ongoing effort to treat agent interactions as abstract algebraic structures. The primary motivations for this attempt it are to increase code reuse, and ultimately to enable the creation of agent-based models through the filling in of forms, choosing among various module operations and chaining them together to produce customized agent behavior.

Abstract

This talk will describe an ongoing effort to treat agent interactions as an abstract algebraic structure. For the time being, the structure we have chosen to use is the module, which is described in detail in the outline of this talk. It is quite possible that, as time goes on, we shall want to make our axioms more restrictive, and assume we are operating on a field, but we will only do this if it proves fruitful. (A module is a generalization of a vector space, in that it operates over a ring, rather than more restrictively, over a field.) The primary motivations for this attempt it are to increase code reuse, and ultimately to enable the creation of agent-based models through the filling in of forms, choosing among various module operations and chaining them together to produce customized agent behavior. So far, the results have been promising, although there is much work to be done.