You are here

Key Topics

Buyer and Seller Interaction at Farmers' Markets

Buyer - seller interaction.GIF11.28 KB

I have been trying to figure out the Metamodel presented by Jim yesterday on this website. I have tried to work through a simple model of an interaction between a buyer and seller at a farmers' market; it is shown below in the attached document. I am certain that this is not precisely how the interaction would be represented in our ABM program; any thoughts on how it should be altered? I want to make sure I have a simple interaction down before I move on to modeling larger environments, such as the entire farmers' market.

LFEGame Model - The Logical View Introduction

Click to view The LFEGame Model - Logical ViewClick to view The LFEGame Model - Logical ViewWelcome to the Introduction to the first mini-book, Local Food Economy Game - Logical View, in the Local Food Economy Game Model Repository. This model will guide and constrain our design and implementation of the agent-based simulation model.

This general class model is more accurately described as a metamodel. A metamodel is a model used to build other models. That is, it is a model that prescribes how to specify models that comply with its general architecture and constraints on the relationships between allowable model elements. "Allowable" in this sense means that the element is somehow derived from and related to an element in the metamodel.

A metamodel can be used two ways. It may be used ro guide development of new models built "from scratch" as solutions to a problem or design need. Or it can be used as a specification to guide the selection of technology candidates to be used in implementation of the proposed solution. We will, for example, take each of the agent-based simulation technology platforms that Jelal has identified through his web research and assess its features and capabilities in light of its ability to express models that satisfy our metamodel.

If we are lucky, we will find a free or affordable, easy-enough-to-use agent-based simulation platform that we can use to build our LFEGame model. In the best of all cases, the technology selected will have been developed by researchers who share a similar view of how agent-based simulation software should be designed and implemented. All we'd need to do in this case is use the supplied platform to build our LFEGame exploratory learning environment.

But this "best of all worlds" situation is not likely to happen. It is more likely that we will find some agent-based simulation framework that comes close to our requirements but is missing some vital pieces. In this case, we "stand on the sholders of giants" as the saying goes in research circles. We'll design and build extensions to the selected platform. In sucn a case, we reduce the time, energy and expense of our project by leveraging existing technologies.

Our worst case scenario is that we find nothing among the agent-based simulation technologies available that embodies models the same that we look at them as reflected in our metamodel. In this case, we'd be stuck with selecting a development platform and completely "rolling our own."

From what I have seen, however, we're not likely to need to resort to this low a level of development.

Our next steps will be along two fronts:

  • Create a LFEGame Model Element Scrapbook and start brainstorming and gathering specifications for elements that are candidates for making it into our model.
  • Survey the Agent-based Simulatiom software technologies and narrow the list of platforms that can reasonable be used to buld the LFEGame model.

In addition to these general next steps, I am going to develop an HTML-based, non-PDF version of the LFEGame General Class Model so it can easily be viewed and commented upon on-line.

--Sohodojo Jim--

Directory of agent-based modeling links

Located here is a directory of links to applications of agent-based modeling, arranged by subject area. Of greatest importance to us is the economics section, which includes such projects as "artificial life simulation of the textile/apparel market," and "agent based simulation of the hotelling game." The page is put together by Craig Reynolds.

A simple introduction to agent-based modeling

For those who are unfamiliar with agent-based modeling (ABM), here is an easy-to-understand introduction to the subject. It is a list of answers to frequently asked questions about ABM, entitled "Agent-based modeling of complex, adaptive systems." It explains how agent-based modeling allows these systems to be modeled, and why modeling is a useful tool for understanding these systems.

Some articles on agent-based simulation

Just to update on some of the work I've been doing, here and here are links to a couple articles I've read about agent-based simulation that I did not find worthy of individual write-ups as they are not particularly useful to our project. The first article, by Robert Axelrod, presents a walk-through for those who plan to begin an agent-based simulation project, but does not really advance any new ideas for us. The article I've linked to is part of a larger publication of Axelrod's, called "The Complexity of Cooperation: Agent-Based Models of Competition and Collaboration." The second article is entitled "Agent-Based Computational Economies. It is more or less a recitation of ideas put forth by Leigh Tesfatsion; as such, I do not think it is a necessary read in light of our intensive exploration of Tesfatsion's work.

Agent-Based Computational Economics

In addition to the multitude of agent-based computational economics on Leigh Tesfatsion's website, there is also an article on the subject here, written by Denis Phan. Will post more as I get through the article...

A few more agent-based simulation platforms

Moduleco is a "modular "multi-agent" platform, designed for to simulate markets and organizations, social phenomenons and population dynamics."

In addition to being a resource for agent-based modeling information, SwarmWiki is the home of Swarm, one of the original agent-based simulation programs. Swarm is a "multi-agent software platform for the simulation of complex adaptive systems. In the Swarm system the basic unit of simulation is the swarm, a collection of agents executing a schedule of actions. Swarm supports hierarchical modeling approaches whereby agents can be composed of swarms of other agents in nested structures. Swarm provides object oriented libraries of reusable components for building models and analyzing, displaying, and controlling experiments on those models." An in-depth description of Swarm can be found here

The CORMAS programming environment is "oriented towards the building of simulation models, with a specificity in the domain of natural-resources management. It provides a framework for developing simulation models of coordination modes between individuals and groups who jointly exploit the resources."

Agent-Based Simulation Application: The US Air Force

SEAS, the US Air Force's "Multi-Agent Theater Operations Simulation," is a further example of the broad ranges of uses for agent-based simulation. According to the SEAS website:

The System Effectiveness Analysis Simulation (SEAS) is a government-owned, military utility analysis tool sponsored by Air Force Space Command, Space and Missile Systems Center, Directorate of Developmental Planning (SMC/XD). SEAS has been in development for over 10 years and was designed specifically to give military operations research analysts and decision makers a flexible means to quickly explore new warfighting capabilities; in particular, those provided by Space and C4ISR systems.

SEAS represents the latest in analytic simulation technology and offers a powerful agent-based modeling and simulation environment in which small-to large-scale joint warfighting scenarios can be constructed and explored to quantify the effectiveness of various system designs, architectures, and concept of operations (CONOPS). The ability to represent networked military units and platforms reacting and adapting to perception-based scenario dynamics in a 3-D physics-based Battlespace, makes SEAS ideally suited for exploring effects-based operations, network centric warfare, and transformational warfighting concepts.

"Agent-based modeling: Methods and techniques for simulating human systems"

Located here is a very informative article about agent-based modeling (ABM), including information about what ABM is, the benefits of using ABM, and how ABM has been used in the past and will be used in the future. The article is written by Eric Bonabeau, and is from a May 14, 2002 issue of PNAS (Proceedings of the National Academy of Sciences of the United States of America). Some important passages from the article are presented below.

What is Agent-Based Modeling?

In agent-based modeling (ABM), a system is modeled as a collection of autonomous decision-making entities called agents. Each agent individually assesses its situation and makes decisions on the basis of a set of rules. Agents may execute various behaviors appropriate for the system they represent – for example, producing, consuming, or selling. Repetitive competitive interactions between agents are a feature of agent-based modelingAt the simplest level, an agent-based model consists of a system of agents and the relationships between them. Even a simple agent-based model can exhibit complex behavior patterns and provide valuable information about the dynamics of the real-world system that it emulates. In addition, agents may be capable of evolving, allowing unanticipated behaviors to emerge.

ABM is a mindset more than a technology. The ABM mindset consists of describing a system from the perspective of its constituent units.

Why Agent-Based Modeling?

Whether one is attempting to describe a traffic jam, the stock market, voters, or how an organization works, ABM makes the model seem closer to reality. For example, it is more natural to describe how shoppers move in a supermarket than to come up with the equations that govern the dynamics of the density of shoppersKnowing the actual shopping basket of a customer makes it possible to create a virtual agent with that shopping basket rather than a density of people with a synthetic shopping basket computed from averaging over shopping data.

This article also contains several examples of projects that have used agent-based modeling technology, some of which are posted separately on this website.

A question motivated by agent-based modeling articles I've been reading...

After reading several articles on agent-based modeling, I am struggling to answer a question that I've been pondering: How do you know that your agent-based model has a complete set of information?

When modeling customer behavior at a supermarket or amusement park, traders' behavior at NASDAQ, driver behavior in traffic, or any other human phenomenon, there are countless variables of human behavior that must be taken into account. When these models form a conclusion about how people act, and how theoretical changes in the structure of an institutional will affect human actions, how do they know that they have not left out a crucial piece of our thought processes that may be lost among the myriad of processes that have already been accounted for.

For example, in the supermarket model that has been discussed in one of my earlier blogs, a supermarket owner makes management decisions based upon his judgement of human action simulated by the model. But how does he know that, once entering a supermarket, shoppers' behavior won't be influenced by a factor that has not been accounted for -- for example, the shopper is in a hurry, or the shopper prefers some brands over others. If these "forgotten factors" become prevalent enough, the findings of the model could become useless.

It seems to me that unless a model really strives to replicate human behavior in its entirety, its findings can be called into question.

Agent-based Modeling Project: NASDAQ

A bit about NASDAQ's use of agent-based modeling:

To evaluate the impact of tick-size reduction, NASDAQ has been using an agent-based model that simulates the impact of regulatory changes on the financial market under various conditions. The model allows regulators to test and predict the effects of different strategies, observe the behavior of agents in response to changes, and monitor developments, providing advance warning of unintended consequences of newly implemented regulations faster than real time and without risking early tests in the real marketplace. In the agent-based NASDAQ model, market maker and investor agents (institutional investors, pension funds, day traders, and casual investors) buy and sell shares by using various strategies. The agents' access to price and volume information approximates that in the real-world market, and their behaviors range from very simple to complicated learning strategies. Neural networks, reinforcement learning, and other artificial intelligence techniques were used to generate strategies for agents. This creative element is important because NASDAQ regulators are especially interested in strategies that have not yet been discovered by players in the real market, again to approach their goal of designing a regulatory structure with as few loopholes as possible, to prevent abuses by devious players.

Quote from

Use of agent-based simulation: Supermarket

The following passage describes the simulation technology used in SIMSTORE SIMSTORE is based on a real supermarket; it is intended to allow both buyers and sellers to see how they can minimize or maximize the time they spend in the store.

Bilge, Venables, and Casti have developed an agent-based model of a supermarket. SIMSTORE is a model of a real British supermarket, the Sainsbury's store at South Ruislip in West London. The agents in SIMSTORE are software shoppers armed with shopping lists. They make their way around the silicon store, picking goods off the shelves according to rules such as the nearest-neighbor principle: "Wherever you are now, go to the location of the nearest item on your shopping list." Using these rules, SIMSTORE generates the paths taken by customers, from which it can calculate customer densities at each location.

It is also possible to link all points visited by, say, at least 30% of customers to form a most popular path. An optimization algorithm can then change where in the supermarket different goods are stacked and so minimize, or maximize, the length of the average shopping path. Shoppers, of course, do not want to waste time, so they want the shortest path. But the store manager would like to have them pass by almost every shelf to encourage impulse buying. So there is a dynamic tension between the minimal and maximal shopping paths. This model was originally aimed at helping Sainsbury's to redesign its stores to generate greater customer throughput, reduce inventories, and shorten the time that products are on the shelves.

Quote from

Another interesting use of agent-based modeling: Theme parks

This paragraph describes the construction and uses of an agent-based model of an amusement park, used to maximize the uses of all rides in the park.

Another application of ABM to flow management is the simulation of customer behavior in a theme park or supermarket. The collective patterns generated by thousands of customers can be extremely complex as customers interact: for example, how long one waits at an attraction in a theme park depends on other people's choices. A major theme park resort company was thinking about how to improve adaptability in labor scheduling, but knew that this depended on knowing more about the optimal balance of capacity and demand. Axtell and Epstein developed ResortScape (13), an agent-based model of the park that provides an integrated picture of the environment and all of the interacting elements that come into play in such a resort. The model provides a fast in silico way for managers to identify, adjust, and watch the impact of any number of management levers such as:

  • When or whether to turn off a particular ride.
  • How to distribute rides per capita throughout the park space.
  • What is the tolerance level for wait times.
  • When to extend operating hours.

In the simulation, agents represent a realistic and changeable mix of both supply (attractions, shops, food concessions) and demand (visitors with different preferences) elements of a day at the park. Leveraging existing resources and data, such as customer surveys, segmentation studies, queue timers, people counters, attendance estimates, and capacity figures, the model generates information about guest flow. Users can design and run an infinite number of scenarios to study the dynamics of the park space, test the effectiveness of various management decisions, and track visitor satisfaction throughout the day.

Quote from

An interesting use of agent-based modeling

The following paragraph talks about TRANSIMS, an interesting application of agent-based simulation technology:

A team from LANL's Technology and Safety Assessment Division has developed a traffic simulation software package to create products that can be deployed to metropolitan planning agencies nationwide. The TRansportation ANalysis SIMulation System (TRANSIMS) ABM package provides planners with a synthetic population's daily activity patterns (such as travel to work, shop, and recreation, etc.), simulates the movements of individual vehicles on a regional transportation network, and estimates air pollution emissions generated by vehicle movements. Travel information is derived from actual census and survey data for specific tracts in target cities, providing a more accurate sense of the movements and daily routines of real people as they negotiate a full day with various transportation options available to them. TRANSIMS is based on (and contributes to the further development of) advanced computer simulation codes developed by Lawrence Livermore National Laboratory for military applications. TRANSIMS models create a virtual metropolitan region with a complete representation of the region's individuals, their activities, and the transportation infrastructure. Trips are planned to satisfy the individuals' activity patterns. TRANSIMS then simulates the movement of individuals across the transportation network, including their use of vehicles such as cars or buses, on a second-by-second basis. This virtual world of travelers mimics the traveling and driving behavior of real people in the region. The interactions of individual vehicles produce realistic traffic dynamics from which analysts using TRANSIMS can estimate vehicle emissions and judge the overall performance of the transportation system. Previous transportation planning surveyed people about elements of their trips such as origins, destinations, routes, timing, and forms of transportation used, or modes. TRANSIMS starts with data about people's activities and the trips they take to carry out those activities, then builds a model of household and activity demand. The model forecasts how changes in transportation policy or infrastructure might affect those activities and trips. TRANSIMS tries to capture every important interaction between travel subsystems, such as an individual's activity plans and congestion on the transportation system. For instance, when a trip takes too long, people find other routes, change from car to bus or vice versa, leave at different times, or decide not to engage in a certain activity at a given location. Also, because TRANSIMS tracks individual travelers – locations, routes, modes taken, and how well their travel plans are executed – it can evaluate transportation alternatives and reliability to determine who might benefit and who might be adversely affected by transportation changes.

Quote from

Agent based simulation of artifical electricity markets

Located here is an article about a program designed to simulate artifical electricity markets. In a software program called Power Agents, consumers and producers are modeled as "optimizing goal-seeking" agents in a an artificial electricy distribution market. Consumers respond to price changes by maximizing their subjective valuation of the electrical services provided.

A similar program could give us the very basics of what we are looking for--one could see how independent, utility-maximizing agents respond to a change in price of certain foods, because of, say, a change in where the food comes from.


Given the positive reviews of the agent-based modeling platform NetLogo contained in the article "Agent-Based Simulation Platforms: Review and Development Recommendations" (see my earlier blog about this article), it is worthwhile to add a direct link to NetLogo. From this page, one can read about and download the program. Once downloaded, one can play around with the sample models that come along with NetLogo (more on this later).

Agent-Based Modeling Resources

Thus far, the two best resources I've found for agent-based modeling are:

Integrated Development Environments: Eclipse

Several of the articles that I've been reading about Agent-Based Simulation have referenced Integrated Development Environments (IDEs)--in particular, Eclipse--as a tool for constructing simulation environments. "They offer such benefits as editors that automatically format code, finding and helping fix mistakes, automating common tasks such as writing import statements and getter and setter methods, and debuggers that let you step through a code's execution to find mistakes and understand what your model is doing" ( Eclipse, specifically, "is an open source community whose projects are focused on providing an extensible development platform and application frameworks for building software" (

By the way, the Component Builder for PlatBox is based on Eclipse software.

An article comparing five agent-based simulation platforms

Here is an article entitled "Agent-based Simulation Platforms: Review and Development Recommendations," written by Steven F. Railsback, Steven L. Lytinen, and Stephen K. Jackson. This article compares five agent-based simulation platforms: NetLogo, MASON, Repast, Objective-C Swarm, and Java Swarm. The five platforms were reviewed by implementing example models in each. Some important findings from this study include:

  • "Swarm was designed as a general language and toolbox for ABMs, intended for
    widespread use across scientific domains. Swarm's developers started by laying out
    a general conceptual approach to agent-based simulation software. Key to Swarm is
    the concept that the software must both implement a model and, separately, provide
    a virtual laboratory for observing and conducting experiments on the model. Another
    key concept is designing a model as a hierarchy of "swarms", a swarm being a group
    of objects and a schedule of actions that the objects execute. One swarm can contain
    lower-level swarms whose schedules are integrated into the higher-level swarm's; simple
    models have a lower-level "model swarm" within an "observer swarm" that attaches
    observer tools to the model. The software design philosophy appears to have been to
    include software that implements Swarm's modeling concepts along with general tools
    likely to be useful for many models, but not to include tools specific to any particular
    domain. Swarm was designed before Java's emergence as a mature language. One
    reason for implementing Swarm in Objective-C was that this language's lack of strong
    typing (in contrast to, e.g., C++) supports the complex-systems philosophy of lack of
    centralized control; e.g., a model's schedule can tell a list of objects to execute some
    action without knowing what types of object are on the list. Swarm uses its own data
    structures and memory management to represent model objects; one consequence is
    that Swarm fully implements the concept of "probes": tools that allow users to monitor
    and control any simulation object, no matter how protected it is, from the graphical
    interface or within the code."
  • "Java Swarm was designed to provide, with as little change as possible, access to Swarm's Objective-C library from Java. Java Swarm was motivated by a strong demand among Swarm users for the ability to write models in Java, not by the objective of providing Swarm's capabilities as cleanly and efficiently as possible in Java. Java Swarm therefore simply allows Java to pass messages to the Objective-C library, with work-arounds to accommodate Java's strong typing."
  • "Repast development appears to have been driven by several objectives. The initial
    objective was to implement Swarm, or equivalent functionality, in Java. However,
    Repast did not adopt all of Swarm's design philosophy and does not implement swarms.
    Repast was also clearly intended to support one domain – social science – in particular
    and includes tools specific to that domain. The additional objective of making it
    easier for inexperienced users to build models has been approached in several ways by
    the Repast project. These approaches include a built-in simple model, and interfaces
    through which menus and Python code can be used to begin model construction."
  • "MASON was designed as a smaller and faster alternative to Repast, with a clear
    focus on computationally demanding models with many agents executed over many
    iterations. Design appears to have been driven largely by the objectives of maximizing
    execution speed and assuring complete reproducibility across hardware. The abilities
    to detach and re-attach graphical interfaces and to stop a simulation and move it among
    computers are considered a priority for long simulations. MASON's developers appear
    intent on including only general, not domain-specific, tools. MASON is the least mature
    of these platforms, with basic capabilities such as graphing and random number
    distributions still being added."
  • "NetLogo clearly reflects its heritage as an educational tool, as its primary design
    objective is clearly ease of use. Its programming language includes many high-level
    structures and primitives that greatly reduce programming effort, and extensive documentation
    is provided. The language contains many but not all the control and structuring
    capabilities of a standard programming language. Further, NetLogo was clearly
    designed with a specific type of model in mind: mobile agents acting concurrently on
    a grid space with behavior dominated by local interactions over short times. While
    models of this type are easiest to implement in NetLogo, the platform is by no means
    limited to them. NetLogo is by far the most professional platform in its appearance and
  • The Objective-C version of Swarm "is the most mature library platform and is stable and well-organized. Objective-C seems more natural than Java for ABMs but weak error-handling and the lack of developer tools are drawbacks."
  • "A rough comparison of execution speed found MASON and Repast usually fastest, Swarm fastest for simple models but slowest for complex ones, and NetLogo intermediate."
  • "MASON, Repast, and Swarm provide explicit methods for scheduling actions both in fixed time and dynamically. Because it was designed primarily for one kind of model, NetLogo provides fewer tools for explicit control of scheduling."
  • MASON, Repast, and Swarm use the same, somewhat complex, three step process to display agents in space. "NetLogo, in contrast, automatically draws agents on a built-in animation window; users can customize shapes and colors."
  • "Netlogo, with its heritage as an educational tool, stands out for its ease of use and excellent documentation. It is easy to recommend NetLogo for models that are (1) compatible with its paradigm of short-term, local interaction of agents and a grid environment and (2) not extremely complex."
  • "MASON could be a good choice for experienced programmers working on models that are computationally intensive, e.g., having many agents or long run times.

This article was found at the Agent-Based Modeling Resources Page of

Two Popular Agent-Based Simulation Platforms: RePast and Ascape

RePast and Ascape appear to be the two most popular platforms for agent based modeling. Repast (Recursive Porous Agent Simulation Toolkit) was developed at the University of Chicago. It is intended primarily for use in the social sciences, and seeks to "support the development of extremely flexible models of living social agents." Models can be written in RePast using several programming languages, including Java, C#, and Python. As I know none of these languages, I was limited in my ability to experiment with RePast. Despite these limitations, however, I formed the opinion that RePast would be a suitable platform for our simulation game. It allows for the depth of interactions and behaviors, as well as the diversity of characterizations that are a necessity for our project.

Ascape, written in Java, is a "software framework for developing and analyzing agent-based models." In Ascape, agents exist within "Scapes" – collections of agents that are themselves agents. Agents interact within these scapes, which govern the actions of the agents contained in them. Ascape supports complex model design, but can also be explored by those unfamiliar with programming.

Artificial Microeconomy Simulation Platform

There is an interesting program located here:

The program is simplistic, using "food" and "gold" as the only two commodities. Actors are very limited in their actions, and allotment of each good is random. However, it is worth checking out, as it models what we are trying to do--only in a more simplistic manner.

A detailed description of the model is presented in a paper by Ken Steiglitz, Michael Honig, and Leonard Cohen, located at:

AgentSheets Modeling Software

Right now, I'm playing with the program AgentSheets ( as a candidate for our simulation platform. AgentSheets is an "actor-based simulation-authoring tool that lets users create their own interactive simulations and games." Unlike most other programs that I've examined (RePast, Ascape), AgentSheets requires no prerequisite programming language; however, it remains to be seeing whether AgentSheets, given that it doesn't make use of a complex programming language, has the capability to express all the information and dynamics that we need.

Agent-based Computational Economics and Programming

After thoroughly examining Leigh Tesfatsion's website on Agent-Based Computational Economics, it is clear that there is a multitude of options for agent-based simulation platforms providedthe designer knows a programming language. As I do not have this knowledge (outside of a basic knowledge of the Scheme language), it seems that one of our obstacles is to find a platform for which little or no programming knowledge is necessary. At this point, it seems that PlatBox is our only option in that category, unless, of course, I were to spend time learning enough of a programming language to design a simulated world on one of the many platforms listed in Tesfatsion's website.

An ACE in Ames - Leigh Tesfatsion

We have two primary goals for this project during Jelal's time here as our summer intern:

  • identification of candidate simulation software technologies and development of a proof of concept for The Local Food Economy Game as a web-based exploratory learning environment, and
  • identify and pursue the development of collaborative relationships with Iowa-based kindred spirit researchers in both the local food economy and agent-based simulation domains.

I knew we were going to be okay finding kindred spirits in the local food economy space. We are, afterall, in the historical agricultural heartland of the United States. I did not expect, however, to find a world class theoretical and applied research scientist in the rather specialized domain of agent-based economic simulation.

Leigh Tesfatsion: Professor of Economics and Mathematics at Iowa State University and expert in Agent-based Computational EconomicsLeigh Tesfatsion: Professor of Economics and Mathematics at Iowa State University and expert in Agent-based Computational EconomicsWow, were we happy to learn about Leigh Tesfatsion! Leigh is Professor of Economics and Mathematics at Iowa State University in Ames. Here's how she describes her current research interests:

  • Agent-based computational economics: A constructive approach to economic theory;
  • Testing the economic reliability of FERC's proposed wholesale power market design;
  • Modeling decentralized market economies as distributed local-interaction systems;
  • Concentration and market power in a dynamic production economy;
  • Labor institutions and the evolution of macroeconomic performance.

And here are links to a her current work that is spot on relevant to our project:

I can't wait to arrange a field trip to Ames so Timlynn and I can take Jelal along with us to meet our Community Capitals Framework friends at the ISU-based North Central Regional Center for Rural Development (NCRCRD) and get the local food researchers there together with Leigh Tesfatsion! What fun we have ahead.

Boxed Economy Simlulation Platform

The boxed economy simulation platform discussed in the links on this page:

is very interesting, as we have discussed. If we can obtain a copy of this platform from its authors, we would have--as Jim said--a viable candidate for our simulation software. I plan to print out and read a few more of these articles before coming to Fairfield on Wedensday.