Felix Grant tests out some of Wolfram's spin-off products, which aim to push the company into new market.
Mathematica is a well-established feature of the scientific computing landscape: seminal but not unique. Other products conduct both symbolic and numeric mathematical manipulations; each product has a distinctive psychology behind its development. One interesting aspect of Wolfram Research, and Mathematica, is the extent to which this psychology is perceptibly influenced by one personality. Another is the way that Wolfram (the organisation) has for sometime been 'spinning off' products which spread influence by penetrating core technology into niche markets.
Last year's publication of Stephen Wolfram's dense tome A New Kind of Science (ANKoS) was followed by discussion of its value in its own terms. I'm personally inclined to think, though, that its significance (and perhaps its intent) lay in another direction: that the splash was at least as significant as the landing.
- Developing a worksheet in Mathematica Teachers' Edition: A worksheet is being developed in MTE, using the Mathematica help browser for reference. Superimposed in the foreground is the opening panel (key to resource organisation) of another worksheet about to be written.
ANKoS was followed by a software release: the New Kind of Science Explorer (NKSE). This was not a conventional commercial outgrowth from a successful product; it was, like the book, a leveraging of one position in the world (Mathematica's commanding position) to secure another (the introduction of an idea or set of ideas). It was, in other words, a strategic political act. I use the word 'political' in the operational sense. Such politics are an inevitable and unexceptionable part of everyday life.
Other software houses have sought to buy (sorry - sponsor!) their way into public or academic visibility; but ANKoS, I think, was a novel move to conjure a way into both by display. If those students I encounter are typical, the conjuring is effective.
While I am not myself a fan of ANKoS, I am intrigued by this phenomenon in a market which seemed to have set into a predictable mould. With this perspective, I've spent some months progressively looking at other recent Wolfram developments. I took them out on the road in search of people and contexts which would allow me an insight into them.
One of these products, which first sparked my interest, was Mathematical Explorer (ME) which takes the user on an interactive journey through some of the history of mathematical ideas. I won't spend time on it here (it has already been reviewed in Scientific Computing World, May-June 2002, page 52), but it influenced my view of almost everything else. Although it is very much the work of one outsider, it fits very well into the general Wolfram picture. If you are going to colonise the general body of discourse within a subject area, you need to address the specific of education.
NKSE and ME, both highly effective educational 'honey traps', have been joined by Mathematica Teachers' Edition (MTE), which provides a more traditionally formalised platform. Despite the childhood connotations of the word 'teacher' in European ears, all three prove effective at any level: I trialled them with equal success on learners from kindergarten to university. MTE, like other similar spin-offs, carries its own kernel. The notebooks are fully functional and compliant Mathematica documents; and the Windows user interface is built around the same core design as the flagship product. What makes this specifically an educator's tool is the provision of specialist palettes for designing and managing teaching/learning resources. I later added the third party add-in product Geometrica, by Bruno Autin. My interest goes beyond the educational sphere: my experience is that generic tools which educate well are also effective to use.
- Experimenting with the paraxial function in Geometrica.
Across a network
Extended application of Mathematica across a network cluster of machines is now available - handled not by a separate parallel product, but by an extension of the standard product through the addition of gridMathematica. A master kernel and license manager run on one of these machines, which controls the operations of a conventional kernel on each of the others.
The network can be of any size, and each can have its own Mathematica kernel, but the cluster will always be some subset defined by the license. Input, output, and scheduling are handled from the central machine, although the operator or batch file control can be managed from anywhere.
Next up my list was Control System Professional Suite (CSP), a prime example of the way Mathematica is competitively evolving. Not really an entity in itself, it provides a means for assembling a modular structure of application packages around the kernel to produce a new, functionally organic whole. The basis is Control System Professional 2, a precursor product which has been extensively revamped. To this has been added, so far, Advanced Numerical Methods package (ANM). ANM is not (so far as I know) available separately - but in my opinion ought to be.
- Interactions in advanced numerical methods: Using an adapted help browser example, a student uses ANM's Riccati tools to investigate the parameters of a social stability simulation.
Access to a real factory where I could try out Control System Professional on a real production line, or access to a traffic system, was obviously out of the question. CSP describes itself as being for 'common interdisciplinary control problems'. 'Interdisciplinary' is my favourite word; I encouraged several interdisciplinary undergraduate projects to coalesce around these Wolfram packages. These became progressively more interesting as the software built up, culminating in two which used the whole gamut - with Geometrica arriving at the last minute, just in time to round them off. The first project, bravely hosted by a regional theatre management, involved analyses of several sports, entertainment, and performance events viewed as interlocking systems. This culminated in the evolution of a general staging model, which was then used to explore plans for new productions. The second, run within a university and again focused on interacting systems, started as a hypothetical Richardson modelling of possible events in Iraq. This one mutated into a real-time modelling/analysis loop when reality overtook hypothesis. The students involved in both of these were voluntary participants in optional courses, so motivation was high. Their involvement originated in interest generated by NKSE and ME, so the Mathematica interface was not alien to them. On the other hand, only a minority were from mathematics, science or engineering backgrounds, with most being from the humanities. There was a steep cultural slope to climb, and a need for wide differentiation of learning material. It was a good test of this product bundle's usability, and also a good opportunity for live experiential learning.
There is a trade-off between visual and symbolic approaches to modelling of systems. Most human beings are happier with visual/spatial representations, but mental overload soon sets in as complexity increases. In trying to model the interaction of dancers in a fast moving ballet, for instance, students found it much easier to build a symbolic black box for each component system (choreography, lighting, music, and so on). This was even truer of a football match.
Control System Professional is object oriented, with a clear and easily manipulable symbolic approach. Numeric CSP models, drawing on the ANM module, are easily built, analysed, manipulated, plotted, and tested. Mathematica has other visualisation tools and Geometrica provides a good building kit for some of these. CSP was set up to swallow discrete time and frequency data from a number of asynchronous (often cluster sampled) sources, and to run parallel analogue models whose parameters could be varied externally. The whole system worked well, passing its ultimate test by running smoothly enough to keep the interest of the students using it. Subgroups took on and 'owned' subsystems of each project with surprising enthusiasm.
Advanced Numerical Methods expands what CSP can do, by making available a wide swathe of additional techniques applicable to, though not limited to, control theory. It is a Mathematica application package which slots into CSP's set-up.
The resulting expansion of Mathematica's linear algebra capability is radical; it was also beyond most of the students, but provided the top level of learning differentiation by stretching the older and most able mathematics undergraduates. For most tasks ANM provides several alternative algorithms, so the user has a choice of the best tool for the job. There is also a built-in option for semi-automatic algorithm selection; I was very grateful for this, as everyone involved came close to the pain threshold. (ANM, more than any other component, produced complaints of 'my brain is full' - and I often felt the same way myself). If I was mad enough to try this again, I would make greater linkages between ANM and the standard graphical routines in Mathematica; a lot of possibilities beckoned, which could only be sketchily explored within the available time.
Far more intensively used for graphical work, although not available until the couple of weeks of the experiment, was Geometrica (strictly, Geometrica02, which replaces the previous version, Geometrica97). This is a package of routines, which effectively 'tame' Mathematica's geometric (and other) constructs into a very quickly and easily usable set of tools for Cartesian, Euclidean, parametric and 3D geometry. A trial with small student groups showed that patience ran out much more rapidly when trying to draw with Mathematica itself. Geometrica offers much more rapid 'results fulfilment reward'.
Perhaps the human biggest success of this whole experiment was a pair of art students who had failed GCSE mathematics at school and had struggled throughout the course of the theatre project - but used Geometrica to build CSP output illustration windows unaided. The package is intended for teaching, and serves that purpose well; but with some thought it has a lot of practical applications well beyond education.
Offer of help
My competence was stretched to the limit in setting up and handling gridMathematica. So, offered help by a local authority IT-support department with emergency civil planning experience, I jumped at the chance. They brought to the Iraq project not only relevant technical expertise but more recent and sophisticated modelling techniques than I could offer. For comparison purposes, models run under gridMathematica were mirrored under one copy of Mathematica on another machine. At first, there seemed little difference. As my expert mentors got to grips with gridMathematica, however, a gap began to open up. The benefit varied with the operations being performed, sometimes being lost entirely in communications overhead but at other times quite spectacular.
In the best cases, where computationally intensive processes were running continuously for relatively long periods in several interdependent systems but only interacting at defined points, the improvement was better than two orders of magnitude. Overall, our dispersed models tended to run at between two and five times the speed of those on the control - enough to permit significantly more work to be done in the available time.
Given the nature of the students involved, there was a lot of intensive supported self-study going on in order to enable their participation. Mathematica Teachers' Edition came into its own here. I have to declare a prejudice at this point: the top-down 'magister' model of instructional education which MTE exists to serve is not one which I personally embrace with enthusiasm.
For this reason, I would not see myself using the package in the long run from choice. That model is, however, the dominant one; many around me believe in it, and I was careful to seek their views of MTE. Some of the students were following teaching qualifications parallel to their subjects, and other faculty staff were involved; all were delighted with the ability to easily generate well-formatted training materials. If it hadn't been a review copy with constraints on what I could do with it, I could have found an enthusiastic home for my MTE disk many times over.
Worksheets are the core of MTE use; they are live Mathematica documents. Once a worksheet is set up, therefore, it can be altered in any detail with all consequences rippled through the rest of the document; and, of course, solutions can be generated with ease. All of that could be done with Mathematica itself; but MTE includes tools for efficient generation and management of the resources, which Mathematica itself does not. It also includes 'courseware' and class demonstration materials.
These last are probably not directly useful for most industrial or other in-house professional development work, since they cover a range roughly equivalent to mathematics curricula at age 11 to 18 (say, up to A-level or a little way into first year degree in Britain). They are, however, a good model of how the package can be used. A medical physicist within a French hospital, with no education experience but recently tasked with teaching trainees, commented after running through the package that the experience had resolved his worries about structuring an introductory course. The trainee teachers within my two projects similarly 'hollowed out' the course ware and demonstrations for repopulation with material for instructing their peers.
Some time ago (see Scientific Computing World, July 2001) I experimented with numerical simulations as an educational tool; specifically, games and an invasion. Those experiments were carried out with software aimed at the educational market, but formed a good basis for the present case with 'real' software.
CSP's built in tools include all the necessary controls to enable a scenario involving competing subsystemic blocks to be run and re-run, testing the responses to different pathways. A sudden, unexpected breakthrough by a striker in a soccer match; a fall by a dancer during pas de deux; the collapse of one defensive position during a marine landing; all can be modelled as impulse events, with ramped reactions that ripple out through the rest of the structure as other components react after assessment delay.
Complexity can be reduced, for instance by allowing a set of systems to cascade within their own closed container or generating singular value plots for multiple in/out subsystems. 'Playing' with the variables in a CSP model allows the analogue results to be compared with the known sampled data recorded from the real events. One student described it as being 'the nearest thing to a Playing God Kit'.
All of this analysis and comparison, of course, is all very well; but, as a final assessment exercise, each group had to demonstrate control via their developed models.
In the theatre case, this took the form of a script for a production with CSP issuing lighting and sound corrections for any divergences - with some members of the group being instructed to sabotage the performance unpredictably in small ways at whim.
In the Iraq model, information from news coverage was fed into the model to see how well the control systems within it echoed actual events on the ground.
The results on stage were astonishingly effective. Correspondences between electronic and real versions of the unfolding war were inevitably more haphazard, but still impressive given the diversity of variables and partial nature of information for input. More important, study of the differences between expected and actual behaviours in both cases revealed important insights on the topology of interactions and the output equivalence of apparently different constructs.
I said at the beginning that Wolfram was moving to colonise mathematical discourse. Students who are attracted by ANKoS could, of course, pursue its ideas and assertions by other software means; but branding is well established now, and I've found them resistant to exploration of their ANKoS enthusiasm through other packages or raw computer languages.
Given support and encouragement, they are willing to put in the time with Mathematica despite general antipathy to mathematics, because it is seen as the brand within which their intellectual curiosity has been piqued. Other satellite Wolfram or third-party products are then well positioned to capitalise on this brand loyalty. I don't know whether this colonisation will work, producing a future generation which speaks Mathematica as its academic lingua franca of choice; but first signs suggest that the possibility is a real one.