|Inventions, patents, and software|
Inventions, patents, and software
The Linux Operating System
Linux (http://www.cs.helsinki.fi/linux/) is a multi-user, multitasking and multiprocessing (SMP) POSIX-compliant operating system for Intel x86, Digital Alpha, Sparc, Mips, and Motorola PowerPC machines.
The work on the Linux operating system was started by our student Linus Torvalds as a hobby. He announced the development kernel code in Internet in late 1991, and Linux was quickly pushed ahead by thousands of skilled people across the Internet. The development was co-ordinated by Torvalds. He released the first full-featured 'official' kernel version 1.0 in April 1994 at the University of Helsinki. The current version is 2.2 (released January 25, 1999), and development continues. Torvalds' work was supported 1994-96 by the Department of Computer Science by giving him a scientific assistant position.
Linux is freely distributable under GNU Public Licence, and most of the programs run under Linux are generic UNIX freeware, many of them from the GNU project.
Linux has become a very attractive alternative to operating systems. It is largely used especially by academic institutions. It has been estimated that Linux is currently run in more than 12 million computers.
Mowgli (Mobile Workstations using GSM Links)
The MOWGLI project (M. Tienari, T. Alanko, K. Raatikainen) developed a prototype system to test the new conceptual ideas for enhanced data transportation services over a cellular telephone network. The software includes an essentially new data communication infrastructure, a set of generic and application-oriented agents, and some generic services intended for either asynchronous or weakly connected co-operation of system components over the wireless link. The system became operational in academic and demonstration versions.
Nokia Artus Wireless Data Enhancer is a wireless data product that the Nokia Corporation has announced for the Nokia Artus product family. The product is based on the mobile computing and communication architecture developed in the Mowgli project.
The ideas developed in the Mowgli project have also had their impact within various international standardisation efforts of the computer and data communication industry: some ideas have been directly adapted in WAP (Wireless Application Protocols), and they are currently under discussion in IETF (Internet Engineering Task Force) and MNCRS (Mobile Network Computer Reference Specification).
Koptimi is a tool for solving highly constrained 3-dimensional bin-packing type optimisation problems. This program, developed by the CoSCo research group (H. Tirri, P. Myllymäki) and commercialised by Tieto Corporation, is currently being used at several domestic and international branch offices of the StoraEnso company for planning the loading of paper reels and coils in large ship containers. Future versions will be provided with more sophisticated visualisation features including support for 3-dimensional VRML browsing of the solutions found by the program.
TASA (Telecommunication Alarm Sequence Analyzer) is a data mining tool developed in the Data Mining Group (H. Mannila, H. Toivonen, M. Klemettinen) for analysing telecommunication networks alarms. The purpose of TASA is to aid in the knowledge acquisition phase for creating an alarm correlation model. TASA discovers automatically both temporal connections between different types of alarms (episode rules) and relationships between alarm properties (association rules).
Different versions of the TASA system have been in prototype use in four telecommunication companies (HPY, Nokia, TPO, Radiolinja) since the beginning of 1995. Since fall 1998, one of the companies has further developed the system and they intend to integrate TASA into their existing network management systems.
Sgrep (structured grep) is a tool for searching and indexing text, SGML, XML and HTML files, and for filtering text streams using structural criteria. The tool implements a fully compositional query language based on modelling text structures by unrestricted sets of substrings called regions. Sgrep and its query language have been developed in the DocMan group (P. Kilpeläinen, H. Ahonen, G. Lindén) since 1995. Sgrep is available on Windows 95/98/NT, Linux, and most Unix systems. Early versions of sgrep are distributed on CD-ROMs accompanying two books published by Prentice Hall ("The SGML Buyer's Guide" and "Designing XML Internet Applications"). Sgrep is also included on the Debian Linux distribution package. It is distributed and used by several thousands of people world-wide under the GNU General Public License and is available at http://www.cs.helsinki.fi/~jjaakkol/sgrep.html
Other software available from the WWW server of the department
BAYDA (Bayesian Discriminant Analysis) is a Java software package for flexible data analysis in classification domains. For predicting the class memberships, BAYDA performs fully Bayesian predictive inference based on a Naive Bayes model with the marginal likelihood predictive distribution. As demonstrated in several studies, using model parameter averaging improves classification performance substantially, especially with small samples. On the other hand, it is well-known that the Naive Bayes classifier model makes strong independence assumptions that are frequently violated in practice. For this reason, the BAYDA software also provides a feature selection scheme which can be used for analysing the problem domain, and for improving the prediction accuracy of the models constructed by BAYDA. The feature selection scheme utilises a novel Bayesian criterion based on supervised marginal likelihood.
BAYDA is available free of charge for research and teaching purposes from "http://www.cs.Helsinki.FI/research/cosco/" under section "Software", and it has currently been tested on Windows'95/NT, SunOS and Linux platforms. However, being implemented in 100% Java, it should be executable on all platforms supporting Java.
Jeliot is a Web-based visualisation environment for easy algorithm animation. Jeliot was developed by the AAPS group (J. Tarhio, E. Sutinen). The user submits his algorithm as a Java program to Jeliot and receives it back as Java byte code containing an adjustable animation as an intended side-effect. While running the animation, the user selects the variables of the algorithm he likes to visualise and controls their visual characteristics. To use Jeliot one has to have a browser that supports Java. Jeliot is available at http://www.cs.Helsinki.FI/research/aaps/Jeliot/