Showing posts with label Intelligent Systems. Show all posts
Showing posts with label Intelligent Systems. Show all posts

Tuesday, May 26, 2015

Imagine the future of shopping with HoloLens and Microsoft Azure…

As I am extremely lazy (hence I love automation to kill repetitive boring tasks and I’m in IT !!), every time I go shopping with my shopping list I am facing the following question:
“Wouldn’t that be that great to have an application that tells me the optimized path to shop everything I need in a minimum amount of time ?”
Lets dream slightly to think about an App on a mobile phone :
  • You would have entered before-hand a shopping list (on the left below)
  • The apps would walk you through the supermarket thanks to arrows modeled on the telephone
  • Whenever you reach a product present on my shopping list, it is highlighted;
    • each product would have a RFID tag, so that the App knows precisely its price, its ingredients (handy for allergies or specific diet), the total cost of my cart, …
image
A better version with V2
  • Now as you are approaching and facing articles, the application knows you are allergic to a given ingredients or that you want a “full fat free”. Hence, it automatically scores it out non matching items and highlights relevant ones!
    That would be such a great amount of time spared !!
  • Then you keep on following the green arrows (notice you have on the top left hand side, a small top-view map of your location in the supermarket)
image

An even better version with V3 and in 2015
Now we are in the near future,
  • instead of using the small mobile phone,
  • or instead of picking a Gen-Code reader at the entrance of your supermarket
image
With the usage of HoloLens, you would be able to walk in your supermarket:
  • according to an optimized path,
  • picking up rapidly, without spending hours in reading all ingredients (allergies or specific diet),
  • as you pickup the articles, you would visualize tons of information related to the product (may be cheaper prices with 5 miles), all those information flies toward Microsoft Azure into a centralized datastore where AI and anonymized recommandations could be performed,
  • have the total of your bill all summed up for you, with the corresponding discounts if applicable.
image   image

Final version with V4 and in 2016 … This is the laziest variant of it !
Imagine all this, sitting comfortably in your sofa ! while watching TV for instance or doing gym! and get the order delivered for you ! All this would be powered by Microsoft Azure with its IoT offering, where the Azure Machine Learning would be offered as a service and will predict you your needs !!
Well this dream is not that far, with :
  • HoloLens, MS Azure, Machine Learning, EventHubs, Stream Analytics, IoT and Windows 10 !
Remixed image © Bretz Marilyn licensed under the Creative Commons Cultsofa image
Then you’ll have more time to go out, enjoy meeting real people, and have fun… away from those technologies ;-)

Monday, October 18, 2010

How Genetic Algorithm can ease your User Test cases (UI Tests)

 Let consider a large application to develop; it is not possible to list the entire exhaustive combination of User Test Cases : You could have millions of possible ways of using your complex application, hence millions of User Test Cases to record and run within the automated Software Factory.

When dealing with large and complex scenarios, Genetic Algorithms are good to find a solution quickly, whereas calculating all possible ways would last more than decades even with the fastest computer.

Let us assume that the red biomorph fractal below is THE best User Test Case that you are looking for, because it covers 100% of the needs (hence you don't have to tests all possible combinations, where many of them would likely to do nearly the same thing), and would guarantee no software regressions over years.

Since you don't know yet the solution, you would try to identify programmatically for exemple 1000 random combinations (24 of them are represented as white biomorph fractals below).
By letting them evolve throw a reproduction process (with various factors such as mutations) during a large number of iterations, this would lead to find a solution within minutes.
This may be not the perfect one, but the closest to the sought solution.
  

"Genetic Algorithm Viewer 1.0", by Jean-Philippe Rennard, is the software above that can demo the principles, based on biomorph fractals : http://www.rennard.org/alife/french/gavintr.html.

This post only shows an example of what could be done; it is up to you to either implement or buy a software that will help you implementing ONLY relevant User Test Cases (hence the minimum required tests), and not a large number of combinations anymore.

Some other links on AI or GA :
http://dotnetkicks.com/csharp/How_to_Create_a_Neural_Network_and_Genetic_Algorithm_in_C_NET
http://www.codeguru.com/Cpp/misc/misc/article.php/c3795
http://www.codeguru.com/cpp/cpp/algorithms/general/article.php/c14825