There are a number of things that may cause an experiment to fail. Sometimes you may find your whole experiment may fail, other times it might just be one algorithm within your experiment. Below we have listed a few potential reasons and their subsequent fixes.
There are two main 'fails' you will get in the BCCVL:
1. Your entire experiment failed
If you get this first message then something went wrong with either the design of your experiment or the data you have selected, or an error occurred with sending your experiment to the compute resources. Issues with connecting to compute power happens pretty rarely, but they do happen.
- To check if it is an issue with the BCCVL connecting to compute resources this can usually be fixed by simply resubmitting your experiment. You can do this by going back to the main 'Experiments' tab, and clicking on the 'Rerun' button next to your experiment. You will need to click through your experiment setup again and check it is all correct.
- If your experiment fails again, then it is likely an experimental design or dataset issue - refer to section 2 below.
2. One or more algorithm/s or species within your experiment failed
Sometimes one, or two, or even a handful of algorithms within an experiment will fail. We have outlined the most common reasons for this below. If you believe your model failed for another reason, please get in contact.
Species Distribution Model & Multi-Species Distribution Model experiment fails
Script execution failed with exit code 256, or exit code 9
These are the most common error messages you can receive, and unfortunately they can mean a number of things. The most common of which are outlined below:
- You are running a Maxent model with your own uploaded environmental data which has non square cells.
If you are using your own environmental data, and Maxent failed, please check the Log File in the results. If you scroll all the way down, you are likely to see the following message: "Error in .startAsciiWriting(x, filename, ...) : x has unequal horizontal and vertical resolutions. Such data cannot be stored in arc-ascii format". This means that your environmental data is stored in non-square cells rasters, which is not supported by Maxent in the R package biomod2 which BCCVL uses. Please consider resampling your environmental rasters on a square grid. BCCVL uses the WGS-84 (EPSG:4326) projection system for all its environmental data, which is the recommended projection system if you upload your own data.
- You used categorical data in an algorithm that does not accept categorical data.
Bioclim and Surface Range Envelope algorithms cannot use categorical variables. These algorithms will fail if you try to run them with categorical data layers.
- The number of species occurrence records is too low.
While some algorithms are able to handle a low number of occurrence records (e.g. <20), others are not. Machine learning algorithms (e.g. Classification Tree) require a larger occurrence dataset due to the iterative process in which the algorithm uses the data. If you are modelling a rare or threatened species and only have a small occurrence dataset we advise using Maxent or a statistical algorithm (e.g. Generalized Linear Model) to calibrate your data.
- The species names in your occurrence csv are numeric.
If your species or multispecies occurrence file has numbers for species name/s (e.g. 1, 2, 3) the model will fail to generate a valid formula for the model, and will fail. To fix this, you need to modify your occurrence data file to use non-numeric values for species name (e.g. A, B, C instead of 1, 2, 3). Once you have done this, re-upload this into the BCCVL and try running your SDMs/MSDMs again with this new file.
- "Failed to transfer results back"
This is an issue with the compute workers. Rerun your experiment and it should fix this issue.
- You only selected one variable in your model.
With the exception of Bioclim and other geographic models, all SDM algorithms will fail if you only include one predictor variable in the setup. Rerun your experiment and ensure you include at least 2 predictor variables.
- Circles failed for a widespread species.
The Circles algorithm draws a circle of a given radius around your occurrence records. By default this radius is computed from the mean of all distances between points. This can be a really large distance for example if your are modelling a marine species that occurs across the globe. In this case some circles might overlap and the algorithm tries to merge these circles which might result in a fail. The solution is to rerun the experiment with a fixed distance for the radius.
Climate Change Projection experiment fails
- You ran your SDM with more than one current climate dataset.
When you use the results of an SDM experiment in a Climate Projection, the projection tries to match the variables from your SDM with the selected future climate dataset. However, if you have duplicate layers from different datasets (e.g. Worldclim bioclim variables 1 - 19, and Climond bioclim variables 1 - 19) the model does not know which to use, and therefore it fails. We recommend rerunning your SDM with only one of your chosen datasets (e.g. Worldclim OR Climond, not both), and then run your Climate projection using that new SDM. We also advise to use future climate data from the same data collection as the current climate data (e.g. if you use Worldclim current climate in your SDM experiment then you should also use the Worldclim future data for your projection) to ensure that the data were generated using the same methodology.
- You used your own uploaded future climate data.
If you uploaded your own future climate data, you need to make sure that the layers have the same names as the layers used in your SDM. The projection will only substitute the values of predictor variables used in the SDM with new values for future predictions. To match these layer names, you need to edit your future climate data. Please read this article for instructions.