Our Technology
Just a decade ago, building an accurate picture of human activity at sea across the globe would have been impossible. But thanks to advances in satellite technology, cloud computing and machine learning, Global Fishing Watch is now making it a reality.
We are revolutionizing the ability to monitor commercial fishing, transshipment at sea, shipping and even forced labor abuses onboard vessels. Our data and technology portals enable scientific research, support marine protection, and improve the way the ocean is managed.
Harvesting big data from satellites and other sources
We combine tracking data from the publicly available automatic identification system (AIS) and integrate that with information acquired through vessel monitoring systems that are operated by governments and made available to us through partnerships that we secure. Both AIS and VMS combine global positioning with a transmitter to regularly broadcast vessel location.
Automatic identification system
The International Maritime Organization and other management bodies require large ships, including many commercial fishing vessels, to broadcast their position with AIS in order to avoid collisions. Each year, more than 400,000 AIS devices broadcast vessel location, identity, course and speed information. Ground stations and satellites pick up this information, making vessels trackable even in the most remote areas of the ocean.
While only two percent of the world’s roughly 2.9 million fishing vessels carry AIS, they are responsible for over half of the fishing effort that takes place more than 100 nautical miles from shore, and as much as 80 percent of the fishing that occurs on the high seas. The number of fishing vessels with AIS is increasing by 10 to 30 percent each year, making this technology more and more informative with time.
Vessel monitoring system
VMS tracks vessels in a similar way to AIS, but has historically been restricted to government regulators or other fisheries authorities. Several countries have released their VMS publically on the Global Fishing Watch map. VMS systems broadcast positions at set intervals and some systems allow operators to increase transmission frequency when needed. Some vessels broadcast both AIS and VMS so information from both systems can be combined to give a higher resolution vessel track.
Vessel registries
We synthesize more than 30 public vessel registries each month to develop a comprehensive database of known vessel information, including identity—ship name, call sign, IMO number—size—length, tonnage, engine power—authorization status and ownership.
Satellite imagery
Vessel tracking data is critical for tracking commercial fishing activity, but monitoring AIS and VMS still leaves out a significant portion of global fishing activity. Imaging-based systems can detect vessels that have no tracking device or those whose tracking devices have been switched off to conceal their location. We are therefore working to incorporate numerous satellite imagery sources for a more complete picture of global fishing activity.
The Visible Infrared Imaging Radiometer Suite (VIIRS) is a polar orbiting satellite that uses highly sensitive optical sensors to see lights at night. The Earth Observation Group (EOG) at the Colorado School of Mines maintains the VIIRs Boat Detection (VBD) database, which identifies vessels in the VIIRs data that use light to attract catch, such as most industrial squid vessels and some types of purse seines. Through a partnership with the Earth Observation Group, we are incorporating this database into our portals to supplement vessel tracking data—more than 85 percent of the fishing vessels in the VIIRS database do not broadcast AIS or VMS.
Processing the data
Global Fishing Watch automatically ingests data from numerous sources every day. Before these data can be useful, however, they need to be cleaned and processed into formats usable for our various models and algorithms. To accomplish this, we rely on massive cloud infrastructure to crunch billions of data points each year and we develop machine learning models to identify patterns in large data sets.
We developed a series of open-source libraries to clean up and preprocess all raw vessel tracking datasets, including filtering out noisy or duplicated data, and grouping positions into logical segments. We also use internal and external sources to supplement the data with additional information—such as distance from ports, distance from shore and bathymetry—to use in our models. For satellite imagery, each data type—SAR, optical and infrared—requires specific preprocessing steps before they can be used for analyses, including geophysical corrections, geometric transformations and sensor-specific filters. We developed data pipelines to convert the raw satellite imagery to analysis-ready pixels.
After harvesting and preprocessing each dataset, we apply a variety of algorithms and machine learning models to monitor the activity of fishing vessels at sea. To identify fishing vessels, we combine our comprehensive vessel registry database with the predictions from a machine learning model to classify vessels into 1 of 40 vessel categories, for example trawler, longliner and cargo. This process also yields information on vessel length, tonnage and engine power.
Vessel tracking and satellite imagery datasets differ in how, when, where and for which vessels they can be used to detect fishing. For vessel tracking datasets—AIS and VMS—we use a machine learning approach similar to our vessel classification model to identify where and when a vessel is fishing based on its movement patterns. For satellite imagery, we use “object detection” models to distinguish vessels from other objects in the images. We match these vessel detections against vessel tracking datasets to determine which vessels in each image are fishing vessels broadcasting AIS/VMS. For the remaining unmatched “dark” vessels—vessels that do not publicly broadcast their location or appear in public monitoring systems—we are developing models to predict which vessels are fishing vessels based on their location, for example in shipping lanes or along continental shelves.
In addition to the act of fishing, vessels engage in numerous behaviors—such as transshipment and visiting ports of call—that affect the sustainability, traceability and transparency of the seafood supply chain. We identify these events in various ways and share them on our map in order to provide a more comprehensive picture of global commercial fishing activity.
False identities and spoofing
Most large fishing vessels are assigned a unique maritime mobile service identity (MMSI) number, but in practice some vessels transmit a number that is not assigned to them; either a false number, for example 123456789 or the number of another vessel. This means that throughout the ocean multiple vessels may be simultaneously broadcasting the same MMSI number. A vessel’s locations can also be misrepresented by manipulating its GPS location, also known as “spoofing.”
Our machine learning algorithms automatically separate signals coming from multiple vessels using the same MMSI, and also detect when the broadcast location is inconsistent with the location of the satellite that received the signal.
Sharing the results
Our goal is to make all Global Fishing Watch datasets publicly available, for free and easy to navigate. We want to make sure anyone with a computer and internet access can use our data to drive a transformation in how we manage our oceans. To achieve this, we have developed a set of online portals and tools based on open source technologies—PostGis, ElasticSearch, Docker, Kubernetes—and built on top of Google Cloud Platform services—BigQuery, Cloud Run, Cloud Storage, Kubernetes Engine—that enable us to deliver the best performance possible. Our products are pioneering the way global datasets can be represented and explored both geographically and temporally.
Application programming interfaces
The Global Fishing Watch portals are powered by a series of application programming interfaces (APIs) that transmit data from our database. We develop REST APIs, which are an architectural style of API commonly used to create interactive web applications, to query fishing effort, search vessels by different criteria, retrieve vessel details and identify vessel events like encounters. Our intuitive and secure APIs are designed to transform global collaboration and develop solutions to address the ocean’s most complex problems.
Revolutionary data rendering
Our initial challenge was to create a map that enables our users to do high level data exploration while still being able to drill down into specific information. However, there was no technology available that enabled users to do seamless exploration of big data on top of a map with geographic navigation at different spatial and temporal zoom levels, so our Global Fishing Watch engineers developed one.
Our 4Wings technology helps to improve our shared understanding of human activity taking place across the world’s ocean. 4Wings is a set of open source code that uses a highly efficient process to dynamically visualize vast datasets over space and time. Fueling our map, it rapidly ingests streams of information and then maps the data into hexagon-shaped grids which allow for comparisons across global latitudes. It supports dynamic filtering to empower managers and analysts to easily switch between investigating large scale, multi-year patterns of human activity to monitoring individual vessel tracks using a specific set of criteria.
4Wings advances the innovative technology available to researchers that seek to interrogate spatiotemporal datasets, from mapping sea ice cover or deforestation rates in a specific region to tracking fishing vessel movements around the globe.
Freely-accessible to all, 4Wings technology presents an effective solution to support advanced levels of interactive mapping, helping to bring huge amounts of data into focus and support more informed, science-based decision-making and action on the water. All of our map-based products now use this technology to render vessel and environmental information. Access the open-source repository here.