A Sustainable Fishing Simulation Using Mathematical Modeling and Database Access Through the World Wide Web

By Vineet Kapur, Douglas Troy, and James Oris

Introduction

This paper describes a sustainable fishing simulation system accessible over the World Wide Web (WWW). This is an interdisciplinary project that combines the fields of fishing ecology and computing. It uses a client-server architecture consisting of a mathematical model, a database management system, a WWW server, and WWW browsers. The goal of this simulation is to allow ecology students to learn about issues involved in environmentally sustainable fishing.

We focus upon implementation of the user interface, database management, mathematical modeling, and WWW database connectivity required by the project . The following sections discuss the project goals, system implementation, and results of the simulation. The conclusion provides an overall assessment of the project.

Project Goals

A classic method for teaching students about environmentally sustainable fishing is through a simulation. Typically, these simulations are not carried out in real time. Instead, students submit batch requests to the model maintainer (``fishing commissioner''), who later runs the simulation and provides results to students. This process is functional, but does not provide interactive feedback.

This project aims to make this simulation real-time and directly accessible to students over the WWW. Consequently, the students can think of the model embedded in the World Wide Web as an ocean from which they can fish at any time and from any place that provides Internet access.

The simulation is organized as follows. Fishing groups, consisting of one or more students, are formed. Each fishing group is given five nets of varying type. The fish are divided into five age categories. Each net has a capacity for catching different numbers and ages of fish. For each fishing group, the goal of the simulation is to determine how its five nets can be used to gain a consistent catch over a certain number of years and to maximize harvest points. Every fishing group determines its own fishing strategy. To accomplish its goals, each group specifies how much they want to fish with each net. After all requests are submitted, the harvest value for each group is calculated and recorded. The harvest value indicates the net worth of the catch for a particular group. At the end, students should grasp issues such as consequences of over-fishing, fish population dynamics, etc.

The simulation allows students to fish in an ocean as one of two kinds of groups: ordinary fishing fleets, and giant fishing consortia. Consortia are generally considered to be more efficient than individual fleets. In this project, all the ordinary fishing fleets must fish from a single ocean (Ocean One) while the consortium groups fish from a separate ocean (Ocean Two).

Different fishing strategies can be employed. Some groups may use their nets to full capacity initially and earn many harvest points. However, in the process, they may kill inordinate numbers of fertile fish, causing the population to propagate slowly. An interesting feature allows a group to bribe the fishing commissioner and hence gain permission to use its nets to a higher capacity than is allowed by law. With this feature, common illegal behavior can be modeled. As a result, students learn about the fishing industry in a "real-world" fashion. In addition, a real fishing fleet could use this simulation tool to demonstrate the principles involved in sustainable techniques.

System Implementation

Overview

The major components of the system (see Figure 1) are the user interface, implemented using a WWW browser with HTML forms; the database, used to store information about groups, fish populations, etc.; the simulation model, implemented using Cold Fusion [1] and JavaScript [3]; and finally, the WWW server which handles data transfer .

Figure 1: Major components of the simulation system.

User Interface

In order to use the system, a user must first log in either as an ordinary fishing fleet, the fishing commissioner, or a consortium. The ordinary fishing fleets and consortia submit requests to fish the ocean. The requests consist of a percentage of each of the five nets with which the group wants to fish.

The individual fleets and consortia can:

The fishing commissioner can:

Some of the more trivial functions are not listed above. The system was designed so that new features and functions can be added to the system on both the Fishing Fleet and Administration sides.

The following figures provide some snapshots of the WWW pages. Figure 2 shows the login page, Figure 3 displays the pages used by groups to input net values, and Figure 4 shows the graph of fish populations by year during one simulation run.

Security was implemented using the "cookie" feature of the WWW. A cookie is a secure value associated with the machine where the browser is running. (See, for example, http://www.cookiecentral.com). For this project, cookies were used to store the identity of the user. The program checks for the existence of the cookie value each time a transaction is requested. If the value exists and matches the login identification of the user, then the user is allowed to enter. Otherwise, the user is logged out of the system.

Figure 2: Login Page.

Figure 3: Page used to submit Net Requests.

Figure 4: Graph of fish populations by year.

Database

The database was implemented with a database management system (DBMS) using the relational model [2] (see, for example, http://www.dataprep.com.my/techtalk/clientsv/cssn0203.htm). Embedded SQL was used to interface with the database because of its ease of use. Several tables were created to hold the data. Figure 5 shows an Entity-Relationship diagram of the database. Tables were created with foreign key, primary key, and other relevant constraints. The table GROUPINFO contains essential group information like userid, password, etc. GROUPRESULTS contains group harvests by year and ocean for each group. MAXALLOWED contains the maximum percentage value for each net a group is allowed to fish with. MODELRESULTS contains fish populations by ocean and size for each year. The OCEAN table contains current ocean sizes. Finally, the REQUEST table contains net requests for each group. Other minor tables were created to support the above tables.

Figure 5: Entity-Relationship (E-R) diagram of the database.

Simulation Model

A mathematical model called the Harvest Calculation Model [6, 5] was used to determine the fishing results for each group. Dr. Roy Stein designed this model at Ohio State University in an advanced fisheries class. Dr. James Oris wrote the model for exercises at Miami University based on his own knowledge of fish life cycles. This model was used instead of others in the field because it had already been used successfully by one of the authors[5]. The model uses the net values submitted by groups and fish sizes in the current ocean in order to calculate the number of fish caught. The code for the model can be viewed as a text file at the address http://schabetc.sas.muohio.edu/vkapur/fish/admin/fishmodel.txt and works as follows:

  1. The net values submitted by groups are converted into efficiency values ranging from zero to one, or higher than one if nets are used illegally to a higher capacity than allowed by law.
  2. The model recalculates the fish populations for each fish size class in the ocean based on a series of equations developed by ecologists.
  3. The model calculates the number of fish caught by the group.
  4. The model converts the number of fish caught by each group into a value called harvest-credit, which numerically represents the yield for each group depending on the types of fish caught.

After all the requests arrive, the fishing commissioner runs the model twice, once for Ocean One which catered to the individual fleets, and again forOcean Two which catered to the consortia. Afterwards, a harvest value for each group is calculated and stored in the database for every fishing year. At the same time, the fish populations for each ocean are updated.

The mathematics and processing were implemented using Cold Fusion, which supports a language called CFML (Cold Fusion Markup Language) [1]. CFML interfaces with the Internet Information Server and acts similarly to a CGI (Common Gateway Interface) script. HTML and JavaScript [3] code was embedded in CFML. CFML was chosen over other languages for the major functions due to its ease of use with embedded SQL and its simple integration with JavaScript and HTML. JavaScript was used to create the user interface (e.g. buttons, dynamic links, etc.) and to create graphs from data supplied by the Cold Fusion component.

WWW Server

The project was completed using a Windows NT Internet Information Server, and a Microsoft SQL Server database management system [4]. Windows NT was chosen over other platforms because familiar tools like database servers, spreadsheets, and visual programming languages can be easily integrated with the WWW server. This provides flexibility if the model were to be expanded. For example, if certain extraneous data stored in a familiar spreadsheet like Microsoft Excel were to be used in the future, the developer would not have to write a program from scratch to interface with it. They could just use the existing ODBC connectivity services. In contrast, other systems would require low level coding to extract this kind of data and convert it into a usable format.

The code to implement the system is organized into three categories:

  1. login code, used by groups and administration to log in,
  2. administration code, used by the fishing commissioner to run the model, maintain the oceans, add groups, etc.; and,
  3. fishing fleets/consortium code, used by the fishing groups to submit requests and view results.

Conclusion

This project provides an interactive, real-time interface for a fishing ecology simulation. Ecology students throughout the nation can use this simulation to understand issues associated with sustainable fishing. After obtaining a secure account on the system, students can use the simulation from any place in the world that provides Internet access. Programs such as this, which involve many users and need to provide quick results, can only be successful over a network when requests from all parties can be serviced in real-time. To the best of our knowledge, this is the first time an educational fishing simulation has been implemented in this manner.

This interdisciplinary project revealed the intricacies of applying computing tools to another field of study. Perhaps one of the greatest difficulties involved making the interface user-friendly. Effort was made to minimize scrolling, and to make the menu items sensible. To focus the user on the simulation, the interface was designed to restrict use of generic WWW functions (for example, the standard browser toolbar is not shown). All user interface elements needed are incorporated into the simulation WWW pages themselves.

Later on, new features will be added to the project. Perhaps the model will become more sophisticated and inclusive. The user interface will continually be improved based upon suggestions from users. For example, in the future the results may be displayed in different formats for different groups. Overall, many cosmetic and technical features could be added to enhance usability. Another addition would be groupware features that support collaboration among users, such as a messaging facility or a chat room.

In conclusion, the project was successful in meeting its goal to create an educational product. The best way to appraise its merits would be to use it on the World Wide Web at the address http://schabetc.sas.muohio.edu/vkapur/fish.htm. Currently, the database access and server programs only work on a Windows NT based system. Portability to another system will require re-coding. However, since the logic behind construction of this system has already been clearly established, re-coding should be straightforward.

References

1
Cold Fusion 3.0 User Guide. http://www.allaire.com/products/coldfusion/30/CFDOCS/index.htm, verified July 7, 1997.
2
Date, C.J. An Introduction to Database Systems, Reading, Massachusetts: Addison-Wesley, 1995.
3
JavaScript Reference. http://home.netscape.com/eng/mozilla/Gold/handbook/javascript/index.html, verified July 7, 1997.
4
Microsoft SQL Help Reference Manual. Microsoft SQL Server Version 6.5
5
Oris, J.T. Stella Model for Fish Population Structure Analysis, Department of Zoology, Miami University, Oxford, OH (unpublished), 1995.
6
Stein, R.A. Sustainable Use Fish Harvesting Exercise, Department of Zoology, Ohio State University, Columbus, OH (unpublished), 1988.

Acknowledgments

Special thanks to Dr. Thomas Schaber for supplying the web server platform and necessary software for this project and Chris Barrett who contributed ideas used in the database design.

About the Authors

Vineet Kapur ( http://phoenix.sas.muohio.edu/~vkapur; vkapur@phoenix.sas.muohio.edu ) graduated from Miami University in May 1997 with a BS (Honors) in Systems Analysis. He is interested in anything to do with Biomedical/Biological computing.

Douglas Troy is a professor in the Systems Analysis Department, Miami University, Oxford, Ohio. He holds a PhD from the University of Waikato, New Zealand. His research activities are in software development methods and tools.

James Oris is a professor of Zoology and the Co-Director of the Environmental Toxicology and Statistics Institute at Miami University. He holds a Ph.D. from Michigan State University. He is involved in the development of multimedia materials for use in the environmental science classroom.

Want more Crossroads articles about Interdisciplinary Computer Science? Get a listing or go to the next one or the previous one.

Last Modified:
Location: www.acm.org/crossroads/xrds4-1/fish.html