12  Fishing Effort and Vessel Presence

12.1 Data Overview

The flagship datasets of Global Fishing Watch are vessel presences and apparent fishing effort based on transmissions from vessel tracking datasets, including the automatic identification system (AIS) and vessel monitoring systems (VMS). These datasets represent the amount of time vessels are present in an area and, for fishing vessels, how much of that time is spent fishing. Using cloud computing, machine learning, and public vessel registry information, GFW analyzes tens of millions of AIS and VMS positions each day to map global apparent fishing effort.

Producing such a dataset involves two key steps:

  1. Identification of fishing vessels in the AIS and VMS data

  2. Detection of fishing activity

We combine our comprehensive database of vessels with a known vessel type from vessel registries with two convolutional neural network (CNN) models to help us classify vessels and predict when they are fishing. The resulting output are a list of vessels by type (e.g. trawler, drifting_longline, cargo, etc.) and a dataset of AIS positions, where each position is labeled as a fishing/non-fishing position. These datasets can then be combined to evaluate the presence and fishing activity of individual vessels or make rasters of aggregate vessel presence or fishing activity.

Note: Every AIS position receives a fishing score (or NULL if the model can’t make a prediction), regardless of whether that MMSI is classified as a fishing vessel. As non-fishing vessels can often move in ways similar to fishing vessels, it is not uncommon for their positions to be scored as fishing positions. This is why it is critical to filter to fishing vessels before calculating and summarizing fishing hours.

12.2 Key Tables

  • pipe_ais_v3_published.messages - AIS positions, thinned to one minute per segment, for all vessels. This is the primary table for use in research, analysis, and products.

  • pipe_ais_v3_internal.messages_regions - AIS positions, thinned to one minute per segment, for all vessels. This table is stored in the internal pipe 3 dataset.

  • pipe_ais_v3_published.segs_activity - Summaries of vessel activity by segment (seg_id). Includes fields indicating which segments are likely noise (e.g. good_seg, good_seg2, overlapping_and_short) and should be filtered out.

  • pipe_ais_v3_published.segs_activity_daily - Daily summaries of vessel activity and fishing by segment (seg_id). This table can be used for non-spatial analyses that summarize vessel activity over specific time periods.

12.2.1 Public Fishing Effort Tables

GFW’s public fishing effort and vessel presence datasets (2012-2024) are gridded at 100th degree resolution by flag state and geartype and at 10th degree resolution by MMSI, respectively. These tables are available in a public BigQuery project (global-fishing-watch) and are inexpensive ways to quickly map fishing effort and vessel presence.

There are three public versions of the GFW fishing effort data.

12.2.1.1 Current version (v3)

  • global-fishing-watch.fishing_effort_v3: Public daily fishing effort by flag state and geartype (2012-2024) at 0.01 degree resolution.
  • global-fishing-watch.fishing_effort_v3: Public daily fishing effort by MMSI (2012-2024) at 0.1 degree resolution.

12.2.1.2 Archived versions (v1-v2)

  • global-fishing-watch.gfw_public_data.fishing_effort_v2: Public daily fishing effort by flag state and geartype (2012-2020) at 0.01 degree resolution.
  • global-fishing-watch.gfw_public_data.fishing_effort_byvessel_v2: Public daily fishing effort by MMSI (2012-2020) at 0.1 degree resolution.

12.3 Data Description

12.3.1 hours and fishing_hours

Each AIS position is assigned an amount of time (hours), which is calculated as the time since the vessel’s previous AIS position. Vessel presence is calculated by simply summing the hours of all AIS positions from good segments in the analysis.

AIS positions also receive two types of fishing score (0-1) - one from the GFW fishing detection algorithm (nnet_score), and one from a separate algorithm that detects likely fishing by squid jiggers (night_loitering). AIS positions where the relevant fishing score is equal to 1 are considered fishing positions and all hours assigned to that position are considered fishing effort (fishing_hours).

12.3.2 Fishing score (nnet_score vs. night_loitering)

The GFW fishing detection algorithm performs poorly for squid jiggers, which fish at night using lights while remaining largely stationary. To account for this, a second fishing algorithm identifies when vessels exhibit this night loitering behavior. Because the vessel class associated with an MMSI can change - either over time or as a result of improved GFW vessel classification - all AIS positions receive both fishing scores so that they are available. As a result, when calculating fishing effort, it is important to first assign a vessel class to each MMSI in order to use night_loitering for squid jiggers and nnet_score for all other fishing vessels.

12.4 Caveats & Known Issues

While AIS provides a revolutionary way to monitor global commercial fishing activity, there are several important limitations and caveats.

12.4.1 Many fishing vessels are not trackable via AIS

AIS data includes only a small fraction — approximately 100,000 — of the world’s estimated 2.8 million fishing vessels. Coverage is much higher for larger vessels with less than 1 percent of vessels under 12 meters represented, 14-19 percent for vessels between 12-24 meters, and 52-85 percent for vessels larger than 24 meters. The International Maritime Organization mandates AIS for most vessels larger than 36 meters, and vessels broadcasting AIS are predominantly from upper and upper-middle income countries.

12.4.2 GFW identifies apparent fishing effort

The GFW fishing detection algorithm is a best effort mathematically to identify “apparent fishing activity.” It is possible that some fishing activity is not identified as such by our algorithms and, conversely, we may predict fishing activity where fishing is not actually taking place. For these reasons, GFW qualifies designations of vessel fishing activity, including synonyms of the term “fishing activity,” such as “fishing” or “fishing effort,” as “apparent,” rather than certain.

12.4.3 Fishing activity is under-represented in areas of poor AIS reception

For various technical reasons, not every AIS message that is broadcast is recorded. Satellites must be overhead to receive AIS signals, terrestrial receivers only receive signals near shore, AIS messages can interfere with each other in areas of high vessel density, and AIS devices vary in broadcast strength and frequency. As a result, fewer AIS positions are received by vessels operating in certain parts of the world, limiting the effectiveness of our machine learning models and our ability to detect apparent fishing effort.

12.5 Example Queries

  • fishing_hours_by_position.sql: Basic query to pull AIS positions for fishing vessels and calculate fishing hours.

  • fishing_hours_gridded.sql: Query to create a raster of fishing hours, including fishing hours per square kilometer.