Up: Recent Research Projects

Der Münchner Mietspiegel / The Munich Rent Advisor

This real-life application brings constraints to the internet. It is a small expert system that allows one to calculate the typical rent of a flat in Munich based on your input to a questionnaire. The Munich Rent Advisor (MRA) won the prize for best application at JFPLC, Clermont Ferrand, France, June 1996. The MRA was shown at SYSTEMS 96 Computer Show in Munich, Germany, October 1996. Every other year the city government of Munich publishes a booklet called the "Mietspiegel". It allows any citizen to calculate the estimated fair rent of his flat. The result of this calculations are typically used in civil court cases and for comparing offers. The "Mietspiegel" contains explanations to read, tables to lookup and rules to follow. Basically, the "Mietspiegel" contains a verbal description of an expert system. This expert system is a statistical model compiled from sample data using statistical methods such as regression analysis.

Equipped with pencil, paper and calculator, one may need a weekend to figure out the estimated rent. Usually, the calculation is performed by hand in about half on hour by an expert from the City of Munich or from one of the renters associations. With our computerized version, we brought the calculation time down to a few minutes.

The calculations are based on size, age and location of the flat and a series of detailed yes/no questions about the flat and the house it is in. Some of these questions are hard to answer (e.g. ``Is the house looking good?'' or ``In the bathroom, are the tiles on the walls more than 180cm high?''). However, to be able to calculate the rent estimate by hand, all questions must be answered. Moreover, due to the underlying statistical model, there is the problem of inherent imprecision which is ignored in the paper version of the "Mietspiegel".

With high-level programming in ECLiPSe, a powerful logic programming language, the tables and rules are easily encoded, always assuming that complete information is available. With advanced constraint technology provided by constraint handling rules, the computations can then be performed even when some questions are left unanswered. In addition, the imprecision of the statistical model can be captured by constraints. Instead of computing with actual values, the program computes with ranges (intervals). Our conclusion is that constraint-based computing can deal with imprecise knowledge and partial information in an elegant, correct and efficient way.

For those familiar with constraint logic programming let us point out that the application is characterized by

While it would be difficult to encode the required functionality with given, built-in black-box constraints systems, this functionality is easily provided using constraint handling rules (CHRs). It sufficed to modify an existing finite domains solver written in CHRs.

To calculate one's rent one does not have to acquire some software, but rather one can use the internet and the convenience of the world-wide-web to fill in the questionnaire and compute the rent estimate. The electronic Munich Rent Advisor is an example of an ``intelligent information server''.

It took about 4 man weeks to write the web user interface, only 2 weeks to write the expert system code and 1 week to debug it. We think that the coding would have dominated the implementation effort if a conventional programming language had been used. Our very high-level state-of-the-art approach also means that the program can be easily maintained and modified. This is crucial, since every city and every new version of the "Mietspiegel" comes with with different tables and rules.

Try It Out Now!

(Paper, Postscript, 520k)

Gleich Ausprobieren!

Paper in German (ps.Z): Thom Frühwirth and S. Abdennadher, Der Mietspiegel im Internet, Ein Fall f"ur Constraint-Logikprogrammierung (in German), KI - K"unstliche Intelligenz 1/97, Themenheft Constraints (H. W. Guesgen and J. Hertzberg, Eds.), April 1997.

Thom Frühwirth, updated Nov 21 2002