Power to the end user with ALaDin interfaces Introduction ALaDIn interface is a new revolutionary technology to build powerful man machine interfaces, well suited for mobile phones, car navigators but also washing machines and big domestic appliances. ALaDIn is ready to satisfy most of advanced consumer needs. ALaDIn can also be used to power classic Database Client server applications and to build translation tools.
The problem Have you ever forgot your mobile on and to be waked up in the earth of the night by an unwanted call? Or to remember of your favourite TV program just in time to see the end titles? Or to loose your dreams last minute trip because you can’t spend all your time navigating Internet? We wonder why technology can’t help us. Perhaps, you say, because there are not mobile phones smart enough to filter nightly calls, or TVs that turn on every Monday on the sixty channel at 9:00 PM or even smart search engines that warn us about something interesting. No, it’s not so. If you have the patience to read your TV or mobile instruction manual probably you’ll discover that you wished exists and if you have still patience you probably will get it. But why should we suffer to get more functionalities by our mobile phone when I simply could order to it: “I Don’t want to be disturbed after 10.00 PM by someone except by my relatives”. And to my TV I should say “Don’t let me miss my favourite program every Monday on sixty channel at 10:00 PM”. A polite TV should answer “Shall I record it if you’re not at home?” The current graphical Interface failed to get end users closer to advanced features: even if well designed and user friendly, graphical Interface become too much complicated when use to handle articulated commands which, on the other hand, are extremely simple to expressed in common text language. The answer didn’t come from Artificial Intelligence either. Let the end user the freedom to build any kind of commands has been a failure: calculator are not enough intelligent to understand such commands and the end user, not informed about the real features of that technology, issues ambiguous or out of context commands. As we’ll see ALaDIn Interfaces let to issue complex commands in a simple, not ambiguous way, opening to every end user the effective technology capabilities of every kind of devices.
Language Driven Interface In these three keywords is all the core of this new technology which can be applied to every kind of programmable devices with a graphical or textual interface: Language: because it uses the textual language to lead the devices. “Hide all contacts I haven't heard from since one year” it could be the command to clean my mobile phone contact list. Complex commands can be issued in an intuitive easy way even to small consumer electronic device. Driven: because end users are driven step by step to compose the commands and at every step are shown the available choices. How it happens is the matter of next paragraphs. Interface: ALaDIn’s just an interface and NOT an IA algorithm which parses natural language text. All the commands that can be issued are designed and tested and lead to a predictable result. The implementation of ALaDIn’s commands on devices is not part of ALaDIn’s Interface and it’s pure engineering problem.
As we’ll see is possible to have a lots of AlaDIn interfaces depending on the kind of display and keyboard. Usually a AlaDIn interface shows to user a first choice of textual commands among the user must choice. After you’ve selected the first command the interface write it on the display and shows the textual options for that command. After you’ve selected the option it writes it after the command and shows new options and so on till a valid command has been composed. At this point, after asked for command confirmation, it will be put in execution on the device. As examples, to compose the command “I don’t want to be disturbed after 10.00 PM by someone except by my relatives” AlaDIn will propose you some commands. Selected “I Don’t want to be disturbed ”AlaDIn will propose “after “ or ”between”. Selected “after” AlaDIn will propose “8PM” or “9PM” or “10PM”. After the last selection a prompt will ask you “Are you sure to block all calls after 10PM except your relative calls?” showing a “Yes” or “Not” selection. Answering “yes” will make executable this command.
Application: ALaDIn for mobile phones ALaDIn is a great interface to be used for advanced features on mobile phones. Textual composition is very suitable for small displays where graphical interfaces are not allowed; besides, the mobile user is very familiar with writing text to send SMS messages. Even if the definition of advanced mobile features is out of the scope of this article here are some examples: • Calls filtering using time and callers filter • Calls rates customization • Turn on –off timer • Contacts managing • Warns on contacts call frequency. • Finding and booking services (hotel, taxi, trips…) In picture 1 is shown a possible ALaDIn interface for mobile phone: a timed mechanism show one a time, the possible words that compose the command. Every word is visualized for three second. To select one is sufficient to push the numeric button that contains the letter starting the word: the word will be written on the display and will be shown the next available choices.
In those five pictures is shown an example of ALaDIn interface for mobile phone whit small display. In picture 1 is shown as pressing the button 3 (letter D) the command “Don’t disturb me” is selected while pressing 4 (letter H) you would have select “Hide”. After you selected “Don’t disturb me” the interface shows the two choices “After” and “Before” : pressing 1 one time (letter A) you’ll choice “After” while pressing 1 two times (letter B) you’ll choice “Before” and so on till the command completion. It’s important to note that: 1. The command sentences are built at the design time of the ALaDIn interface: is not possible for user to write command sentences out of interface pre-established set. 2. Command sentences set should cover 99% of user needs. 3. This approach doesn’t use any Artificial Intelligence algorithms: every commands maps directly a well defined device behaviour. This ALaDIn implementation is suitable for small displays and could be used for very small one line display: it’s limit is that the choice of commands cannot be big (even if you could improve the demo whit a forward fast button). Another demo improvement should be to highlight some key letters in the commands to get a faster selection. If the phone display is a little bigger one should divide it in two sectors putting the choices on a dynamic list on the top of the screen, while the command sentence should be composed on the bottom as is shown in fig 6.
This approach permits to handle big vocabularies of commands allowing to access to Internet application like hotels booking, intelligent trading and so on.
Application: ALaDIn for Database and Client Server Application Even if ALaDIn is as an Interface for mobile phone and domestic appliances an interesting application field concerns database handling and client server applications. For its features, ALaDIn can easily used as an evolved SQL language to query or modify database. The basic difference between ALaDIn and SQL is that ALaDIn is not a language but a driven language interface: users are driven to build sentences to query a database. This appears as a limit but it’s a great vantage: unskilled users could compose complex queries being sure that the results is what they expected. In that example we can see in sequence an application for queries customer orders and payments.
ì
As we can see from the picture this implementation of ALaDIn interface uses a dynamic list that moves at the end of the sentence: the choice takes place writing the word one wants select. Someone could create a tool that, starting from a DB schema, automatically generates a ALaDIn set of sentences for that schema. This, over that technically difficult, would be against ALaDIn spirit which is a technology born for the end users: such as an interface should be difficult to be understood (and probably comics) by end users and the queries build in such way could bring to unpredictable results. This will discourage the end user to use this technology. It appears difficult that ALaDIn will replace actual client server application: however it should be used to join client server applications.
Application: ALaDIn as Translator For its features ALaDIn is suitable to build translator tools among different languages, if the application domain is small and well defined. In the following example is shown how ALaDIn could be used to allows a customer of a foreign post office to talk to a clerk each one using their native language. In the example an English customer needs to get some money that has been sent by his relatives in USA in an Italian post office. Both customer and clerk have a PC. The pictures show the dialog between customer and clerk: on the right side you can see the two windows which are shown to customer and on the left side the clerk’s windows.
Fig 10
Fig 11 Over than these kinds of applications ALaDIn could be a wonderful languages teaching tool: for each language lesson you could build an ALaDIn application structured as a language lesson (at the pub, at the railway station, at a party, etc). In an application structured as the upper windows of Fig 10 a student could experiment composing sentences in his language and see how the translation changes. In the spirit of ALaDIn Interface the translation is not automatic but each sentence is evaluated and translated before by a linguistic expert. This because the set of sentences is limited and it’s possible to give the exact translation for each sentences and sub-sentences: this brings to a limited set of sentences to be translated but make the translations of high quality.
Applications: ALaDIn for TV, VRC and other domestic appliances ALaDIn is a very good interface to program advanced features on domestic appliance and consumer electronics. “Warn me if I forget the washed clothes in the central agitator” o “If it will rain dries the clothes” o “How many was cycles do you make in a month?” “could be some useful features that could be added to your wash machine. In the same way you could use ALaDIn interface for driving a Video Recorder scheduler or a TV. Using ALaDIn on a car navigator should allow end user to be warned when there’s something interesting. “Warn me if there’s a good fish restaurant in the neighbourhood” should I say to my car navigator.
Material realizations of ALaDIn ALaDIn is an abstract idea that can be implemented not only by software interfaces but also by mechanical and electrical devices. In the picture above we can see a draw of a mechanical realization to control a water-vapor turbine: moving the fours tuners you change the commands shows in the panel: in this case you limit the pressure of turbine 1 to 100 ATM. th It’s important to note that such ALaDIn realization could be available at the end of 20 century.
Limit
Turbine 1
pressure
to 100 ATM
In fig 2 è invece motrata la relizzazione di uno Panel strumento per la traduzione di semplici frasi Control turistiche. Una serie di cartoncini di cartone permette la composizione delle frasi e dei numeri posti In the next picture is instead shown the realization of translation tool for simple tourist information. A set of paper stripes allows the composition of tourist information sentences: on the borders of the strips numbers signals possible combinations. On the back side of the paper you have the translation.
Where’s
1 1
1
The raiway station? The post office?
1 a hotel
2 2
With swimming pool?
2 2
Not too expensive? Near the sea?
Fig 1
1 Dov’e
2 2
La stazione?
Fig 2
ALaDIn for children Last but not least ALaDIn could be used to build didactic programs for children: in the example below is possible for a child to draw some stories’ characters describing them.
Conclusioni In conclusion we can say that ALaDIn appears us as simple and powerful technology being able to revolutionize the interaction between man and machine. Just a quesion arises: will people like ALaDIn? I don’t know the answer but I do hope. To download the demos see the web site www.aladini.eu. Paolo Marino Turin(Italy) 28/06/07