Alaska Science Center
DOUGLAS ARGOS-FILTER ALGORITHMANIMAL MOVEMENT |
MOVEMENTANIMAL MOVEMENT ANALYSIS ARCVIEW EXTENSION No updates are planned for this software. The person who created it is no longer with USGS.Loading the Extension: Animal Movement is an ArcView program extension. 2 versions of 1.0 are currently available, one which requires the simultaneous use of Spatial Analyst. After downloading, unzip/extract the .avx file directly (or unzip to a temp directory, then copy) to the ArcView EXT32 folder. Start the ArcView program, click on "file" and go to "extensions". From the list of available extensions, select Spatial Movement Analysis (which requires Spatial Analyst to be selected first), or choose Animal Movement Analysis (which does not require Spatial Analyst), and click "ok". The collection of new functions will now be available through the menu choices, tools, and buttons described below. Loading Version 2.0 or later:
For any problems or questions regarding this documentation, contact: elizabeth_solomon@nps.gov Using this documentation: Click on the menu bar above to go to the major headings and then click on either the subheading list or the image map of menu choices or buttons. Click on the return button to get back to the subheading list. Note: The images in this documentation are degraded compared to the screen and printer output in order to speed up loading. Citation information: The Movement extension is a collection of over 40 functions to aid in the analysis of animal movement data. The motivation for the creation of this program was the absence of a collection of tools with real integration into a GIS (Geographic Information System). In addition, several functions in this program had not been implemented before or were specifically developed to address author specific research problems. The ArcView software program was chosen for development because of high degree of integration of its GIS environment, the ability to work with a wide variety of spatial data formats, compatibility with many computer platforms, and the capability of its object oriented scripting language Avenue. The ability to cleanly load and unload code developed for specific functions (extensions) was an added benefit. The use of Avenue and ArcView has both costs and benefits. Implemented through a scripting language, several of the functions are significantly slower than compiled code would be. However most functions work as fast or faster than similarly compiled programs. On the benefit side the program has full integration with all other ArcView functions and extensions. The Movement extension works in multiple projection systems, uses the selected records (enabling complex queries or selections), inputs point and attribute data in many formats, and will integrate with many types of spatial data. The Movement extension also has considerable utility for the analysis of other point phenomena and has functions which are useful for many types of GIS uses. Requirements: ArcView and Spatial Analyst (for full functionality). This program will work in versions of ArcView on PC , UNIX and Macintosh hardware (Note...several Dll's required by V. 2.0 are PC compatible only, and will not work with the UNIX platform). The random number generator on the UNIX platform, however is not truly random and caution should be used with the functions that use random numbers. On the PC platform it is recommended that a Pentium or Pentium Pro 200 or faster be used with this program and at least 32 megabytes of memory, especially when simultaneously running Spatial Analyst. IMPORTANT NOTICE: We have done extensive testing on our data sets. However, due to the complexity and size of this application there will be bugs that we have missed or that only appear in some data sets. Be aware that there are substantial differences in the values calculated by many home range programs due to small differences in the way algorithms were implemented (see Worton 1989, White & Garrott 1990 for examples).
Most of the functions work on point themes, which can be created in any method that ArcView can use. Examples include making point event themes from database tables, ascii files or using point shape files, AutoCad point files, and point coverages from ArcInfo. Data can have any number of attributes which can be used in several functions (as well as by the standard ArcView functions). The line coverages that are used for a few functions are best made with the point to polyline tool in the program. If there is a date field present it will be used automatically or if there are multiple date fields the program will query the user. The program can use multiple projections. The projection units and distance units are always the units set in the view. However some functions do not give meaningful measurements in some projections. For example area measurements in decimal degrees will have limited utility. The bulk of the testing was done using the UTM projection and this is the suggested projection because of this testing and the characteristics of the UTM projection for most study sites used in animal movement studies. Some studies however that have very large study sites may need to use other projections such as Albers. Even if all your work is in one projection system we suggest that you leave your vector data in decimal degrees to take advantage of the ability to reproject your data as needed to integrate your data with other spatial data sources. The Movement program expects the data to be sorted or functions that are outputting time depended data (e.g. speed, autocorrelation) will return nonsense. There is a function in the program which does a permanent sort of the data. If your data is not sorted it will be necessary to use this program as the Table Sort command only works on the Table document and does not extend to the virtual attribute table which is used by the rest of ArcView. If you wish to preserve the original ordering use the add record number function first and then resort latter based on this.
Kernel Home Range calculates a fixed kernel home range utilization distribution (Worton1989) as a grid coverage using either ad hoc calculation of a smoothing parameter, least squares cross validation Silverman (1986), or a user input for the smoothing parameter (H). The bivariate normal density kernel is used as suggested by Worton (1989). The least squares cross validation (LSCV) in this version takes significant processing time despite using the golden minimizing routine. Most user will find that the adhoc calculations are very close to the LSCV for exploratory analysis (for most datasets Hopt is usually between 0 .7 and .9 of Href[Ad hoc] in this implementation). The adhoc calculation is based on Silverman (1986) rather than Worton(1989) or Seaman & Powel (1996). The problem of discretization errors (0 length distances caused from rounding location positions giving a minimized h of zero) are handled slightly different than Tufto (1996). Distance measures are uniform randomly placed between 0 and (href/100) when and only when the distance measurements are 0. This only adjust the locations when necessary and allows for different projection and distance systems. The kernel is based on the non-corrected data. The program queries the user if they would like to adjust the .LSCV or the Adhoc H. Worton (1994) suggests adjusting H by 0.8 for normal distributions and 0.5 for uniform. Work by Seaman & Powel (1996) suggest that this is not necessary with the LSCV. It is our experience that the original Adhoc and LSCV smoothing parameters provide a less biased estimator than a user selected or Worton's corrections. Three things are output from this routine: A grid coverage with the Utilization Distribution (probabilities), a polygon shapefile containing individual polygons for each selected probability, an associated attribute table containing probability and area fields for each set of probability polygons, and a message box displaying the area calculations of each probability, Note that the default probabilities are 50 and 95, and that the view must be zoomed out sufficiently to encompass the larger probability areas to create the polygon shapefile (95%, etc.)
This program calls four functions Fun.KernelHR, Fun.LSCV, Fun.Golden, Fun.Score. Fun.LSCV calls function Fun.Golden which in turn calls Fun.Score. These latter two functions are best used from Fun. LSCV rather than being called themselves. Fun.KernelHR and Fun.LSCV have the following structure which can be called from avenue: Fun.LSCV 1.2 3/20/98 NOTES: This LSCV is valid only for the bivariate normal kernel but while it is designed for the Fixed Kernel it will give accurate results for the adaptive kernel. CALLS: Function Fun.Golden and Function Fun.Score RETURNS: HList = {minH} INPUT: . Minimum Convex Polygon Home Range
The Fun.MCP which this program calls Minimum Convex Polygon Home Range has the following input and output structure: RETURNS retList = {MCP, MCPArea, pList, cornerPts}
Generates a harmonic mean home range from a gridded point theme of harmonic mean z values. This program generates a grid based on the harmonic mean z values. The attribute field VALUE is the z values, the attribute field PROPORTION is the proportional representation of those grid cells summed over the entire grid and equal to 1. PROPORTION_CUM is the cumulative total of PROPORTION. These can be used to generate a psuedo-utilization distribution as the harmonic mean method does not create a utilization distribution.
The program ask the user which probability ellipse to output (current choices are 95, 90, and 50). The program will then take the selected records (or if none are selected the entire dataset) and generate a bivariate normal probability ellipse including the major and minor axis and the arithmetic mean as a graphic object. This graphic object is ungrouped so individual items can be deleted. The graphics are not erased so multiple ellipses can be generated on one or many location files. The ellipse can be selected and copy and pasted into polygon coverage. A message box with the arithmetic mean X and Y, the area of the ellipse, the major axis length, the minor axis length and the angle of the major axis in reference to the X axis. The Fun.Jennrich_Turner which this program calls Jennrich Turner Home Range has the following input and output structure: RETURNS: JTList = {ArithmaticMean,Area, MajorAxisLength, MinorAxisLength, Angle, MajorAxis, MinorAxis, Ellipse} ARITHMATICMEAN is equal to the arithmetic mean point INPUT:
The fun.HarmonicMean which this program calls Harmonic Mean Point Theme has the following input and output structure: RETURNS: Hmlist = {HarmonicMean, HMDict, zmin, zmax, MaxPoint, MinPoint,theInc,URPt} a list with the Harmonic Mean location (a point), the dictionary containing all the grid points and the z values (can be used to create a harmonic mean home range or to find multiple centersof activity, the minimum z value, the maximum z value, and the location of the Max z value (a record when the points themselves are used. MinPoint will equal HarmonicMean except for when the points are used. Then it will return the Record with the minimum value. theInc is the distance between points. URPt is the upper right corner pt these have been place in here to aid in the production of grid coverages from the data origin which is also useful can be obtained from the rect passed to this function. NOTES: if both TheRect and TheXdiv are nil then the points themselves are used to generate the Harmonic Mean. This is useful for eliminating outliers from the data set in a meaningful way. In this case MinPoint & MaxPoint will be a record number. This is one of the methods used in outlier removal.
Creates random angles and uses distances between existing sequential points to determine walk points.
The simulation compares the observed pattern with a user selectable number of random walks. This uses a Monte Carlo simulation and parameters from the original data to determine if the observed movement pattern has more site fidelity than should occur randomly, is a random pattern or is overly dispersed. It is suggested that a 100 simulations be run first and if the data is close to chosen probability level break point then run it with a 1000 simulations which will more accurately reflect the random walk distribution. Outputs a table with 3 fields, Replicate, R2 and Linearity. Outputs a polyline theme containing polylines of random walks. The polyline attribute table and the R2 table are linked by Replicate and LinkID. If replicates < 100, outputs a chart showing the r2 sorted in ascending order. To identify which r2 belongs with which polyline, select the record from the output table and view the selected polyline in the view. However,as the chart is dynamically linked to the table, selecting individual records will modify the charts color scheme. To save the original chart, add it to a static layout before viewing individual records in the r2 table.The O replicate in the output table and chart is the observed data the others are replicates from simulation runs. Works on selected point records or if none selected the entire table.A single selected polygon or polyline may be use to limit the extent of the random walks. Progress bar tells the progress through the simulation loop.
Create Polyline From Point File
Sets the characteristics for the movement path function button. Enter the following travel path graphic characteristics:
Calculates a series of descriptive statistics of the animal location point pattern and can output graphical representations of some statistics. Select a method for the output of location statistics. If nothing is selected then the routine will default to basic statistics and a screen report of the results. Multiple items from the list can be selected simultaneously. If any item is selected from the list and a screen report is desired then Screen Report must be selected. View Graphics will output the graphical results to the current view. Advanced Statistics contains those functions that require significant processing time namely the nearest neighbor analysis, Cramer-von mises, and the harmonic mean calculations. The harmonic mean calculation will query the user with the desired grid size which substantially effects the speed of the routine. The box showing the statistical boundaries is useful for evaluating the nearest neighbor analysis and Cramer-von mises both tests of complete spatial randomness. These boundaries can be adjusted in the individual menu choices for these functions.
View Graphics
Advanced Statistics Graphic Output
Nearest Neighbor Analysis Test For Complete Spatial Randomness The Nearest Neighbor Analysis program tests for complete spatial randomness using a selected graphic or polygon feature from a polygon shapefile. Returns a message box displaying the area of the chosen study site and the z and r values. This program references the FunNNDCSR, which implements the Clark and Evans (1954, Ecology 35. pp445-453) algorithm and allows for either points beyond the boundary to be used for correcting edge effects or uses the correction of Donnely (1978, Holder (eds) Simulation methods in archaeology. pp.91-95). This allows considerable flexibility. If the population has been completely sampled, e.g. animal locations from radio tracking or tag returns, then choose FALSE for correction and ignore the boundary boolean (i.e. set it to TRUE or FALSE as it won't matter). The program defaults to using the boundary correction for anlaysis. If you have not sampled the complete population then select either the edge correction or the boundary correction (if you have sample points beyond the boundary). It checks to see if the sample size is too small (from Donnely 1978) for the normal distribution. The FunNNDCSR which this program calls Nearest Neighbor Analysis has the following input and output structure: RETURNS: NNDCSR = {R, z, Significance} INPUT: Cramer-Von Mises Test for Complete Spatial Randomness Description: Works from a menu on either a selected point theme and a selected rectangle graphic or from a rectangle in a shape file. This function is only valid with a rectangular study plot. The wait cursor will appear and then a messagebox will tell you the W value and how many features were accounted for in the analysis. W values relate how clustered or dispersed points are within the graphic rectangle or rectangle theme you specified. A W value of greater than .3 indicates a tendency towards a clumped (clustered) pattern. A W value of 0.3-.06 indicates a random distribution. An R value of less than .06 indicates an organized (uniform) pattern. This statistical test The funCramer which this program calls Cramer_von Mises has the following input and output structure: RETURNS: cramer = {w,HeteroSign,OrderedSign} INPUT:
This implements circular statistics (Batschlet 1981) for the sequence of points in a point coverage. Useful for determining the travel directions from animal movement locations and the significance of direction of travel.. This function requires that the data be ordered in the sequence desired. The function works on the selected records (or all if none are selected) which is useful for examining parts of the movement path. The program will not tell the probability level of rejecting the null hypothesis of directed movement but will give the Z value and sample size which can be looked up in a Z table. The fun.CircularPtStats which this program calls Circular Point Statistics has the following input and output structure: RETURNS: CircleStatsList = TheNmbrBearings,Bearings,Distances,theMeanBearing,TheXMean, TheYMean,r,s,z} The number of bearings, The List of Bearings, The List of Distances, INPUT: TheFTab = Self.Get(0) 'The Ftab of the location points Does a series of circular spatial statistics on X,Y points representing animal locations or other travel path variables Outputs: Mean bearing, Number of Bearings with a length > 1,
Creates a polyline file using either the arithmetic mean, harmonic mean, or another theme to calculate the centers. Use the area and perimeter update tool to add the length measurements to the attribute table in the view distance units. This program is useful for building distance relationships between either the arithmetic (A) or harmonic mean (B) or other point (C) or polygon themes (D). It builds the lines up to the the closest objects using the center of that object. This is useful for developing test of habitat relationships that are not as sensitive to locational error or polygon mismapping as are point on polygon methods. A) Calculated with the arithmetic mean B) Calculated with the harmonic mean
C) Calculated with a point theme D) Calculated with a polygon theme
Description: The program first prompts for the type of centers to use. If the user selects themes the program creates spider diagrams based on the distances between the CLOSEST points (or center of shapes) contained in two themes. If the user selects Arithmetic or Harmonic Mean the program creates the spider diagram from just that one mean point. The Output is a new (spider) theme with distances stored in the FTAB. Takes the selected point theme and classifies it based on the selected field of a polygon theme. It adds a field to the point attribute table with the classification information. This works on the selected records or prompts the user if none are selected to use the entire point theme. Creates a histogram based on a selected field of a theme using its legend classification
Inputs: A selected point theme, the percentage of points to remove and whether they should be removed with or without replacement. Outputs: A selection of points with the outliers removed
Adds geographical coordinates of a point or the centroid of a polygon to the theme's attribute table. Coordinate values are based on the current projection of the view.
Calculates distance from selected items in one theme to items of another theme This script will prompt the user for two point themes in the active view: theFromTheme = the point theme containing the selected points that you wish to calculate the distance FROM. theToTheme = the point theme containing points that you wish to calculate the distance TO. The user will also be prompted for an identifying field in the FROM theme. The value of this field will be used to name to distance field in the TO theme. A distance field will be added to the TO theme for each point selected in the FROM theme. This distance field will be populated with the distance between the selected From point and the To point. If the view is projected, the distance will be returned in distance units.
Summarizes the attributes of the selected theme based on a dialog input box.
Sorts the attributes of the selected shapefile theme based on the chosen attribute. This script sorts a shapefile to ascending order using Avenue's dictionary data type to store original bitmap values indexed by sort field (unique) values. This does a permanent sort of the data. Sorting by date is required for several functions in movement. If you wish to keep the original sorting use the add. Requires: A shapefile with attributes and an unique key.
V. 2.0 VIEW MENU ADDITIONS
MOVEMENT MENU Animates the movement path at a given speed. Requires a polyline file of movement paths.
NOT IN V 2.0 BETA. NOT IN V 2.0 BETA. Conducts a DelaunayTriangulation of a point theme. Conducts a Dirichlet Tesselation of a point theme. NOT IN V.2.0 BETA. NOT IN V. 2.0 BETA. Creates a random point theme in the user specified graphic or polygon shape theme.
Calculates the distances between points and adds them to the table.
HOME RANGE MENU Conducts batch processing of any of the home range function and does point statistics.
This function will recalculate and update the area, length, and perimeter (if present) of selected items using the current projection and distance units of the view. Description: Calculates area and perimeter for polygon themes and length for line themes. If the View has been projected the calculations are in projected meters. Otherwise the calculations are in 'native' map units. Modify the script to provide calculation in the current report units of The script will add the fields: Area and Perimeter to polygon themes, Length to line themes if they do not exist. If the fields exist their values will be recalculated. Re-run the script if you change the projection of the view.
Creates a point buffer shape file. The user is asked to specify which, if any, of the point themes attributes will be associated Removes ALL graphics from the view. This can be quite useful in this extension which can create a lot of graphic objects.
Select the XY button and click anywhere on the view.
Degree of clustering or dispersion of points in a specified rectangle Once you click on the button, you will be asked for the study area shapefile and the study points shapefile. The wait cursor will appear and then a messagebox will tell you the R value and how many features were accounted for in the analysis. R values relate how clustered or dispersed points are within the polygon theme you specified. An R value of less than 1 indicates a tendency towards a clumped (clustered) pattern. An R value of 1 indicates a random distribution. An R value of greater than 1 indicates an organized (uniform) pattern. This script also applies a simple test of significance for deviation from randomness, using the standard error of the expected difference. This script uses code from the FUN.NNDCSR.
First, set the graphic symbols, colors, sizes and attribute field to display by running the set movement path variables function from the menu.
Description: Script runs from a tool and works on an active polyline theme. Script creates a sequential series of graphic lines which mimic underlying non-zero length polylines. Direction of travel is indicated by a graphic dot at the end of the most recently created graphic line. Complex polyline themes can be active but do not need to be visible. Useful for travel path analysis. Left click to move forward, shift key down and left click to move backward. Select any non-zero length polyline to start or start at the beginning by not selecting any polyline. Reset tool and graphics by re-clicking on its tool button. Record information is visible at the status line or via the identify dialog box. Generates a set of random normal points at the user click with the 99 percentile being the outer ring of the circle drawn by the user.
Displays field type information about a selected field in a table
Add Record Numbers Adds unique record numbers to the database either from the table order or the original data (vtab) order. Outputs selected records from an attribute table to a DBF table. Creates a new field with the cumulative total from the selected field. Prompts the user to go either forward or backwards in tallying the cumulative field. If the field has already been cumulated then it will update the tally. This function is useful in travel path analysis.
Creates a histogram based on a selected table field
Aebischer, N.J., Robertson, P.A., & Kenward, R.E. 1993. Compositional analysis of habitat use from animal radio-tracking data. Ecology 74:1313-1325. Alldredge, J.R. & Ratti, J.T. 1992. Further comparison of some statistical techniques for analysis of resource selection. J. Wildl. Manage. 56:1-9. Andersen, D.E. & Rongstad, O.J. 1989. Home-range estimates of Red-tailed Hawks based on random and systematic relocations. J. Wildl. Manage. 53:802-807. Anderson, D.J. 1982. The home range: A new nonparametric estimation technique. Ecology 63:103-112. Batschelet, E. 1981. Circular statistics in biology. Mathematics in Biology Missing Vol:Missing Pages. Boulanger, J.G. & White, G.C. 1990. A comparison of home-range estimators using Monte Carlo simulation. J. Wildl. Manage. 54:310-315. Calhoun, J.B. & Casby, J.U. 1958. Calculation of home range and a density of small mammals. U.S. Pub. Health Monog. 55:1-24. Diggle, P.J. 1983. Statistical Analysis of Spatial Point Patterns. Academic Press, New York. Dixon, K.R. & Chapman, J.A. 1980. Harmonic mean measure of animal activity areas. Ecology 61:1040-1044. Don, A.C. & Rennolls, K. 1983. A home range model incorporating biological attraction points. J. Anim. Ecol. 52:69-81. Doncaster, C.P. 1990. Non-parametric estimates of interaction from radio-tracking data. J. Theor. Biol. 143:431-443. Dunn, J.E. 1978. Optimal sampling in radio telemetry studies of home range. In: Shugart, J.H.H. (ed). Time Series and Ecological Processes. SIAM, Philadelphia, pp. 53-70. Dunn, J.E. & Brisbin, I.L. 1982. Characterizations of the multivariate ornstein-uhlenbeck diffusion process in the context of home range analysis. Dunn, J.E., Heithaus, E.R. & Sawyer, W.B. 1977. Analysis of radio telemetry data in studies of home range. Biometrics 33:85-101. Ford, S.D. 1983. Ecological studies on coyotes in northwestern indiana. 44:3587. Hartigan, J.A. 1987. Estimation of a convex density contour in two dimensions. J. Am. Stat. Assoc. 82:267-270. Hooge, P.N. 1995. Dispersal Dynamics of the Cooperatively Breeding Acorn Woodpecker. Unpubl. Ph.D., University of California at Berkeley. Jennrich, R.I. & Turner, F.B. 1969. Measurement of non-circular home range. J. Theor. Bio. 22:227-237. Kenward, R. 1987. Wildlife Radio Tagging: Equipment, Field Techniques and Data Analysis. Academic Press, London. Koeppl, J.W., Korch, G.W., Slade, N.A. & Airoldi, J.P. 1985. Robust statistics for spatial analysis: the center of activity. Occasional Papers of the Museum of Natural History 115:1-14. Nams, V.O. & Boutin, S. 1991. What is wrong with error polygons? J. Wildl. Manage. 55:172-176. Reynolds, T.D. & Laundré, J.W. 1990. Time intervals for estimating pronghorn and coyote home ranges and daily movements. J. Wildl. Manage. 54:316-322. Schoener, T.W. 1981. An empirically based estimate of home range. Theor. Pop. Biol. 20:281-325. Seaman, D.E. & Powell, R.A. 1996. An evaluation of the accuracy of kernel density estimators for home range analysis. Ecology (Washington D C) 77:2075-2085. Silverman, B.W. 1986. Density estimation for statistics and data analysis. Chapman and Hall, London, UK. Solow, A.R. 1989. Bootstrapping sparsely sampled spatial point patterns. Ecology 70:379-382. Spencer, S.R., Cameron, G.N. & Swihart, R.K. 1990. Operationally defining home range: temporal dependence exhibited by hispid cotton rats. Ecology 71:1817-1822. Spencer, W.D. & Barrett, R.H. 1984. An evaluation of the harmonic mean measure for defining carnivore activity areas. Acta Zoo. Fen. 171:255-259. Swihart, R.K. 1985. Statistical analysis of mammalian movements, with emphasis on the treatment of autocorrelated observations (home range, Microtus ochrogaster, radiotelemetry, Sigmodon hispidus). 47:488. Tufto, J., Andersen, R. & Linnell, J. 1996. Habitat use and ecological correlates of home range size in a small cervid: the roe deer. J. Anim. Ecol. 65:715-724. White, G.C. & Garrott, R.A. 1990. Analysis of wildlife radio-tracking data. Academic Press, San Diego. Worton, B.J. 1987. A review of models of home range for animal movement. Ecol. Modell. 38:277-298. Worton, B.J. 1989. Kernel methods for estimating the utilization distribution in home-range studies. Ecology 70:164-168. Zimmerman, D.L. 1993, A bivariate Cramer- von Mises type of test for spatial randomness, Appl. Statist. V. 42. pp. 43-54 |