Artificial Intelligence


AI - Artificial Intelligence
We learn about Artificial Intelligence  by creating our own Chatbot. In the process, we learn about working with text (words) and more advanced constructs such as lists and arrays. 

Chatter bots
Chatter bots (chatbots) are designed to respond like humans to natural language input. Examples of chatbots are Virtual Assistants (Apple's "Siri" and Google's "Google Now" ), Conversational Agents (on websites to answer questions and guide you to the right places such as Anna on the IKEA website), Virtual Agents and other foms of chatbots.

Google and Microsoft offer digital assistants on smartphones, called Google Now and Cortana, respectively, which have deep knowledge of their users’ habits and schedules. Amazon sells a stand-alone device Alexa that, among other things, plays music, reads books aloud and can help buy items through Amazon. On September 8 Baidu, a Chinese internet giant, announced its own digital agent, Duer. And recently Facebook announced that a concierge service, called M, would be available through its messaging app.

Anna is IKEAs chatbot/virtual assistant and is known to millions of visitors to IKEA's websiteshe speaks many languages and can talk confidently to customers about more than 120.000 individual products. Anna answers questions about IKEA products, prices, sizes, delivery, spare-parts, opening hours etc. and opens related pages in a browser window. Furthermore, Anna knows when your local IKEA restaurant is open and what they serve for lunch! She also answers simple but personal questions like 'what's your name?' On top, she shows emotions, for example if she couldn't find information you are looking for.

According to research firm Gartner, about 38 per cent of American consumers have used virtual-assistant services on their smartphones recently; by the end of 2016 an estimated two-thirds of consumers in developed markets will use them daily.

Before you write code to create your own chatbot, you will explore existing chatbots.

1. Resources and Background
    1.0  Resources and Links - good followup reading and more informationwhat are chatbots?
    1.1  Student Samples  - chatbots created by students
  

2a. Creating a Chatbot - LiveCode (new LiveCode commands/messages are in red) 
    2.0  Investigate Chatbots - what are chatbots?
    2.1  Starter Chatbot (Is In, Contains) - make it your own
    2.2  Keyword Search (Find) - find whole words
    2.3  Word Groups (WordOffset, Find Word) - I like, I want
    2.4  Using Lists (specialFolderPath, Repeat For Each, Exit Repeat) - save time, work and to simplify code
    2.5  Saving Lists to hard drives
    2.6  Using Arrays for fast word lookups
    2.7  Using I/O to load responses from a file
    2.8  Adding extras (Answer File) to your custom chatbot
    2.9  Enhancements - Voice Recognition, Speech, APIs, Avatars, Interactive Faces

2b. Creating a Chatbot - Python
    Python - Links 
    Activity 1 - Starter Chatbot, - make it your own
    Activity 2 - Keyword Search - find whole words
    Activity 3 - Word Groups - I like, I want
    Activity 4 - Using Lists on input to simplify code
    Activity 5 - Using Dictionarys on responses to simplify and speed up
    Activity 6 - Using I/O to load responses from a file
    Activity 7 - Create your custom chatbot
    Activity 8 - Enhancements - Voice Recognition, Speech, APIs, Avatars, Interactive Faces