As the Cultural Algorithm is a replication of the social networks that exist among human beings and other social creatures, it too has a social network that links together its agents and allows them to exert influence on one another. The topology of this network can be altered to allow for different numbers of connections between agents, and this can be adjusted with the Topology setting. In Figure 2.2, the social network topology is being visualized and can be seen as a series of lines connecting agents to one another.
While ConesWorld itself spawns a randomly generated landscape comprising conical shapes with each new simulation, it is possible to choose for it to use a presupplied landscape for repetition across a given sample. This can be chosen in the ConesWorld File option.
One major aspect of the CAT System's ability to update the topography of some problems has to do with a logistics function that generates a fluctuation rate that can be controlled by the user. It is possible to deal in minor fluctuations, which produce steady, smooth transitions from one topography to another, and it is also possible to induce erratic fluctuations, which create seemingly disjointed topographies.
The scale on which it goes from smooth to erratic can be controlled by the user with the input of a variable ranging from 0 to 4. This variable controls the fluctuation rate and will be looked at in greater detail in later in the logistic Function section. It is enough for now to point out that in the ConesWorld problem, the height, slope, and position of the cones can be separately set so that one aspect is smooth while another is erratic, and if the user sets the input variable at 0, it will result in no change to a given aspect with each update of the system's landscape.
The Influence Method affects how each Knowledge Source gains or loses influence with each subsequent generation of the simulation. This can vary across methods, such as winning a majority vote, taking up varying percentages of a roulette wheel, or winning an auction. These can be selected from the Influence Method section of the user interface.
Finally, the number of cones utilized in the ConesWorld simulation can be altered to create greater numbers of possible optimal outcomes or more local maximals to attempt to sway the system's exploration and exploitation.
With this combination of user variable input and visualization, the CAT system allows for rapid testing of multiple configurations of the Cultural Algorithm across a wide variety of problems and environments. The numerous visualization options also allow for greater discussion of results than could previously be produced by endless lists of numbers without visual aid or reference.
Downloading and Running CAT
The CAT System can be downloaded from the following location: https://drive.google.com/open?id=161wpeNQIkEcR9gAWRDazPUaKX3wHCA7B
On downloading the CAT Kit zip file and extracting its contents, please install the included Repast Simphony v1.2.0 for Windows. This is the required version of Repast Simphony that the included code is optimized to run with. Once installation of Simphony is complete, run Repast Simphony IDE. It will ask for a workspace to utilize. Please navigate to where you have extracted the CAT files, and select the folder labeled CAT3. Once Repast's version of Eclipse Ganymede finishes opening, you can immediately run the software in one of two ways. To see the visual interface detailed in this chapter, select the circular green “Run” icon from the toolbar. This will immediately run the visual interface version of the CAT. If you click the small arrow immediately next to the green icon, you will be given the option to choose either “ConesWorld,” which is the visual interface or “CATnG,” which runs an interface‐free version of CAT. Open‐source coders who are unfamiliar with the Repast Simphony visual interface may wish to utilize this latter option.
Once the visual interface has begun, the “User Panel” tab can be accessed to allow the alteration of various attributes of the run, including population size, the number of different landscapes used, and how many years/generations the system should run over. These attributes are discussed in greater detail in later sections. On pressing the blue “Start Run” button, the system will begin processing with the given attributes. A right clicking within the visual ConesWorld display window will allow a drag interface to move the visuals, and a mouse wheel can be used to zoom in and out. The left and right mouse buttons pressed in unison can be used instead of the mouse wheel to zoom. Different attributes of the run can be viewed via the tabs located at the bottom of the screen.
The Repast Simphony System
Simphony is part of a suite of software known as the Repast Suite. This software is distributed by the Argonne National Laboratory. Repast Simphony is an agent‐based modeling software designed to organize, monitor, and record the movements of agents in a given environment.
The system works as a shell, in that Simphony first executes its own visualization system, and then executes the provided environmental code within its own framework. Simphony also provides its own feedback for errors in code running within its environment for the purpose of debugging. It should be noted that errors in environmental code will not propagate out to the Java environment being used to run Simphony, so users should be aware of locating the feedback within Simphony itself.
The Cultural Algorithm's implementation within the CAT system relies on a collection of Knowledge Sources, which can influence the behaviors of the agents as they work toward optimization. Each Knowledge Source analyzes the data in a different way, trending toward either widespread explorative style or tightly focused exploitative style. As the knowledge sources learn more about the problem being analyzed, their suggestions can improve performance resulting in more agents being influenced by that particular Knowledge Source. There are five Knowledge Sources used by the CAT system: Topographical, Normative, Domain, Historical, and Situational.
The Topographical Knowledge Source influences agents to seek new possible feasible solutions by making predictions given the performance landscape of the scoring mechanism. By analyzing trends in certain regions, it can then make suggestions where it is likely that these trends may reach a maximum and influence agents to move toward those locations. Because it sends agents into unexplored areas based on its predictions, it falls into the Explorative category.
In the CAT System, Topographical Knowledge takes the shape of a tree made up of the cells that contain information about the problem's topography. The topographical map can be composed of N ‐dimensions, based on the number of variables within the given problem, plus the fitness function. For example, as seen in Figure 2.3, ConesWorld is a three‐dimensional topographical map, with the X and Z variables for location, and the Y value representing the fitness at a given location denoted by X and Z . The domain of X and Z is limited between the values of 0 and 250 for each of them, resulting in an area of 62 500 units for the given problem domain.
Each cell in the tree assumes its place in the hierarchy of the tree based on the feasibility gathered from the agents that exist within that cell. An agent's position is considered within feasible constraints if that position's fitness registers higher than or equal to a specified fitness gate, which is calculated as half of the sum of the minimum fitness and maximum fitness in the most highly ranked cell.
Читать дальше