Stefan Bosse: Distributed Serverless Chat Bot Networks using mobile Agents

Distributed Serverless Chat Bot Networks using mobile Agents: A Distributed Data Base Model for Social Networking and Data Analytics

Stefan Bosse

University of Bremen, Dept. Mathematics & Computer Science, Bremen, Germany

sbosse@uni-bremen.de

1 / 23

Stefan Bosse: Distributed Serverless Chat Bot Networks using mobile Agents

Introduction

Motivation and Summary

Networking: This work addresses a novel distributed chat bot network methodology architecture

Mobility: Chat bots are implemented by Mobile Agents (Mobile Software)

Interaction: Chat bots performing dialogues by using a script and knowledge data base

2 / 23

Stefan Bosse: Distributed Serverless Chat Bot Networks using mobile Agents

Objectives

  1. From human-machine to human-network communication. Next generation Chat bots improve social networking;

  2. Filling the reality gap. Hypothesis: A group of cooperating Chat bots can improve quality of dialogue flows significantly;

  3. Scalability. Distributed Chat bot networks implemented with self-organising agents can extend knowledge bases and fit to large-scale environments like Smart City ⇒ Crowd Control.

  4. Sensors. Chat bots are not limited to conversation only; they are sensor data sources for analytics, too!

3 / 23

Stefan Bosse: Distributed Serverless Chat Bot Networks using mobile Agents

State of the Art - Where we are

  • Today human-machine dialogues performed and moderated by chat bots are ubiquitous.

Chat bots are now integrated in popular messaging programs and also appear as stand-alone services like Amazon Alexa, Microsoft’s Cortana, and Apples Siri. Central part of dialogue robots is Natural Language Processing (NLP) and Knowledge Logic.

4 / 23

Stefan Bosse: Distributed Serverless Chat Bot Networks using mobile Agents

History

History of Dialogue Robots

5 / 23

Stefan Bosse: Distributed Serverless Chat Bot Networks using mobile Agents

The Beginning

Eliza - The Psycho and KISS (1000 lines code)!

6 / 23

Stefan Bosse: Distributed Serverless Chat Bot Networks using mobile Agents

Next Generation Bots

CleverBot (1 Billion Conversations)!

7 / 23

Stefan Bosse: Distributed Serverless Chat Bot Networks using mobile Agents

  • Commonly, centralised and server-based chat bot software is used to implement rule-based and intelligent dialogue robots.

    • Human networking is not supported.
  • Many Chat bots are still simple finite-state machines with limited knowledge bases, language understanding, and capability to construct meaningful dialogue flows!

    • Missing user personalisation
    • No user feedback propagation and adaptation
  • Interaction Interfaces:

    • ⊕ Human-Bot Interaction
    • ⊕ Machine-Bot Interaction
    • ⊖ Bot-Bot Interaction
    • ⊖ Human-Network (Human-Bot-Human) Interaction
8 / 23

Stefan Bosse: Distributed Serverless Chat Bot Networks using mobile Agents

Taxonomy of Chat Bot and Classes

Human-Machine Interface

QA Bots
Question-Answer Bots for a limited topic field, basically a natural language interface to FAQ scripts → Information Sources
Conversational Bots
More general conversational bots with free form text input and output → Entertainment
Examples: Eliza!, jabberwacky, Cleverbot, Alexa (really a CB?), Osiris (really a CB?)
9 / 23

Stefan Bosse: Distributed Serverless Chat Bot Networks using mobile Agents

Intelligent and Learning Bots
Either QA or conversational bots (or a mix) that grow and adapt with increasing dialogues.
Intelligent chat bots aim to improve dialogues and conversational quality over time and user experience.
Personalised Bots
Either QA or conversational bots (or a mix) that adapt to specific persons (remembering history, skills, likes) to maximize the utlity of the conversation for the user.
10 / 23

Stefan Bosse: Distributed Serverless Chat Bot Networks using mobile Agents

Dialogue Processor

Static Bots
The dialogue processor uses a simple question-answer table (finite-state machine)
Dynamic Bots
The dialogue processor uses an extensible and modifyable dialogue data base
Rule-based Bots
Conversational rules provide the base for reactive chat bots → Symbolic agents with outside-in approach
Intelligent Bots
More natural dynamic and reactive bots based on sub-symbolic learning agents with inside-out approach
11 / 23

Stefan Bosse: Distributed Serverless Chat Bot Networks using mobile Agents

Concept and Architecture

Towards Smart City Environments and Self-☆ Event Management

12 / 23

Stefan Bosse: Distributed Serverless Chat Bot Networks using mobile Agents

Chat Bot as Mobile Agents

  • A Chat bot is implemented and represented by a mobile software agent

The agent poses a state-based reactive agent behaviour that is programmed in JavaScript and processed by the JavaScript Agent Machine (JAM)

  • The agent performs:
    • Dialogue moderation, processing, and synthesis;
    • Data base management;
    • Knowledge discovery and Networking; and
    • Learning and Planning on a higher level.
13 / 23

Stefan Bosse: Distributed Serverless Chat Bot Networks using mobile Agents

Chat Bot Agent and Platform

label Connected Bots (JAM: JavaScript Agent Machine platform, NLP: Natural Language Processing)

14 / 23

Stefan Bosse: Distributed Serverless Chat Bot Networks using mobile Agents

Dialogue Data Base

  • The dialogue data base consists of active (functional) dialogue snippet rows

Dialogue Snippet

  • There are three classes of dialogues:
    (1) Reactive (2) Pro-active (3) Survey

  • A snippet is a functional and state-based data structure capable of

    • executing DB queries and NLP,
    • requesting sensors, contacting external services,
    • modifying the snippet (adding data ..).
15 / 23

Stefan Bosse: Distributed Serverless Chat Bot Networks using mobile Agents

Snippet Format

type dialog database = dialog snippet []
type dialog snippet = {
tag : string,
phrases? : string [], topics? : string [],
keywords? : string [],
stimulus : { activation? : function,
message? : string|function,
question? : string|function,
choices? : [], range? : []},
process? : function,
action : { pre? : function,
response? : function, },
answer? : [], data? : [],
}
  • The snippet functions can perform NLP supplied by access to the compromise framework
  • Sensors (location, external WEB APIs) can be accessed, too.
16 / 23

Stefan Bosse: Distributed Serverless Chat Bot Networks using mobile Agents

Chat Bot Agent Model

Agent behaviour model with prominent activities

17 / 23

Stefan Bosse: Distributed Serverless Chat Bot Networks using mobile Agents

Chat Bot Communication

  • Networking is performed via:

    • WEB APIs (e.g., weather or map services, wiki queries, ..);
    • Bot-Bot communication to extend information range;
    • Bot-Other Bot communication (e.g., with CleverBot) to extend conversational capabilities.
  • Bot-bot communication uses messaging:

18 / 23

Stefan Bosse: Distributed Serverless Chat Bot Networks using mobile Agents

Demonstration

DB: Only 20 dialogue snippets, size ≈ 10kB!

19 / 23

Stefan Bosse: Distributed Serverless Chat Bot Networks using mobile Agents

Results

  • A small dialogue data base (< 50 entries, < 20kB) is sufficient to handle common dialogue flows;

    • Missing dialogue matches are compensated by remote services and by requesting other Chat bot agents (human-bot-human interaction)
  • Chat bot mobility and communication is lightweight and fast:

    • Migration: Code+Data (DB) < 100kB, latency < 1s
    • Communication: Messages between Chat bot agents require < 1kB (a dialogue snippet), latency < 100ms
  • Scaling with respect to communication partners is almost linear

20 / 23

Stefan Bosse: Distributed Serverless Chat Bot Networks using mobile Agents

Conclusion

The fusion of Chat bots technologies with multi-agent systems enables the orchestration and connection of dynamic large-scale chat bot networks

  • Capable to interact with users dynamically either directly or indirectly via bot messaging.
  • Both specialisation by hierarchical bot networks as well as cooperation is supported (knowledge extension).

  • Spatially separated users can be connected and profit from extending the information range via chat bots.

21 / 23

Stefan Bosse: Distributed Serverless Chat Bot Networks using mobile Agents

The slim agent processing platform can be easily integrated in existing software or WEB pages, especially supporting mobile networks and devices.

  • Low resource requirements!

  • Dialogue data bases owned by a Chat bot agent consists of active dialogue snippets (can be exchanged)

  • The agent bot communication and interaction enables distributed knowledge and dialogue data bases.

One main issue of the simplified NLP and script-snippet data base approach is the quality of dialogues and the acceptance of users that must be improved in future work.

22 / 23

Stefan Bosse: Distributed Serverless Chat Bot Networks using mobile Agents

Thank You!

Thank you for your attention. All questions are welcome!

#evol

#me

23 / 23