Login  Register

Re: The Unreasonable Effectiveness of Mathematics in the Natural Sciences

Posted by Owen Densmore on Apr 27, 2009; 6:42pm
URL: http://friam.383.s1.nabble.com/The-Unreasonable-Effectiveness-of-Mathematics-in-the-Natural-Sciences-tp2714601p2727848.html

Just to clarify .. the reason I found the article compelling is due to  
my tendency towards mathematical formalism.

As an example, we spent quite a while looking at formalizing ABM and  
Steve's wonderful "Complexity Babble".  We took two different paths in  
our wandering.  One was to try to nail down good definitions for the  
various terms in english sentences.  The other was a set-theoretic  
definition, reminiscent of Machine & Grammars in computer science.  I  
append some notes, not sure if they're the latest.

We seemed to be getting a bit more traction with the latter, at least  
in my opinion.  For example, both initial conditions, constraints, and  
boundary conditions were more easily defined set-theoretically than in  
words.  This could easily be a bias amongst the participants.

     -- Owen

A Agent Based Model (ABM) is a four-tuple (A,e,s0,S)
- A: set of "agent", which in turn consists of
   - AV: a finite set of variables, which in turn have a bounded
     range of values they can take on.
   - AS: the Step Function for this agent
- E: an enumeration function which can visit, and optionally modify,  
each agent.
- s0: the initial state of all agent variables
- S: the Step Function which uses E to call each Agent's AS step  
function.

Notes on the above:
0 - We agreed to discontinue, for the present, use of concept names  
that are easily confused with the same name in other sciences/
domains.  If the name is compelling enough, preceding it with the work  
Agent or Model would be OK.  Ex: Agent or Model space to describe the  
allowed values of the set of variables within an entity.

1 - We agreed on a simple definition of the modeling environment, even  
removing the notion of patches I proposed earlier.  An agent (or  
entity) simply contains a set of variables, each of which has a set of  
possible values.  And there is a list which lets an enumeration of the  
agents.  Thus we've reduced the scope to:
   - An agent has a set of variables, and each variable has a set of  
allowed values.
   - A way to enumerate the agents is provided.  A list is fine.
   - A procedure runs across the agents periodically.
   - There apparently is no need for patches yet.
   - Ditto for global variables
This minimalist definition will be extended only when it is necessary  
to do so.  (Thus we could have a model hierarchy similar to computing:  
Finite State Automata, Push Down Automata, and Turing Machines, with  
the parallel languages they recognize: Regular Expressions, Context  
Free Languages, and Lambda Calculus.)

2 - The cartesian product of the set of agent variables forms the  
Agent Space (or any other name we'd like).  We may need to distinguish  
between the full cartesian product, and a reduction of that set due to  
the model's rules.  This brought up the discussion of two reductions:
   - Reductions brought about by the initial conditions of the model  
(i.e. all agents at 0,0 or spread out with a uniform random  
distribution over the range of x,y values.)  These may create a set of  
values within the full cartesian product that can not occur.
   - Reductions brought about by boundary conditions.  These may not  
be an issue, they can simply be a reduction of the scope of one or  
more variables, but this needs to be decided upon.

This gives us a reasonable set theoretic starting point: a set of  
agents with a set of variables with a restricted set of allowed  
values, along with a procedure that can enumerate over the agents to  
step the agents forward in time.


============================================================
FRIAM Applied Complexity Group listserv
Meets Fridays 9a-11:30 at cafe at St. John's College
lectures, archives, unsubscribe, maps at http://www.friam.org