I am actively looking for potential Masters and PhD students. To work under my supervision, you need:
- to be accepted by the University,
- to be interested in research similar to my own, and
- to have skills in (1) linear and integer optimisation and (2) computer programming.
What follows are my own thoughts. This is not official. The University web site is final source of information. However, I have received many enquiries, so I felt I should post some suggestions.
For your University application, my role would be almost as a bystander. After your application arrives, I may volunteer to supervise you, if your application is good enough. The application must follow our internal procedures, and will be rejected if no staff is willing to supervise you.
I recommend that you look at the University's web site for international admissions, and for scholarships. For your University application, you will need to send your own school transcripts, and recommendations from your previous lecturers. If you have a masters degree with first class honours, you have a chance to get a scholarship. I have no control over the scholarship process. Scholarships are awarded by the University, not by me.
To prepare for the English language requirement, I recommend that you look at the University's information on IELTS, which includes a University program to avoid the IELTS exam. I would need to see a sample of your writing in English. If you send a paper which has material copied from elsewhere, even four or five words in a row, you will have a difficult time being accepted here. With Google, this is easy to check.
As part of your PhD proposal, you will need to write five to ten pages about what you want to study. To work with me, your interest should fit into my own research. This should be negotiated with me. Don't waste your time sending a proposal that is heavily copied, even if re-worded, from the internet. Copying material without attribution violates this University's standards, and is even easier to catch than it is to do.
I am working on what I consider quite important problems. For a really outstanding student with an excellent proposal, I would be willing to supervise a PhD in something unrelated to what I am doing. Generally, however, your interests need to coincide with my own. If you are not sure what to study, we can discuss this.
Currently, I am researching primarily on management of fresh water. The entire world is in a crisis of fresh water, in a lack of quantity and from bad quality. The water crisis is a serious issue even in international politics.
I have developed a system that would allow a market for fresh water that is both sustainable and compassionate. I strongly believe that the world will have to use a system like mine to solve the fresh water crisis. The system works by connecting a hydrological simulation to a linear program, with users' bids. In some ways, it is classic decision support. If you are very bright, I would want to attract you to work on this important problem of water allocation. This system will save lives and the environment.
To work with me in water allocation, you would need programming skills (C++ and Visual Basic .Net), and training in linear programming. During your PhD, you would learn much about market operations, and you would probably help to implement a real water trading system (the world's first of its kind) here in New Zealand.
I am also working on problems of nutrition. The world has serious problems with nutrition, such as malnutrition in developing countries and obesity in developed countries. Many studies have found strong relationships between nutrition to education, and nutrition to crime. I am working to devise a computer program that will assist people with diet and meal planning. To see an example of how this program might work, look at Diet Power. The Diet Power program is good, but is missing important features that I think are needed. This has potentially commercial applications.
I have some interest in data visualisation as it relates to optimisation. If you are interested in visualization, here are some of my ideas:
- spreadsheet layout, e.g., what is the best way to write a spreadsheet for readability (interesting graph problems here),
- write a new graphical solution method for the traveling salesman problem.
- develop a new type of spreadsheet based on network visualization.
- investigate SVG and other web technologies for optimisation.
I am interested in education. This has two parts. In the first part of this education work, I am interested in developing specific tools to help my students learn linear programming more easily. Projects include:
- develop a user interface for writing linear programming models.
- develop a web-based tutorial for teaching linear programming.
In the second part of this education work, I am interested in models to find optimal trajectories of policy. For example, what sequence of education would best serve mentally handicapped children? The models would be stochastic linear programs, and the difficult part would be obtaining the data.
I have an on-going interest in integer programming and combinatorial optimisation. For example, I am interested in the traveling salesman problem and the job shop scheduling problem. Unfortunately, many other people have given these quite a lot of attention, and it is unlikely that you would be able to make much of a contribution in these areas. Still, if you are keen to work in this area, perhaps we could agree on a topic.
If you have your own application, such as revenue management, an interesting problem of the environment (such as how to locate solar panels or wind vanes), or a good scheduling problem, feel free to discuss it with me.
To get into the PhD program in Management Science, you must have knowledge in linear and integer programming, similar to what is provided in our undergraduate and Honours programmes in Management Science. You should be familiar with one or more linear programming solvers, such as AMPL, Lindo, the Gnu LP Kit, MS Excel's Solver, or LP_Solve.
In addition to training in linear and integer programming, you would need training in computer programming. This is a new course requirement in Management Science for our Honours students, starting in 2005. Completion in a course like COSC 121 with a grade of B or better would be acceptable (before you apply to the PhD). But to work with me, you really should have more.
During your PhD, you will need to do many chores with the computer. You should notice that all the research that I described requires some sophisticated computer programming. For work with me, you need training in C++. You will not have time to learn optimisation or programming after you start your PhD. You need these before you apply.
You will almost certainly need to write a C++ algorithm which connects to a commercial solver such as Lindo (as described on the Lindo API page, CPlex (as described on CPlex Component Libraries), or the COIN-OR LP solver (e.g. the CLP User Guide; see also the COIN Open Solver Interface). I don't expect you to know these interfaces before you arrive, but I would expect you to know enough C++ and optimisation that you can get going on these quickly.
You may need to do some other random computer chore, such as to set up a wiki, or to write ASP code to produce an SVG graph from an on-line database. Again, I don't expect you to know all about these technologies before you arrive, but you will need to be able to do such computer chores without a lot of help.
If you have the required skills, and if you are interested in helping to solve important problems, then let me know. I commend you for choosing New Zealand as a place to study. I am an American, not a native. NZ takes some getting used to, but this is a lovely country.
Email: john.raffensperger@canterbury.ac.nz. Last updated 25 Jan 2006.