Indigo, a personal assistant really intelligent

Every week, I test an application using a natural language interface or natural language technology and I write an article about my experience with this application.


Last week, I tested Indigo, a free personal assistant for smartphone, tablet and computer.

Personal assistant

A personal assistant is a person who helps someone in a variety of life management tasks on various domains. For example, arranging travel (purchasing airline tickets, reserving hotel rooms, finding directions), shopping (shopping list, meal planning) or health (exercice monitoring and motivation). But having a such personal assistant is expensive!

There is a less expensive solution: an intelligent software assistant. The purpose of an intelligent software assistant is to help people be more efficient in their daily tasks with approaches in artificial intelligence.

Intelligent software assistants have become a major business opportunity with the need for computers to better understand their users in order to customise information. Reseach and Markets profiles 17 companies operating in the intelligent personal assistants arena worldwide like Apple (Siri), Google (Google Now), Microsoft (Cortana), Samsung (S Voice), Creative Virtual (V-Person).

ArtificialSolutionsLogoIn this article, I present Indigo, a free intelligent software assistant developped by the company Artificial Solutions. What can do Indigo? is it easier to use? Where can use Indigo?


Indigo is a cross-platform software assistant

Indigo is available on iPhone and iPad, on Android and Windows Phone 8 device unlike the famous software assistants like Siri and Google Now. The query understanding is made over a connection at a server. So, it’s necessary to be connected to a WiFi network to use Indigo. On some occasions like in the subway, an embarked solution would be more useful because there is not always WiFi network available.

Indigo manages pre-installed apps

Indigo manages pre-installed apps such as contacts, weather, maps, calendars, reminders and alarms as well as composing and sending texts, updating Facebook and sending tweets; all through the power of voice or written.

Why Indigo is really intelligent

Indigo is able to take account some linguistic and contextual difficulties:

  1. The software assistant identify the missing informations when I added an event into the calendar (screenshot 1, 2 and 3)
photo 2
Screenshot 1
photo 3
Screenshot 2
photo 4
Screenshot 3
  • Indigo understands inference as is show by screenshot 4.

From a sentence (e.g. I want to watch a movie), the application is able to infer a need (e.g. searching a cinema).

photo 29
Screenshot 4

Indigo remembers the subject (e.g. the president of Italy) and is able to associate it with an anaphoric pronoun (e.g. his).

photo 31
Screenshot 5
photo 32
Screenshot 6

The software is also able to do that with a coordination (screenshot 7 and 8).

photo 39
Screenshot 7
photo 40
Screenshot 8
  • Indigo takes into account the contextual informations (screenshot 9 and screenshot 10)
Screenshot 9
Screenshot 10

Indigo uses external applications for some specific requests

When the request concerns a place, Indigo uses the categories of places of Yelp. So, the software assistant understands request about restaurants, clothing stores, DIY stores, nightclub…). Moreover, it’s also possible to find a restaurant according to information provided by Yelp like the distance (e.g. search the nearest restaurant), the opening days (e.g. search a restaurant opened monday), the reviews (e.g. search the best restaurant), the characteristics of restaurant (e.g. search a restaurant with terrace).

Concerning the requests about general knowledge (screenshot 11), Indigo uses the Wolfram engine. Wolfram is a computational knowledge engine that generates output by doing computations from its own internal knowledge base. So, for example, you can request to Indigo to compare banana and apple.

Screenshot 11

Here, Indigo via Wolfram, proposes a list of dietary characteristics. Wolfram is more effective than search engine because it can compare the information to provide a single answer instead of a list of links (screenshot 12).

Screenshot 12


Some suggestions

  • Using Indigo without Wifi network or internet connection
  • Indigo understands abbreviations for conversions (e.g. convert 15 kg into gr) but it would be nice to extend it to any kind of query (e.g. search a rest [for restaurant] with terrace, what time is it at LA). For that, see a based approach on local grammar (Bsiri, Geierhos and Ringlstetter) and tools for building local grammaires in multiple language (Unitex, Nooj)
  • Some scenarios of daily life are not taken into account as seek a recipe or a tv program (for the later, see the french application assistanTV)
  • As we have seen, Indigo via Wolfram is able to find a definite answer from a single source. In the future, it would be even more ambitious summarize various sources of information to take into account more complex questions such as “what are the techniques to open a locked door”.

Personally, I’ll keep this software assistant among my iPad applications because it is really intelligent, is more efficient than a search engine because it provides an single reply and facilitates the implementation of daily tasks such as adding a new event in the calendar.
However, Indigo and other software assistants, does not meet all the needs of daily life. For example, I love to cook but I hate wasting time to find a recipe because usually I’m already hungry. At the same time, I think special requests are best handled by dedicated applications. So, I’m looking of such application for a next app review!


Here a video presentation of the application: