ALOGIT works under Windows 7 and later as well as some older variants (XP, 2000, NT, 98 and 95) and has been installed at well over 200 locations around the world.
ALOGIT estimates the parameters of generalised logit models. The main generalisations are
- tree (nested, hierarchical) models allowing the alternatives in the model to be related in less retrained ways than in simple logit models but still retaining ease of use and speed of operation;
- mixed logit models, implemented using the flexible ‘error components’ specification, which works with either linear or the exponentiated form, which allows, for instance log-normal disturbances in the coefficients.
Mixed logit models are possible only with the EC variant of the software.
ALOGIT performs four key functions.
- revealed preference or stated preference, disaggregate or aggregate data can be used; choice, ranking or proportional split data can be employed;
- input data can be manipulated and transformed freely to allow the user freedom in finding the required explanation of behaviour; extensive testing of input data to reveal modelling problems; simple controls, yet giving access when required to full sophistication;
- multiple data sets of different formats are accepted, either in succession or linked using named (key) variables; some binary matrix formats are supported.
- all coefficients are estimated simultaneously using maximum likelihood estimation (i.e. ‘full information’ estimates);
- models can be binomial, multinomial, or tree (nested) logit models, with unlimited branches and levels; alternatively, mixed logit or error component analysis, including differing distributions (including exponentials, e.g. lognormal) and correlated error terms;
- non-linear utility functions allow attraction variables to be included correctly;
- composite alternatives can be indicated as chosen;
- coefficient estimates, standard errors, correctly calculated elasticities, consumer surplus measures and several detailed tests are all standard, with informative, clearly labelled, well-laid-out output, suitable for immediate incorporation in reports;
- a function in the ALOGIT Shell can be used to make comparisons between different model variants;
- an option for initial linear estimation reduces run time for complex models;
- problem sizes are not limited by ALOGIT.
- the user can specify detailed scenarios which incorporate a series of changes in the variables influencing choice, and ALOGIT can predict, display and analyse the consequent changes in behaviour;
- a function in the ALOGIT Shell can be used to make graphical and tabular presentations of scenario outputs; alternatively, output can be made to other programs such as Excel.
- ALOGIT can be used for a range of simple data processing tasks, using the control language and statistical reporting procedures to give an efficient working environment;
- in particular, files can be output in very flexible ways (e.g. reformatted, respecified, sorted) for processing by other software.
All of these functions are controlled by ALOGIT’s intuitive control file, with
- a very flexible command language, including named variables, intuitively appealing definition structure for hierarchical models, named Boolean operators (TRUE, FALSE, AVAIL etc.);
- include file option for use of external files with command lines or coefficients, streamlining model (estimation) management;
- array definition of alternatives, system data items and variables;
- random number generator (using uniform, normal, logistic distributions or assignment of multinomial variable with specific probabilities);
- ‘if ... THEN ... ELSE... END’ and ‘DO ... END’ syntax, to simplify data transformations;
- intuitive specification of tree logit models using $NEST commands.
ALOGIT is controlled by the Shell program, which acts as an interface between the user, Windows and the ALOGIT program itself.
The Shell’s main role is to edit ALOGIT control files and to run ALOGIT. In these functions it offers all the standard Windows operations with cut-and-paste editing and its own Help system. The Shell facilitates working with multiple models in a project. Additionally, it has further functions...
- the capability to make Jack-knife runs to explore the impact of model specification errors;
- a coefficient comparison viewer, with a function allowing the user to examine the difference in coefficient values between models; the Shell can also calculate correct errors in coefficient differences, allowing a statistical test of whether coefficients are different, and errors in coefficient ratios, so that error in (for example) willingness to pay can be calculated
- a user friendly Windows based batch file program which can be activated from the shell, allowing the user to perform multiple ALOGIT runs;
- the integration of a reporting system, allowing the presentation of model scenario output using tables and graphs.
The Shell also controls the editing of ALOGIT INI files, which control the way in which ALOGIT interacts with the PC: the use of RAM, production of screen reports and the deletion of scratch files, for instance.
Normalisations in ALOGIT Tree Models
This property is generally well understood by tree logit modellers, indeed the ability to get differing cross-elasticities is an important reason for using the tree logit form. The structural coefficient is, in the simplest case, simply the ratio of the cross-elasticities between groups to those within groups. However, tree logit models contain ‘structural’ coefficients which allow the cross-elasticities of demand within groups of alternatives to be different (larger than) the cross-elasticities between groups. The symmetry of the MNL implies that all the cross-elasticities of demand with respect to the price of one alternative are equal. The characteristic of the ‘tree’ logit model is that it offers the modeller the ability to escape from the assumption of complete symmetry among the alternatives embodied in the linear multinomial logit model (MNL).
For practical purposes each of the alternatives has both advantages and disadvantages. Two alternative definitions are to be found in the text books and academic papers on the subject. Theoretically, quite a large variety of definitions could be specified. However, it is not always realised that there is more than one way to define structural coefficients in a logit model.
The purpose of this note is to elaborate on these issues and to explain why we have chosen the method of calculating structural coefficients that is used in ALOGIT.