RESEARCH PROJECT
N0235871
! ! ! ! !!
SCHOOL OF SCIENCE AND TECHNOLOGY
INTEGRATION OF A CHATBOT ENGINE ON A MULTI USER VIRTUAL ENVIRONMENT TO ENHANCE EDUCATIONAL FRAMEWORK FOR A VIRTUAL CAMPUS BY NAIK NISARG NANDAKUMAR
PROJECT REPORT IN PART FULFILLMENT OF THE REQUIREMENTS FOR THE DEGREE OF MSC COMPUTER SCIENCE
! !!Nottingham!Trent!University!
! !
!!!!!!i!
RESEARCH PROJECT
N0235871
ABSTRACT This research project investigates to utilize a Multi user virtual environment for educational purpose, using one of a recent and highly developed virtual world Engine which is Open wonderland this engine is developed entirely in java programming language and it is based on open source project, which is offering education related framework, the technical part of this project includes in, integration of a artificial intelligence related conversation agent or better known as Chat robot in short Chatbots in open wonderland MUVE Engine, the intension was to develop a conversation agent which can interact with human avatars in natural language. Since this was very essential for a Multi user virtual environment which is based on educational features. The research project begins with an initial aim of developing a Chatbot application for integrating on Open wonderland engine using linguistic database which are WordNet and a API called JWI (Java WordNet interface), later the integration process included in many experimentations with highly developed existing Artificial intelligence related Chatbot engines, one of a advanced Chatbot which had been used in this project for integration with open wonderland is based on ALICE (Artificial Linguistic Internet Computer Entity) which uses AIML Based interpreter to query and retrieve information’s, the integration process of this experimentations was based on using a Java based AIML Interpreter known as Program-D and a web based AIML Interpreter Pandorabot. The web based interpreter uses API Called XML-RPC (Remote procedure call) this communication protocol uses XML to encode which calls HTTP as a transport mechanism a client can interact with a Pandorabots, based on this technique the integration has been achieved. Additionally the experimentation process further progressed to investigate about Chatbots knowledge extending ways for retrieving factual information’s by interfacing with ontology’s related to Semantic web technology to query knowledge bases in which the integration methods was based on using Ontology’s API to interface with AIML Interpreter this was a concept which Author had considered. And the project also demonstrates a virtual campus, which includes designing a virtual simulated learning environment based on utilizing the educational framework of open wonderland. !
! !!Nottingham!Trent!University!
! !
ii! !!!!!!
RESEARCH PROJECT
N0235871
ACKNOWLEDGEMENTS ! This Dissertation would not have been accomplished without the help of many people to whom I am very thankful. I wholeheartedly thank to my Supervisor Dr. Beverley Cook for providing me support and guidance throughout the entire process of this research project, Her encouragement, feedbacks, lessons on Java and patience have been very grateful. My sincerest thanks to the Dean, Dr. Graham Tranfield for providing me great guidance and I am very thankful for his patience. I take this opportunity to sincerely thank to Dr. Taha Osman, for providing me Java lessons, I gained a lot of practical knowledge on Java in the sessions, and this project would not have been accomplished with out the knowledge of java programming language. I want to express my gratitude to Dr. Stephen Clark, for his support and guidance. I would like to express my gratitude to the CEO of Open wonderland, Nicole Yankelovich, for providing me great lessons on Virtual world building, I am very thankful for her patience and also I would like to thank to the rest of wonderland Community for providing me guidance on technical issues. I deeply want to thank my Parents and rest of all my family members for providing me their support, help and thanks for always motivating. This project would not have been fulfilled with out the inspirations from a Great man Steve Jobs, I always believed in his quote “You can't connect the dots looking forward you can only connect them looking backwards”. This period of research project had always been similar to connecting Dots; since this is an attempt to draw the lines on the dots, which I had been putting in the entire project process. And I wholeheartedly want to thank My God, My Preceptor and My Guru, Shirdi Sai Baba for providing me every thing, good health and providing me peace of mind to focus on the research project. I would like to take this opportunity to express my belief, I always believed University is my Temple and Teacher’s are my God, I start my project by thanking to Nottingham Trent University for providing me great principles in my life. Thank you all,
! ! ! ! ! !!Nottingham!Trent!University!
! !
iii! !!!!!!
RESEARCH PROJECT
N0235871
!
TABLE OF CONTENTS NO
1.0 1.1
CONTENTS
PAGE-NO
INTRODUCTION…………………………………..….…………….….1 PROJECT AIMS AND OBJECTIVES……………….…………...….…………..…...2 A. PROJEC AIM……………………………….…….………….……………….............2
1.2
B. OBJECTIVES……..………………………………………………………..….…….……...2 CHAPTERS OVERVIEW…………………….……………........................................3
2.0
LITERATURE REVIEW……………………….……………………....5
2.1 2.2 2.3 2.4 2.4.1 2.4.2 2.4.3 2.4.4 2.4.4.1
INTRODUCTION………………….....…………………........……………...................5 SCOPE OF ONLINE EDUCATION…………………........…………….....................6 IMPORTANT FACTS ABOUT VIRTUAL WORLD BASED LEARNING…………...7 VIRTUAL WORLD PLATFORM………………………………………………………..8 GENERAL BACKGROUND OF INTEGRATION PLATFORM……………………...8 THE HISTORICAL RATIONALE OF MUVE TECHNOLOGY……………………....9 EDUCATIONALLY ENHANCED VIRTUAL WORLDS……………………….…….11 EXISTING VIRTUAL WORLD PLATFORMS……………………………….………13 TECHNICAL REVIEW OF IMPORTANT TOOLS AND METHODOLOGIES……14 A. THE SIMULATOR (SERVER)………………………………………………………....15 B. THE VIEWER (CLIENT)….……………………………………………………………15 2.4.4.2 OPEN WONDERLAND TECHNICAL REVIEW……………………………………..17 A. WONDERLAND ARCHITECTURE…………………………………………………….18 B. SERVER COMPONENTS OF OPEN WONDERLAND………………………………..18 C. WAYS TO EXTEND THE FUNCTIONALITIES (CELL DEVELOPMENT)…………….19 2.4.4.3 EVALUATION OF THE TECHNICAL REVIEW……………………………………...20 2.5 CONVERSATION AGENTS AND CHATBOTS…………………………………..…21 2.5.1 THE REVIEW OF THE CHATBOT TO INTEGRATE………………………………21 2.5.1.1 ALICE (ARTIFICIAL LINGUISTIC INTERNET COMPUTER ENTITY)…………...23 2.5.1.2 UTILIZING THE ALICE CHATBOT…………………………………………….…….24 A. JAVA BASED AIML INTERPRETERS…………………………………………….…..24 1. CHATTERBEAN…………………………………………………………………….…24 2. PROGRAM-D………………………………………………………………………..…25 3. CHARLIEBOT……………………………………………………………………….…25 4. PROGRAM-W……………………………………………………………………….…25 B. ONLINE WEB-BASED AIML CHATBOT ENGINE……………………………….……25 1. PANDORABOTS………………………………………………………………….…...25 C. ALICE (BRAIN) AIML KNOWLEDGE BASE……………………………………….….26 2.5.2 REVIEW RELATING TO SIMILAR PROJECTS BASED ON RELATED AIMS....27 2.5.2.1 INTEGRATION OF CHATBOTS ON MUVE PLATFORMS…………….…………27 2.5.2.2 AIML BOTS BASED ON ADVANCED SEARCHING CAPABILITIES…………....28 A. ENHANCING AIML WITH SEMANTIC WEB TECHNOLOGIES……………....28 B. A SEMANTIC WEB BASED AIML AGENT CALLED XOPERATOR…….……29 C. PANDORABOTS WITH WIKI AND WOLFRAME ALPHA……………………...29 D. IMPROVING CHATBOT BRAIN THROUGH PANDORABOTS……………....30 2.6 3D MODELING FOR VIRTUAL ENVIRONMENTS……………………………………31 2.7 CHAPTER SUMMARY…………………………………………………………….….31
3.0
REQUIREMENTS……………….………………………………..….33
3.1 3.2 3.3
INTRODUCTION………………………………………………………………………33 MOTIVATION OF THE RESEARCH……………………………………………......33 REQUIREMENTS OVERVIEW………………………………………………………34
! !!Nottingham!Trent!University!
! !
iv! !!!!!!
RESEARCH PROJECT 3.4
N0235871
3.5.4
PROJECT REQUIREMENTS……………………………………………………..…36 A. REQUIRED VIRTUAL WORLD PLATFORM…………………………………...36 B. REQUIRED CHATBOT ENGINE………………………………………………....36 C. PROJECT REQUIRED AIMS AND OBJECTIVES…………………………...…37 AIMS AND OBJECTIVES OF THE……………………………………………...…...37 3.5.1. AIM 1: CHATBOT INTEGRATION ON OPEN WONDERLAND…...………37 3.5.1.A OBJECTIVES………………………………….………………………………38 1. FIRST PROTOTYPE INTEGRATION (PROGRAM-D)………………………….38 2. SECOND PROTOTYPE INTEGRATION (PANDORABOTS)……………….....38 3.5.2. AIM 2: IMPROVING A CHATBOT BRAIN (KNOWLEDGE BASE)…….….38 3.5.2.A. OBJECTIVES……………………………….………………………………...39 1. EXTENDING CHATBOT BRAIN USING AIML SCRIPTING…………………...39 2. INTERFACE WITH SEMANTIC WEB BASED………………………….……….39 AIM 3, DEVELOPING VIRTUAL ENVIRONMENT…………………………..……..40 A. OBJECTIVES..…………………………………….……………………………..…40 CHAPTER SUMMARY………………………………………….…………………..…41
4.0
DESIGN……………….…..…………..…………….…………..….....42
4.1 4.1.1 4.1.2 4.1.3 4.2 4.3 4.4 4.4.1
INTRODUCTION……………………………………………………………………....42 PURPOSE……………………………………………………………………………...42 SCOPE………………………………………………………………………………….42 PLATFORM CONSIDERATION AND TARGETED USERS……………………...42 DESIGN METHODOLOGY…………………………………………………………..43 PROJECT CONCEPT SYSTEM BLOCK DIAGRAM……………………………...44 DESIGN OF CHATBOT INTEGRATION PROCEDURES………………………..45 QUERY INFORMATIONS…………………………………………………………….45 A OVERVIEW………………………………………………………………………….45 B LIMITATIONS………………………………………………………………………..45 INITIAL DESIGN OF CHATBOT ENGINE…………………………………….......46 FIRST PROTOTYPE (NEW DESIGN OF CHATBOT)…………………………….47 SECOND PROTOTYPE (PROGRAM-D)…………………………………………...47 THIRD PROTOTYPE PANDORABOTS (PROGRAM-Z)………………………….47 CHATBOT ARCHITECTURE OF AIML INTERPRETERS………………………..48 A. SYSTEM OVERVIEW…………………………………………………………..…48 B. ARCHITECTURAL DESIGN OF CHATBOT ON MUVE PLATFORM……..…48 C. DATA FLOW DIAGRAM…………………………………………………………..49 D. USE CASE DIAGRAM OF CHATBOT ON MUVE PLATFORM………………50 DATA DESIGN………………….……………………………………………………...50 IMPROVING A CHATBOT BRAIN (KNOWLEDGE BASE)…………………….…50 EXTENDING CHATBOT BRAIN USING AIML SCRIPTING………………….......51 A. DATABASE DESCRIPTIONS …………………………………………..…....51 DESIGN DESCRIPTIONS FOR EXTENDING CHATBOT DATA………………...52 CHATBOT INTERFACE DESIGNS………………………………….…………….…53 A. CHATBOT INTERFACE…………………………………………………………....53 B. CHATBOT AND NPC PROXIMITY LEVEL……………………………………....54 A TECHNIQUE OF COGNITIVE LEARNING METHODS……………………......55 COMPLETE VIRTUAL CAMPUS SYSTEM DESIGN……………………………...56 1. SYSTEM CONTEXT DIAGRAM…………………………………………………...56 DATA FLOW AND ACTIVITY DIAGRAM……………………………….…………...57 USE CASE DIAGRAM………………………………………………….…………......58 VIRTUAL CAMPUS MODELS………………………………………………………59 A. VIRTUAL CAMPUS SCENE GRAPH…………………………………………....59 B. VIRTUAL CAMPUS 2D MAP FOR DEVELOPING 3D MODELS………….....59 C. ABSTRACT BLUEPRINT FOR CIB BUILDING FOR 3D MODELING…….....60
3.5
3.5.3.
4.5 4.5.1 4.5.2 4.5.3 4.5.4
4.6 4.6.1 4.6.2 4.6.3 4.6.4
4.6.6 2.6.7 2.6.8 2.7
! !!Nottingham!Trent!University!
! !
v! !!!!!!
RESEARCH PROJECT
2.7
N0235871
D. BLUEPRINT OF CIB BUILDING………………………………………………....61 E. VIRTUAL CAMPUS NAME BOARDS…………………………………………....61 F. VIRTUAL CAMPUS OTHER ROOMS BLUEPRINTS………………………….62 CHAPTER SUMMARY………………………………………………………….…….62
5.0
IMPLEMENTATION….…..……………….…..…………………….64
5.1 5.2 5.3 5.4 5.5 5.6
NTRODUCTION……………………………………………………………………….64 HARDWARE REQUIREMENTS……………………………………………………..64 SOFTWARE REQUIREMENTS……………………………………………………..65 INTEGRATION OF CHATBOT ENGINE AND VIRTUAL CAMPUS……………..65 IMPLEMENTATION PROCESS……………………………………………………..66 OPEN WONDERLAND MUVE PLATFORM FOR INTEGRATION………………67 A EXTENDING OPEN WONDERLAND PLATFORM……………………………..67 B INITIAL REQUIREMENTS FOR DEVELOPING PROCESS…………………69 CHATBOT INTEGRATION EXPERIMENTATIONS……………………………….70 PROTOTYPE-1……………………………………………………………………….70 PROTOTYPE-2………………………………………………………………………..72 PROTOTYPE-3………………………………………………………………………..77 B. CELL COMPONENT MODULE DEVELOPMENT……………………………...79 C. INITIAL PROCESS SKELETON MODULE FOR PANDORABOT……………81 D.1 CELL COMPONENT MODULE DEVELOPMENT IN NETBEANS………….81 1. PANDORABOT COMPONENT MO (SERVER CLASS)……………………….81 2. PANDORABOT COMPONENT SERVER STATE (COMMON CLASS)……..83 3. Pandorabot Component Client State (Common Class)………………………..84 4. Pandorabot Component (Client Class)…………………………………………..85 RESULTS AND TESTING OF PROTOTYPE-3……………………………………86 1. WORKING MODES OF MUVE ENGINE………………………………………...86 2.A THE CHATBOT IMPLEMENTED INTERFACE……………………………….90 2.B QUERYING WITH WOLFRAM ALPHA………………………………………...90 2.B.1 WOLFRAME ALPHA ANSWER OUTPUT WINDOW………………………91 2.C. METHOD 1, USING API CALLED XML-RPC………………………………...91 2.C.1 RETRIEVED TEXT ANSWER AND GENERATED IMAGE SOURCE…...92 2.C.2 GENERATED GIF IMAGES SOURCES……………………………………..92 2.D. METHOD 2, USING A.I.M.L FILE IN CHATBOT……………………………..93 5.7.5 VIRTUAL CAMPUS DEVELOPMENT (3D MODELS)……………………...94 1. PROTOTYPE 3D MODEL OF CIB IN GOOGLE SKETCHUP………………..94 1.A ILLUSTRATING 3D MODELING PROCESS………………………………….95 2. NAME BOARD DEVELOPMENT PROCESS…………………………………...96 3. NAME BOARD DEVELOPMENT PROCESS…………………………………...96 4. OTHER 3D MODELS OBTAINED FROM OUTER SOURCES……………….97 5.8 BUILDING VIRTUAL WORLDS IN OPEN WONDERLAND………………….97 5.8.1 VIRTUAL CAMPUS BUILDING IN OPEN WONDERLAND………………..98 5.8.2 VIRTUAL CAMPUS FUNCTIOPNALITIES…………………………………..99 5.9 CHAPTER SUMMARY………………………………………………………….100
5.7 5.7.1 5.7.2 5.7.3
5.7.4
6.0
EVALUATION….…………………….…..…………………………..102
6.1
INTRODUCTION…………………………………………………………………….102 6.1.A SCOPE…………………………………………………………………………102 6.1.B TECHNICAL IMPLEMENTED TASKS……………………………………...102 TECHNICAL EVALUATION………………………………………………………...102 1. CHATBOT PROGRAM USING WORDNET (PROTOTYPE-1)………………103 2. AIML INTERPRETER BASED CHATBOT (PROTOTYPE-2)………………..103 3. WEB BASED AIML INTERPRETE (PROTOTYPE-3)………………………..104 4. PROTOTYPES CONCLUSION………………………………………………….104
6.2
! !!Nottingham!Trent!University!
! !
vi! !!!!!!
RESEARCH PROJECT
6.3 6.4
6.7
N0235871
6.2 BACKGROUND SURVEY FOR LEARNING SYSTEM EVALUATION……105 TECHNIQUES FOR EVALUATION………………………………………………..106 USABILITY INSPECTION…………………………………………………………..106 6.4.1 HEURISTIC EVALUATION…………………………………………………..107 6.6 RESULTS AND DISCUSSIONS……………………………………………….107 1. PARTICIPATES AGE GROUPS………………………………………………...107 2. OPINION ON ONLINE EDUCATION METHODS……………………………..108 3. PARTICIPANTS INTEREST ON GROUP COLLOBRATION………………..109 4. PARTICIPANTS HIGHEST ACTIVITIES IN MUVE ENGINE………………...110 5. CHATBOT FAMILIARITY AMONG PARTICIPANTS………………………….111 5. THE CONCEPT AND USABILITY OF CHATBOT IN VIRTUAL WORLD….112 CHAPTER SUMMARY………………………………………………………………112
7.0 CONCLUSION………….…..………………………….…..………………...113 7.1 FUTURE WORK…………………………………………………………….114 8.0 References…………………………………………………………………..115 9.0APPENDIX……………………………………………………………………….…119 A B C D E F G H I J K L M N
PROJECT PLAN--------------------------------------------------------------------------1 IMPLEMENTATION PLAN--------------------------------------------------------------2 IMPLEMENTATION PLAN-1-----------------------------------------------------------3 IMPLEMENTATION PLAN-2-----------------------------------------------------------4 IMPLEMENTATION PLAN-3-----------------------------------------------------------5 CHATBOT COMPONENT (CLIENT CLASS) -------------------------------------6 CHATBOT COMPONENT FACTORY (CLIENT CLASS)---------------------12 CHATBOT COMPONENT CLIENT & SERVER STATE----------------------13 CHATBOT COMPONENT MO (SERVER CLASS) ----------------------------16 CHATBOT COMPONENT PROPERTY (CLIENT CLASS)-------------------18 EARLY ATTEMPT OF JAVA BASED ----------------------------------------------21 EVALUATION QUESTIONS ---------------------------------------------------------22 PROJECT PLANNING TASKS AND MILESTONES---------------------------32 GNTT CHART-----------------------------------------------------------------------------37
! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! !!Nottingham!Trent!University!
! !
vii! !!!!!!
RESEARCH PROJECT
N0235871
!
LIST OF FIGURES FIGURE Figure: 2.0 Figure 2.1 Figure: 2.1.a Figure: 2.2 Figure: 2.2.a Figure: 2.3 Figure: 2.4 Figure: 2.5 Figure: 2.5 Figure: 2.6 Figure: 2.7 Figure: 2.8 Figure: 4.1 Figure: 4.2 Figure: 4.3 Figure: 4.4 Figure: 4.5 Figure: 4.6 Figure: 4.7 Figure: 4.8 Figure: 4.9 Figure: 4.9 Figure: 4.10 Figure: 4.11 Figure: 4.12 Figure: 4.13 Figure: 4.14 Figure: 4.15 Figure: 4.16 Figure: 4.17 Figure: 4.18 Figure: 4.19 Figure: 5.0 Figure: 5.1 Figure: 5.2 Figure: 5.3 Figure: 5.4 Figure: 5.5 Figure: 5.6 Figure: 5.7 Figure: 5.8 Figure: 5.9 Figure: 5.10 Figure: 5.11 Figure: 5.13 Figure: 5.14 Figure: 5.15 Figure: 5.16 Figure: 5.17 Figure: 5.18 Figure: 5.19 Figure: 5.21 Figure: 5.22 Figure: 5.24 Figure: 5.25 Figure: 5.26 Figure: 5.27 Figure: 5.28
CONTENTS
! !!Nottingham!Trent!University!
! !
NO
Collaborative Learning Conversation Skill Taxonomy………………………………7 Recent Statistics chart of Second life total signups…………………………………9 I-Room, Emergency Response Incident Training………………………………….14 The Architecture framework of Second life, Image source………………………..16 Open wonderland “Virtual cockpit for executives”………………………..………..17 Demonstrates range of components of Open Wonderland’s……………………..18 Open wonderlands Module Cell Architecture……………………………………….19 The AIML querying diagram………………………………………………………….22 The AIML Knowledge Top Level Diagram…………………………………………..26 Virtual Assistant of Health care……………………………………………………...27 XOperator Agent Technical Architecture…………………………………………...29 The AIML Knowledge Category Chart………………………………………………30 Iterative and incremental development……………………………………………...43 Research Project Concept System Block Diagram………………………………..44 Chatbot Engines based on prototype models………………………………………46 Chatbot Use Case, high-level diagram……………………………………………...48 representing the Overall System architecture of Chatbot on MUVE……………..48 representing the data flow of a users example query……………………………...49 Use case diagrams for Chatbot and MUVE………………………………………...50 Chatbot Engine interfacing with Ontology’s Concept………………………………52 Basic User Interface 2D frames for Chatbot………………………………………..53 NPC, Proximity for Chatbot Activation………………………………………………54 Represents a design hierarchy diagram of the system……………………………55 Virtual Campus System Context Diagram…………………………………………..56 Virtual Campus, DFD and Activity……………………………………………………57 System Use Case Diagram…………………………………………………………..58 Virtual Campus scene graph…………………………………………………………59 Blueprint of Virtual Campus top-level Map…………………………………………59 Blueprint of CIB Building……………………………………………………………...60 Blueprint of CIB Building………………………………………………………………61 Name boards for Virtual Campus…………………………………………………….61 Room Blueprint for A, B and C……………………………………………………….62 Illustration of Project Implementation Diagram……………………………………..66 Open wonderland Platform extension……………………………………………….68 Command to download project from Terminal, Screen shot…………………...…69 Server Started message through NetBeans……………………………………..…69 Chat Package………………………………………………………………………….70 Langen Package……………………………………………………………………....70 Utils Package…………………………………………………………………….........71 Execution of Charliebot on terminal…………………………………………………72 Execution of Program-D on Terminal……………………………………………….73 Nodemapper of the graph……………………………………………………………76 Pandorabot API on Linden Program………………………………………………..78 Screen shot of published Pandorabot………………………………………………79 Tool-Tip Cell Component 1…………………………………………………….…….80 Tool-Tip Cell Component 2…………………………………………………….….…80 PandorabotComponentMO Server Class…………………………………….…….82 Code illustrating JXB Annotations…………………………………………….……..83 Code illustrating Component Client State…………………………………….…….84 Pandorabot Cell Component, Code on XML-RPC………………………….……..85 Terminal prompt representing running local server……………………….….……87 Illustrating Server page Deployed modules………………………………….….….87 Screen shot of Manage Server……………………………………………….………88 Wonderland starting World……………………………………………………………88 Illustrating the AIML Component………………………………………………….…89 Screen shot illustrating Pandorabot Window……………………………………….89 Screen shot of Chatbot Interface………………………………………………….…90 Annotated output from the Wolfram | Alpha website…………………………….…91
viii !!!!!!!
RESEARCH PROJECT Figure: 5.29 Figure: 5.30 Figure: 5.31 Figure: 5.32 Figure: 5.33 Figure: 5.34 Figure: 5.35 Figure: 5.36 Figure: 5.37 Figure: 5.38 Figure: 5.38 Figure: 5.39 Figure: 5.40 Figure: 6.1 Figure: 6.2 Figure: 6.3 Figure: 6.4 Figure: 6.5 Figure: 6.6
Chatbot Screen shot retrieving Query results based on XML…………………….92 Separate Gif images, based on results, generated from Alpha Engine…….……92 Image AIML tags for querying Wolframe alpha source……………………………93 Top view Blueprint……………………………………………………………………..94 Modelling Process……………………………………………………………..………95 Finished Building 3D Model…………………………………………………………..95 Name Board Modelling Process……………………………………………………..96 Name Board Modelling Process………………………………………………….….96 3D Modles from the Google Wearhouse……………………………………………97 Initial World building process in Open wonderland………………………………..97 NTU Virtual Campus in Open Wonderland…………………………………………98 NTU Virtual Campus Front Views in MUVE………………………………………..99 Chatbot and Open wonderland Applications……………………………………….99 Participates age Group………………………………………………………………107 Participates opinion on online education…………………………………………..108 Participates interest on new methods for online collaboration…………………..109 Participants highest engaged activities in MUVE Engine………………………..110 Familiarity of Chatbots with Participants…………………………………………..111 The Concept and usability of Chatbot in Virtual World…………………………..111
! !!Nottingham!Trent!University!
! !
N0235871
ix! !!!!!!
RESEARCH PROJECT
N0235871
LIST OF ABBREVIATIONS ABBREVIATION
MEANING
ALICE AIML API AI CIB DFD FOAF GPL GUI GNU HUD HTTP JDK JME JAXB JWI LMS MO MMORPG MUVE MSP NPC NLP OWL REST RTP RPC RFB RDF SVN SAS SPARQL SIP SDLC TCP URL VNC WFS WOW XML XMPP
Artificial Linguistic Internet Computer Entity Artificial Intelligence markup language Application programming interface Artificial Intelligence Computer and informatics building Data flow diagram Friend of a Friend General public license Graphical user interface General public license Head up display Hyper text transfer protocol Java development kit Java Monkey engine Java Architecture for XML Binding Java WordNet interface learning management system Managed object Massively multiplayer online role-playing game Multi user virtual environment Multimedia streaming protocols Non player character Natural language processing Open wonderland Representational state transfer Real time transport protocol Remote Procedure call Remote frame buffer Resource Description Framework Subversion Shared Application server Simple Protocol and RDF Query Language Session initial protocol Software development lifecycle Transmission Control protocol Uniform resource locator Virtual network computing Wonderland file system World of Warcraft Extensible Markup Language Extensible Messaging and Presence Protocol
! ! ! ! !!Nottingham!Trent!University!
! !
x! !!!!!!
RESEARCH PROJECT
N0235871
! ! !
1.0 INTRODUCTION
(Chapter-1)
Internet is a wonderful tool for learning new knowledge, which includes almost every essential tool for enhancing the learning process; Online Multi user virtual world offers new possibilities and challenges for “technology-enhanced learning” (Miller 2010), Open Wonderland, is a recently launched highly developed online multi user virtual environment engine which has several technical functionalities for learning new knowledge. This multi user virtual environment (MUVE) is offering education related framework, this requires a artificial intelligence related conversation agent or better known as Chat robot in short Chatbots which is very essential for a learning process on MUVE since this will enable human avatars to interact with an Open wonderland’s NPC (Non player characters) in virtual world using natural language. This Chatbots answering capabilities can be extendable by interfacing with Ontology’s for retrieving factual information’s, since this is very essential functionality for a Multi user virtual environment, which is based on educational features. The main motivation about this research project derives from Today’s Massively multiplayer online role-playing game engines, as these games are becoming very advanced and interesting which has millions of active users from around the glob; a major concern is what makes these online game types so exciting and interesting among game players. This observation led the to discover some of the major technologies and strategies which influence on the game players which are based on several frameworks that are inherited from many disciplines in form of individual concepts, which includes social networking, educational, artistic and artificial intelligence concepts, which makes it a multi layered framework in gaming virtual worlds, the AI concepts are associated with artificial intelligence based Chatbots for virtual assistance. As a result these online game world offers the entire frameworks in one highly concentrated place. The Author considered this fact in a different approach and deeply seeks to investigate the game technological strategies, which are influencing on the game players, can be utilized for educational fields using this developed framework. Similar to these virtual world game engines today there are highly developed MUVE (Multi user virtual environments) platforms available, which are based on similar framework but comparably less active. As these are highly focused on other disciplines such as for education and business reasons, one of a recent upcoming PAGE 1 OF 120
NOTTINGHAM TRENT UNIVERSITY
RESEARCH PROJECT
N0235871
! MUVE Engine is Open wonderland based on open source project, this MUVE engine has several technical functionalities for utilization. The audio communication technologies inside wonderland are excellent for user avatars to interact with each other and with objects and environments. Open wonderland offers great creative capabilities for users to create contents with the virtual world, including building, environments, and objects. Open wonderland is offering similar framework as a gaming engine. By considering these facts about Chatbot requirements on MUVE and experimenting on collaborative learning techniques using Virtual world for education systems the Authors research intensions were accelerated for integrating Chatbot on Open wonderland MUVE which also includes designing a virtual simulated learning environment which involves in designing 3D environment. Major principles for this project are highly influenced from Computer science field, since this is a vast subject, which includes many different fields according to (wikipedia 2012) computer science “is the scientific approach to computation and its applications”; this intend project seeks to utilize some of the important principles of computer science fields, which are based on Software engineering, Information Science, Artificial intelligence and Computer Graphics and Visualization, based on analyzing an existing system and applying the computer science fields to produce great outcomes. 1.1 PROJECT AIMS AND OBJECTIVES A. PROJECT AIM
The main Aim of the project is to integrate a Chatbot engine on Open wonderland MUVE, and experimenting with integrated Chatbot by interfacing with ontology’s to query knowledge base and finally to develop a virtual campus learning environment on open wonderland by designing 3D model of Clifton campus for utilizing the integrated Chatbot usage. B.
•
OBJECTIVES To explore and investigate about the uses of multi user virtual environment (MUVE) platform for education related purpose,
•
To investigate about available resources on Chatbot engines for integration on Open wonderland MUVE platform.
•
To Integrate Chatbot on Open wonderland MUVE platform.
PAGE 2 OF 120
NOTTINGHAM TRENT UNIVERSITY
RESEARCH PROJECT
N0235871
!
•
To learn programming standards for extending open wonderland, which is based on Chatbot integration by obtaining knowledge on both engines java API’s for integration.
•
Extending open wonderland platform, which includes two types, using Cell Module and Cell Component Module development standards for integrations.
•
To investigate and experiment with the integrated Chatbot about interfacing ontology’s for retrieving factual answers.
•
Building virtual World on Open wonderland, which includes in designing 3D models for virtual campus for demonstrating learning uses on virtual world with the integrated Chatbot.
1.2 CHAPTERS OVERVIEW
(DISSERTATION)
This dissertation has been split in to separate chapters, Chapter 1: Introduction, This chapter Provides general introduction on virtual world and Chatbot concepts including the background Authors motivations for undertaking this topic and defines the project aims and objectives for accomplishments. Chapter 2: Literature review, this chapter states the investigation about similar projects, which includes exploration of available Chatbot engines, designing new Chatbot Algorithm concepts and examining about the educational usage of MUVE (Multi user virtual environment) platforms based on Chatbot and discussions about 3D modeling tools. Chapter 3: Requirement Chapter presents more details then in introduction about the research project, which involves motivation of the project and this chapter describes more information on project Aims and objectives which are to integrate Chatbot on open wonderland the integration process has been divided in to three prototypes based on experimentation process with Chatbots. Chapter 4: Design, This chapter provides the design decisions identified in the requirement chapter which involves in Chatbot integrations prototypes design and discussions, and designs about a proper virtual world based online education concepts by illustrating diagrams of the activity process on virtual campus, and includes the designs about Virtual campus 3D models for implementations. PAGE 3 OF 120
NOTTINGHAM TRENT UNIVERSITY
RESEARCH PROJECT
N0235871
! Chapter 5: Implementation, This chapter describes about the integration process of Chatbot based on experimenting with three prototypes, first prototype to design a new Chatbot program, second prototype to Integrating with ALICE (Artificial linguistic internet computer entity) Chatbot based on Program-D which uses Java AIML Interpreter, third prototype based on Pandorabots which uses Program-Z Web based Interpreter. And then finally this Chapter provides results and testing of the prototypes and it also describes about the world building process for virtual campus based on developing 3D models. Chapter 6: Evaluation, This chapter consists of evaluation methods of the implemented tasks; some of the techniques are usability evaluation of MUVE system, comparisons between different Chatbots, and includes in Questionnaires, based on gathering information’s from the end users, finally the results of the evaluation are presented. Chapter 7: Conclusion, This chapter provides the overall project conclusions based on integrated prototypes and this chapter also contains Future works.
! ! ! ! ! ! ! ! PAGE 4 OF 120
NOTTINGHAM TRENT UNIVERSITY
RESEARCH PROJECT
N0235871
! ! 2.0 LITERATURE REVIEW
(CHAPTER-2)
2.1 INTRODUCTION The Author (Bin Chen, Fengru Huang et al. 2009) expresses that most of Today’s developments are focused on accessibility of information through virtually. According to the authors (Deléglise, Paul and Fjeld n.d.) Today web is becoming more sort of a 3D interface where users can able to interact visually and get more details This is Similar to a multi user virtual environment concept, since in this platform users can able to get more details with high interactions as compared to a web technologies, so today the focus is more on the virtual world development platforms since this will be the future of internet for retrieving information in a interactive way and its already been highly developing and it has completely changed our daily lifestyle in both our work and leisure activities at a necessary level in terms of easy exchange of information that was highly impossible in previous days. Internet and its core technologies like web is advancing over the years by added functionalities like becoming more semantics to make it more convincing to the users and for problem solving, similarly this era is becoming to alter more of finding a better interactive ways where as today the user wants to get information as short and simple to the exact questions with the factual details, as this is based on short answers to the queries, in contrast to this motivation there are intelligent web agents that has been improving from many years which is based on Artificial intelligence for responding to the queries they have been known in many terms as “Chatbot”, Conversational Agents, Virtual humans and many other terms, Chatbots all are based on one simple policy that is to convince the people as its an real person but in other approach it can be developed as a advanced search engines since the experimentations have already been in progress from many years, A most intelligent answer engine which has been build from many years is “Wolframe alpha” which uses several knowledge bases based on ontology’s to retrieve information’s for the users queries it has been build on mathematica which is a scientific computational software program (wolframalpha.com 2011).
PAGE 5 OF 120
NOTTINGHAM TRENT UNIVERSITY
RESEARCH PROJECT
N0235871
! Since today the concept and the technology of virtual assistance is becoming very successful in current generation, according to (en.wikipedia.org 2011) one of a famous Iphone application known as Siri, which “is an intelligent personal assistant users can able to interact with this Chatbot in natural language based on voice commands. According to Wikipedia, Virtual Intelligence is the combination of virtual world and artificial intelligence that has created innovative techniques to have a cognitive conversation with artificial entities known as virtual humans. According to the author (Peter Adolphs 2011) in the virtual world terms for virtual humans, is defined as NPC's which is known as "Non player Characters, the main purpose of NPC’s are to serve the real people in all sorts of virtual environments, NPC’s can be utilized in many ways, tutoring the user player avatars, gaming opponents, it can be an escort as an adviser, serving the users, and its is considered as a virtual robotic entity. Some of the NPC’s that have been recently developed requires a natural language conversation enabled features, which can be utilized for interacting with the human avatars, there are many highly developed Chatbot Engines that have been developing from many years which are available today, some virtual world NPC’s are integrated with these Chatbot engines which is in Second life MUVE (Geoffrey Crisp 2009) It would make a better virtual environments platform if there are NPC’s enabled with Interactive functionalities which is based on Chatbots.
2.2 SCOPE OF ONLINE EDUCATION There are many educational institutions throughout the world offering online educations and providing opportunities to numerous worldwide students as well as for elder people who have many commitments and won’t have time to in fact attained the college and perceive the degree in the traditional way, As this gap can be filled by developing a Virtual university environment that gives students the same simulations as the real university and better visibility in terms of gaining new opportunities to learn and perceive their desired degree and now that they could possibly achieve their education online with virtual world technology and get their degree from their selected university. Recently (Yankelovich 2012) blogs that, According to research cited by the authors (Schaarsmith and Pittsburgh 2012) these days almost one in three university students from around the world takes at least one online class. That number PAGE 6 OF 120
NOTTINGHAM TRENT UNIVERSITY
RESEARCH PROJECT
N0235871
! represents an rise of 10 percent over the prior year and extents to almost 6 million students around the whole world, who are connected to the MUVE classrooms, in the same way, The Author (Schaarsmith and Pittsburgh 2012) stated that today total heap of students purpose is to increase their knowledge in their preferred field of degree during their college days than enjoy the camaraderie of college life. So among most of the students today online education has become very popular particularly to obtain knowledge in their area of study through electronic way.
2.3 IMPORTANT FACTS ABOUT VIRTUAL WORLD BASED LEARNING According to (Allison,! Miller! et! al.! 2010) technology-enhanced learning, which involves learning in online virtual world environments, it offers new opening and tasks. These types of system have distinctive standard for facilitating interactive education based or knowledge construction.
Figure: 2.0 “Collaborative Learning Conversation Skill Taxonomy” (Tate 2012)
They tend to motivate and involve online learners in a very unique way by providing PAGE 7 OF 120
NOTTINGHAM TRENT UNIVERSITY
RESEARCH PROJECT
N0235871
! interactive learning environments. In general every virtual world will be a multi-user environment MUVE, so associating teamwork and group activities could be uncomplicated and immersive in three dimensions, Some of the highly developed existing virtual world like “open wonderland”, “Open Sims” and “Second Life”, these technologies remains to feature as very popular virtual world for educational related usage.
2.4 VIRTUAL WORLD PLATFORM 2.4.1 GENERAL BACKGROUND OF INTEGRATION PLATFORM (VIRTUAL WORLD) According to (Bartle 2004) the author expresses the virtual world as, in prospective of “World” it’s a location or environment that holds population, and the author describes “Virtual” as, a combine of reality and imaginary. So as the authors exact definition on the topic of virtual world is described as (Bartle 2004) “Virtual worlds are places where the imaginary meets the real”. According to (Hill, Hyuk-Jin Lee 2010) Virtual worlds are one of the electronic ways of communication that enables users a great deal of knowledge that some types of work may perhaps difficult to accomplish in the real world scenario As stated by (bishopphillips 2010) the virtual world is a sort of three dimensional, software environment or land, where multi users are able to connect to this environment and each of their character are individually focused in this sort of software environment, like a “digitally projected image, text identity or other computationally representational object”. In that virtual environment which involves in many 3D environments with options for users to teleport many locations where users can exist virtually in form of avatar in the virtual world, in that software environment avatars can be movable, they can live, survive, communicate, share, and learn. As the users can able to feel the similar presence of reality in virtual environment. Today the main concentration is on extending functionalities or capabilities in these kinds of Virtual world platforms since the core platform framework is already existed and available for users to extend the system by deploying their own sources packages to integrate additional features or capabilities in to the virtual world.
PAGE 8 OF 120
NOTTINGHAM TRENT UNIVERSITY
RESEARCH PROJECT
N0235871
! 2.4.2 THE HISTORICAL RATIONALE OF MUVE TECHNOLOGY
(Bin!Chen,!Fengru!Huang!et!al.!2009) reported that. Today most of the virtual worlds are part of huge online multiplayer games, almost every virtual world will support two dimension and three dimensional graphics also considering more than hundred or even thousand times of frequent users from throughout the world are using it. This has made a huge impact on the developer’s side as they tent to focus on the concept of virtual world technology outside the game circle more than any other technologies. In the modern years virtual worlds are being a massive part of social out casting, socially active virtual worlds like “Second life”, “There” and “Open wonderland” holds the majority of users and populating new users throughout the years. According to (Kirriemuir 2011) investigations, Author stated that there are raising numbers of virtual worlds permitting remote users to create avatars, able to meet other avatars, trade between them, communicate and developing a virtual platform in a online shared virtual environment. Since September 2011, “Wikipedia has listed 70 virtual reality communities; several dozen more are not listed, or are in development”. As stated by (karlkapp 2010) Virtual World Statistics were been investigated in the fourth sector of 2009, registered majority of number virtual worlds, 803 million has reached in account division. “This is a 19.7% (132m) quarter on sector raise, almost 671m registered accounts in the third quarter of 2009. In accordance with (Kirriemuir 2011) among most of the virtual world today Second Life is the most used virtual world throughout the glob, as of 2011, second life has been top rated for educational use also Used for wide verity of functional and technical reasons
Figure 2.1: Recent Statistics chart of Second life total signups (image source (Nino 2012)) PAGE 9 OF 120
NOTTINGHAM TRENT UNIVERSITY
RESEARCH PROJECT
N0235871
! Based on research cited from May 2008 by (Kirriemuir 2011) revealed that more than 80% of United Kingdom universities have been developed virtually, they are stared to involve in virtual environment using Second Life virtual world. This statistic surprised many UK academics, current investigations demonstrates a stable uptake of Second Life in particular by academics and researchers within United kingdom in spite of this, in recent years there are other new alternatives in virtual worlds have started to be used by United kingdom as well as other academics throughout world, in their academics related work. In addition many worldwide companies like some of the massive organizations are part of these technologies as well. The main motivation behind this technology is the equal presence of reality, society or existence from that specific company, can be simulated virtually to give the similar presence online so it could reach all the interested users throughout world wide and make the international crowd as localized and make them feel the reality of that organization. As stated by (Chen,! Warden! et! al.! 2011) both in foreign language and business classrooms role-playing is commonly used to practice variety of skills, it is not possible through traditional lecture methods. To overcome these types of problems, online immersive simulations would be suitable as it presents feasible solutions to these problems. It has been stated by(Mikropoulos,! Natsis! 2011)in the previous decades, many popular educational institutions from throughout the world have agreed and reported to consider the acceptance of providing education through virtual world environments. As stated by (Bin!Chen,!Fengru!Huang!et!al.!2009) contrast to the above motivation of the available technology, massive organizations such as IBM has got its headquarters virtually active online in virtual world environment. Also in “Second life” Embassy of Sweden is available. Mainly “Second life” has earned the users attention from every other virtual world technology available today due to its developments features; it can be used as a tool for developing the virtual world environment, because “Second life” has been available from many years it has been popular. But today there are many other recent similar technologies are available such as “Open wonderland” which is also (Kaplan,! Yankelovich! 2011) a recently available more advanced platform of virtual world which every user could use it to upload 3D Model created by tool such as Google SketchUp as its a tool for creating Three dimensional model it is less complex to use then any other 3D modeling tool that are available as a open application from Google, once the 3D model is designed it can be uploaded to PAGE 10 OF 120
NOTTINGHAM TRENT UNIVERSITY
RESEARCH PROJECT
N0235871
! open wonderland as a virtual world. The design of this technology is entirely based upon open source; it is extremely modular and designed with a focus on extensibility of wide verity of uses, includes education, teaching, and group associations or collaborations. Since it is freely available online for developers to utilize.
2.4.3 EDUCATIONALLY ENHANCED VIRTUAL WORLDS According to (E. Prasolova-Førland, T. G. Wyeld, M. Fominykh 2010) research made of the virtual world technology and developed a Virtual Campus for the “Norwegian university of Science and Technology (NTNU)” as a virtual ground for educational activities. In their research report they have discussed and developed three plan from their case studies, that includes, to start of the project they have used Second life as a developer tool kit to make the virtual campus, first case study is about the “Venue for guest lecturers”, second case study is on “Virtual campus as a place for collaborative three dimensional visualizations and cross-cultural interaction” and the last case study includes “Virtual campus as a venue for international summer school” and finally Based on these achieved results, the Author has discussed the advantages and challenges of all the tasks that they endeavor during this approach and concluded as, Virtual university campus needs to offer a well-organized, easy to use and methodical toolset for sustain of a large scale of shared learning activities. Also the Second life has some technology related drawbacks that students expressed after using the system, like delay in resizing objects, program that requires high maintenance to run, it requires high Internet speed to load the objects as well as to load the screen properly and it requires huge memory space in the hard drive. So in contrast to this research, there are few technical barrier in Second life technology to develop education related virtual world technology by going through this survey I have endeavor some important instructions about using the right tool for developing educational related virtual worlds. Another research by (Schendel,! Chang! Liu! et! al.! 2008) their research topic called “Virtual Gallery Walk, an Innovative Outlet for Sharing Student Research Work in K12Classrooms” as the title is defining their idea behind their research and the development of a virtual gallery walk for showcasing student’s dissertations by sharing their work virtually. In their case study they clearly defined about their motivation behind this research was to make every graduate students research projects more attractive for young school students as they grow up they can build their PAGE 11 OF 120
NOTTINGHAM TRENT UNIVERSITY
RESEARCH PROJECT
N0235871
! knowledge toward research projects by using this virtual gallery walk where research projects from senior students work will be showcased in form of a wall posters in a very attractive gallery kind of environment, that virtually they can walk and visualize their works and get inspired by viewing different kinds of research works and finally author concludes that virtual worlds are rarely being utilized in K-12 students and it will make a big deference in the young students mind if they were provided a virtual campus from their school to involve in these activities. By doing this survey it lead me to think not only it is important to evaluate the latest tools that is proper to be used for developments but also it demonstrates the use of virtual world that it could be used in any sort of discipline, So in my point of view its an innovative escalator for school students to build up their creativity and interest in their research project if they would have had this opportunity in every good schools throughout the world would be better. Other Research from(Bin! Chen,! Fengru! Huang! et! al.! 2009) “Using virtual world technology to construct immersive 3D virtual university” as the authors aim was to build a second campus virtually, of a very historical educational institute called “Peking University” located in Beijing, China. They have used “OpenSimulator” and “Second Life viewer” in the development of this project. The motivation behind such a decision was that “In modern years Massively Multiplayer online role playing game (MMORPG) is one of the largest and most common type of virtual world type game play”. Many individuals are having different avatar and committed to some quests in the particular type of game and interacting with in the world and completely they have involved in the virtual environment and feels almost real as they tent to communicate and interact with in the world. This way it will make a big deference in obtaining knowledge in their chosen field, as it is similar to completing their quests like in a game environment. This theory lead the Author to judge the present interest in the field that it will increase in future, there will me more advances in this field and the author started to contribute to words this research. A different Academic research by(Alexei Sourin, Konstantin Levinski, Qi Liu 2010) to develop a virtual campus for “Nanyang Technological University NTU”, the author has researched on the important factors of the virtual world technologies, the motivation behind this research that he address in his article was mainly for graphical students to learn in the virtual world technologies, As it is a great multimedia place for electronic education. And dedicates his overall importance of this development was to give the graphical students a new way to learn the graphics by associating virtually with other students as well as lectures to view the work simultaneously for every one PAGE 12 OF 120
NOTTINGHAM TRENT UNIVERSITY
RESEARCH PROJECT
N0235871
! on the web same time virtually, so that every students can able to see many differences of the expertise in the students and can able to learn in a very visualized way. Developers from Spain (Ibanez,! Kloos! et! al.! 2011) have described in their article “mixed-reality experience for learning Spanish as a foreign language” which they intended to extend capabilities of an open source multiuser Three-dimensional virtual world platform to organize education activities and use augmented reality and augmented virtuality. System Architecture that they planned to propose for the architecture are, it is based on Open Wonderland (Openwonderland 2012) As the author states it’s a Java open source With multi users virtual environment toolkit with features like it can be extendable by adding or modifying certain inbuilt modules of open wonderland. ! (Ibanez,! Kloos! et! al.! 2011) “Their architecture expands Open Wonderland server into the Three-dimensional Learning Environment Server (3DLEnS), with capabilities fore establishing correspondence between physical and virtual objects, exchanging multimedia information between the physical and virtual world, and orchestrating learning activities. We also extend the Open Wonderland client to visualize information from the real world”.
2.4.4 EXISTING VIRTUAL WORLD PLATFORMS Today there are several types of multi user virtual world environment that exists, among them some of the most well known is “Second life” and “Open wonderland” these MUVE (Multi user virtual environment) has been active and available for public users to utilize, this has attracted many developers world wide. In this literature review the Author has selected most advanced two MUVE to evaluate based on most advanced, developer’s friendly and open source. By comparing between the virtual world platforms to integrate the virtual intelligence that is Chatbot, the platform, which the author is interested to evaluate is “Second life” and “Open wonderland” to examine the most suitable virtual world platform to finally integrate an advanced Chatbot engine.
PAGE 13 OF 120
NOTTINGHAM TRENT UNIVERSITY
RESEARCH PROJECT
N0235871
! 2.4.4.1 TECHNICAL REVIEW OF IMPORTANT TOOLS AND METHODOLOGIES 2.4.4.2 SECOND LIFE TECHNICAL REVIEW According to (Ian!2008) Second Life is three dimensional MUVE its been constantly developed by its virtual residence population. It is been expected that Second life MUVE to be increasingly popular throughout the world wide on Internet so it is necessary to have knowledge in Second life’s system architecture. Following the Author(Ian!2008)validates the technical background information about “Second Life”
Figure: 2.1.a I-Room, Emergency Response Incident Training (Tate 2012) There are two main components of the “Second life” Client and Server, based on UDP Protocol, the Client which is operating from the user’s computer and the server user interfaces the graphic rendering and three dimensional tools are operating on the client, whereas the server simulates the virtual environment. A real server (1 CPU) is required and responsible for maintain 16 acres of virtual land and it is associated to next lands nearby ones which are each responsible for an additional 16 acres of virtual land. Objects in that particular virtual area is responsible by server.
PAGE 14 OF 120
NOTTINGHAM TRENT UNIVERSITY
RESEARCH PROJECT
N0235871
! A. THE SIMULATOR (SERVER)
Second life is build on single treaded peace of software C++ application, which includes Linux OS, it has 15,400 simultaneous simulators, fixed size is 256x 256m, it uses havoc physics, also it involves in linden scripting language (LSL) scripting and it performs visibility calculation, scene compression and streaming it is responsible for 256 meter on the side, which (Ian!2008) quoted that it is not rational but they decided to build this application in 1999 as they were programmers. It is responsible for 16 acres of virtual land, it simulates all the rich body dynamics it runs every scripts for all the objects from that land grid in that area, it is primarily responsible for every user who logged in and virtually standing In that area, it will figure out to stream the environment in the optimal standard to the user, then actually compress the world data to the user. It is completely similar to the game theory, This application uses a fairly standard frame loop where it executes, single while loop function such as, For every frame, process any inputs stay changes that had miscellaneous clean up, then passes to the physics engine time, then it will figure outs what is happened since the past frame and then if there is any time left it will spend that on executing users scripts. Simulator’s targeted frame rate is 45 frames per second that means it has 22 milliseconds in which to do all the physics updates the entire user updates. Then it compresses and transmits more data. B. THE VIEWER (CLIENT)
According to (Ian! 2008) “The Viewer” is very similar to its Simulator in terms of development of this program it is coded in C++, it will run on Windows, Mac OS X, Linux Operating systems and has 50,000 concurrent viewers also it holds the creation tools that are built-in, there is no options for client scripting, no plug-in. It also follows the exact frame loop as the simulator. It does not have a frame target range for the users, as it is completely depends on the users hardware configurations, this contains user interface, the front end for all the 3D creations tools although those are ultimately backed up by the simulator, if users want to build objects in second life then they are interacting with the simulator and extending those objects in real time. And the responsibilities of the viewer are basically supply user inputs for the avatar to the simulator then shows user location and sync the data and then receives the flood of information about the world from the simulator and then turns that in to which users PAGE 15 OF 120
NOTTINGHAM TRENT UNIVERSITY
RESEARCH PROJECT
N0235871
! can actually render in open GL (http://www.opengl.org/) which is Open Graphics Library.
Figure: 2.2, The Architecture framework of Second life, Image source (Ian!2008)
Above image contains the overall architecture of the second life, Clients will connect to multi simulator at the same time all this is based on the UDP messaging protocol, Database is based on MySql, Simulator is the mediator for the database, simulator are storing and fetching all the user information’s from the database, some of the services it includes such as voice service (voice chat) will work independently of the simulator, the serves mainly do to two things, first is Release workload to simulator servers and the second is Maintaining independent clients for the free movement of avatars between servers.
The voice connects multiple avatars and projects that
connection directly on the simulator.
PAGE 16 OF 120
NOTTINGHAM TRENT UNIVERSITY
RESEARCH PROJECT
N0235871
! 2.4.4.2 OPEN WONDERLAND TECHNICAL REVIEW According to (Kaplan,! Yankelovich! 2011) in their article, “Open wonderland Extensible virtual world architecture”. They have described about technical detail on “Open wonderland”(http://openwonderland.org/ n.d.), it is a development toolkit for developing three-dimensional virtual worlds; Java programming language is used entirely for developing wonderland, it is based completely on open source.
Figure: 2.2.a Open wonderland “Virtual cockpit for executives” (Korolov 2011) According to (Korolov 2011) “A French virtual design firm has created a virtual command center for organizations looking to have all their business intelligence dashboards in a single virtual location. Internet 3 Solutions‘ Cockpit Enterprise 3D is already used by a university and two regional organizations, and was built on top of the Open Wonderland open source immersive environment platform.” Its design architecture are, “Open wonderland” is a client-server based model for creating shared virtual worlds. Where “world” refers to as a open virtual space with its three dimensional property, to collaborate to this virtual space clients can able to connect. The client grants a browser and turns these shared services into a threedimensional environment view. It contains downloading, rendering graphics and caching content, acts in response to the users interactions, and responding to server messages. PAGE 17 OF 120
NOTTINGHAM TRENT UNIVERSITY
RESEARCH PROJECT
N0235871
! A. WONDERLAND ARCHITECTURE
Figure 2.3: demonstrates range of components of Open Wonderland’s image source(Kaplan,!
Yankelovich!2011) Author (Kaplan,! Yankelovich! 2011) describes about the communication protocol of open wonderland as it is based on Client and Server based model it uses number of networking protocols to make the communications. Web services for validating the users, logs authentications, downloading code, and world resources like three dimensional models and textures, Traditional TCP transmission control protocol base foundation for communicating data of the word like properties of the object and their position. For audio purpose, Session Initiation Protocol (SIP) and Real-time Transport Protocol (RTP) are used.
For sharing applications, videos and screen it uses
Multimedia streaming protocols (MSP). B. SERVER COMPONENTS OF OPEN WONDERLAND
(Kaplan,!Yankelovich!2011) states the components of wonderland server, it includes four collaborated services mentioned are. Every service is a separate Java application with its own storage and networking mechanisms developing these as separate services gives improved or better scalability and flexibility. In general every service are deployed in particular machine also some of the services can be extendable to many other machines to improve the scalability.
PAGE 18 OF 120
NOTTINGHAM TRENT UNIVERSITY
RESEARCH PROJECT
N0235871
! The four cooperating services of the open wonderland server described from the author (Kaplan,!Yankelovich!2011) the administration server of the web is the main coordination point for the many services. The Server is mainly based on “GlassFish Server” open source java EE application server (GlassFish Server n.d.). The core functionality of wonderland such as asset management and authentication are implemented as Java EE web services in those web server.
Another server is
Darkstar server, which is basically based on project Darkstar technology and also founded by Sun. Darkstar grants a server platform mainly for online games that. For audio mixing application “Voice Bridge” was developed as a part for wonderland to give server side high fidelity audio. It executes as a different server that combines SIP audio for many number of users. And “SAS Shared application server” is the remaining standard server component. C. WAYS TO EXTEND THE FUNCTIONALITIES
(CELL DEVELOPMENT)
According to (Slott 2009) In open wonderland the ways to extend the functionalities in the virtual world platforms is to deploy the source codes in a modular structure which is type of plug-in to extant the functionalities in open wonderland, The module architecture is based on rendering a 3D objects in to the open wonderland is called Cell Modules with server and client synchronization methods to properly deploy it in to the server and able to view between other world wide clients which the source code is organized in a packaged way which in open wonderland term is defined as Modules. Modules can also be able to extend its capabilities in similar manner known as component developments in open wonderland terms.
Figure -2.4 Open wonderlands Module Cell Architecture Image source (Slott 2009)
The Open wonderland Module Cell Technical Architecture, its based on graphics rendering concepts which any object that needs to deploy in to the world would use Cell module architecture, which the above image describes the server and client message passing through client-server transfer protocol network, to focus little bit inside the module package the sever side includes a java class which represents Cell Managed Object, which manages the shared state of the virtual environment through PAGE 19 OF 120
NOTTINGHAM TRENT UNIVERSITY
RESEARCH PROJECT
N0235871
! all the client avatars the "Managed object represents a different object that is part of Project Darkstar gaming engine components, on the other side the client uses MyCell java class which is responsible to render a object which is Cell in the virtual world by loading some of the art resource as well as by drawing graphical objects straight away in the world using the jMokneyEngine which is based on 3D API's =
2.4.4.3 EVALUATION OF THE TECHNICAL REVIEW Second life and Open Wonderland are both virtual worlds, but its quite different compared by its qualitative and nature. From academic point of view I consider that Open wonderland is a better choice for development platforms. This is because of the GPL Licensing for Client and Server. Second life has less then perfect status compared to its open source efforts are concerned. Also from the developers point of view for developing virtual learning environment in open wonderland is superior compared to Second life. Open wonderland has some great features compared to Second life which is not possible to accomplish in second life that is Application sharing, social computing, developing Collaborative whiteboards, sharing videos. Second life Simulator’s targeted frame rate is 45 frames for second that means it has 22 milliseconds in which to do all the physics updates the entire user updates. Then it compress and transmits more data, as this is single threaded application, developers stated that they are using one simulated per CPU Core, Author(Ian!2008)stated that will change eventually with updated in the graphical developments. It means that intergradations is relatively terrible, if physics engine really bogged down for instance then users will start to miss the actual speed of the MUVE and users cannot able to complete all the competitions in the world as it requires 22 milliseconds to stream the GUI frames which requires high speed internet connection to stream the frame per second, if not it will complete in 44 milliseconds which means that ultimately the virtual world slows down by half speed, avatars will be moving very slow motion, slow experience of virtual world is resulted in many cases here in Second life. By Analyzing the relevant tools and methodologies that will be used in the later phases of the development, Open wonderland would be feasible for integrating the Chatbot engine and later to focusing on the educational industries side as it is open source, cross platform toolkit which offers a client-server network communication architecture is fairly un-complex compared to Second life and the amount of high PAGE 20 OF 120
NOTTINGHAM TRENT UNIVERSITY
RESEARCH PROJECT
N0235871
! technology requirements are low in open wonderland that can easily access and launched by a web browser with out the need for an installation of any software at the clients end to load the entire virtual world environment where as in Second life the clients has to download the Viewer to connect to MUVE.
2.5 CONVERSATION AGENTS AND CHATBOTS 2.5.1 THE REVIEW OF THE CHATBOT TO INTEGRATE ON THIS VIRTUAL WORLD PLATFORM According to the author (Bayan Abu Shawar 2007) Conversational agents or chat robots in short terms called Chatbot are a key component of artificial intelligence systems which is based on performing natural language processing (NLP) with humans it is a type of machine conversation with persons. Chatbot programs started in the early 1960's. The first Chatbot named ELIZA with the functionality to respond to the queries was developed by Weizenbum in 1966; this Bot was based on a simple keyword matching techniques to scan for similar user inputs, those times the expected goal from this system was to mimic human conversations but later years it became more focused and utilized in many disciplines such as to retrieve information’s, for business purposes, educational purposes, e-commerce and many more. As stated by the author (Joyce Chai 2002) "Just as people use language for human communication, people want to use their natural language To communicate with computers" In contrast to these motivations the human computer interaction research communities has been considering to facilitate this system to talk to computers, since then the conversational agents become to increase and has been constantly improving in cognitive capabilities to response to the queries. As stated by the author (Bayan Abu Shawar 2007) After the first Chatbot named Eliza, many Chatbots have been developed over the years some of them are MegaHAL (Jason L 1998), CONVERSE (Batacharia et al., 1999), Elizabeth (Bayan Abu Shawar 2007), HEXBOT (2004) and the most recent and advanced Chatbot is ALICE (1995), over the years Chatbots have been more practical by the improvements in the advancements of data-mining with some of the techniques of machine-learning’s, robust linguistic annotations, XML standard tools to process information’s. Today the Chatbots are made use in some of the most advanced firms to save the man power also to record the logs of frequently asked questions which many of the users will be interacting with it which most of the time is the same specific related answers and in some cases the firms can able to track new questions from the Chatbot logs that the PAGE 21 OF 120
NOTTINGHAM TRENT UNIVERSITY
RESEARCH PROJECT
N0235871
! users are trying to query and then it can be improved from these logs, the places where these kinds of Chatbot are made use of is helpdesks, hotel reservations, air reservations, virtual world assistance known as NPC’s and many other disciplines The below flow chart represents the simple response retrieval from querying question based on knowledge as a graph
Figure -2.5 The AIML querying diagram, Image source (Fritz Kunze 2003)
Since the Chatbots have fairly been improving in its versions from the early prototype named ELIZA, which is based on pattern matching, the new and latest Chatbot named ALICE (Artificial Linguistic Internet Computer Entity) is the top most improved version of ELIZA, which is based on AIML (Artificial intelligence markup language) it has been developed from past decade by Dr. Richard S. Wallace.
According to (BBC NEWS 2004) Alice had won the Loebner prize in 2004 which is based on artificial intelligence Chatbot competitions, since then ALICE has been PAGE 22 OF 120
NOTTINGHAM TRENT UNIVERSITY
RESEARCH PROJECT
N0235871
! constantly winning the competitions the community has took a immersive interest in improving the conversational skills, In the literature review the Author confirms the integration prototype and improving experimentations is based on ALICE Chatbot Engine. 2.5.1.1 ALICE (ARTIFICIAL LINGUISTIC INTERNET COMPUTER ENTITY) According to the Alicebot Foundation community (http://www.alicebot.org/aiml.html 2012) The Alice Chatbot is based on AIML (Artificial linguistic market language) it uses XML-compliant language, it stores its knowledge base in AIML format, mainly has patters and response of English conversations, the Chatbot engine community is based on open source community since 1995. It mainly focuses on people to query by dialogue pattern information’s. According to the author (Bayan Abu Shawar 2007) AIML includes data objects known as AIML objects, these are done in terms of units called topics and categories. The root element is topics it is optional and it has the attribute name and categories sets related to the root element, which is topics, these Categories are the basic knowledge bases in AIML. The working system of the AIML is, it has topics and categories as xml elements, each of the categories is address as a rule to match an input information’s and then to convert the input strings to an outputs which then includes the patterns these are key features to match the user inputs and includes a template which is to generate the responses from the Chatbot as answers. According to the Alicebot Community (http://www.alicebot.org/aiml.html 2012) the Most important tags of AIML document are,
tag starts and ends an AIML document this tag marks "Unit of knowledge" in the Chatbot Knowledge base this tag contains basic patterns that recognizes, by users input information’s like what they may say this tag consists of responses to inputs made by the users
!
The ALICE, AIML knowledge base includes almost 41,000 categories, the example of one of them is shown below
PAGE 23 OF 120
NOTTINGHAM TRENT UNIVERSITY
RESEARCH PROJECT
N0235871
!
WHAT IS ROBOT ROBOT "Any anthropomorphic mechanical being, built to do routine manual work for human beings"
! 2.5.1.2 UTILIZING THE ALICE CHATBOT ENGINE TO INTEGRATE ON VIRTUAL WORLD According to Wikipedia, ALICE is released under the GNU GPL license, and has released many ALICE based AIML Interpreters under free open source, the AIML Interpreters have been developed and available to the end users or developers for modifications it is available in several programming languages such as Program-D it is based on JAVA, Program-R is based on Ruby, Program-Q is based on C++, Qt, Program-W is also based on Java, CHAT4D is an French language based on Delphi, Program-O is based on PHP/MySQL, Program# is based on .NET/C# and RebeccaAIML is based on C++, JAVA, .NET/C#, Python, Eclipse AIML editor plug-in and including the AIML interprets there is an online Chatbot engine known as Pandorabots which is based on Chatbot webhosting. A. JAVA BASED AIML INTERPRETERS
According to the Alicebot foundation(http://www.alicebot.org/aiml.html 2012), there are 4 types of java based AIML interpreters are available they are, 1. CHATTERBEAN: it is based on AIML Interpreter defined as Alicebot, which is totally written in Java, the main goal of this Interpreters are, it is simple to implement and to customize is easy based on JavaBeans-compliant architecture plug-in, has Core API's for developing concise codes it is easy to modify and understand, it runs the binary version of console application on appropriate JDK and it depends on Java API. And it holds very limited capabilities as the community describes that chatter bean is aimed to be simple for the client developers to utilize it doesn't have a interface, it supports remote communication protocols. The ChatterBean later version is 00.008 released on 2006.05.07 supports JavaScript’s and some additional features.
PAGE 24 OF 120
NOTTINGHAM TRENT UNIVERSITY
RESEARCH PROJECT
N0235871
! 2. PROGRAM-D: It is more advanced and stable version of all the interpreters, this Interpreter is based on J2EE web application, and its the highly used Java based Chatbot Interpreter and it is open source, it has all the necessary features includes best sets of AIML specifications, this interpreter can support unlimited numerous Chatbots in one server instance and the architecture is open ended to interacting with lot of different interfaces and it can be deployed on IRC, AIM and Yahoo Drop-in listeners, includes good API's JavaDocs about the Program-D Interpreter the latest version is 4.6 released on 12 March 2006 and a new version is being developed which is 4.7, 5.0 soon it will be made available in the community. 3. CHARLIEBOT: it involves in Program-D v4.1.5, Alice and Anna v7.0 projects, mainly build to run on Mac OS X but it works on all the Java VM 1.3. The Character of this Chatbot is based on a computer enthusiast aged 58 year named Charlie. 4. PROGRAM-W: it is based on AIML Interpreter developed totally in Java, further it extends Program-D Interpreter uses some technologies, it has new AIML tags involved in responding which allows the Chatbots to request the queries to Lexical Dictionary WrodNet. B. ONLINE WEB-BASED AIML CHATBOT ENGINE
1. PANDORABOTS: According to (Bayan Abu Shawar 2007) After the ALICE has been recognized and active among many users, the Chatbot has been famous for its effectiveness and later many versions of ALICE has released in many ways including stand alone applications and web based applications, the architecture is based very similar to the AIML Interpreters, The version of Alice was released for nonprogrammer to deploy their own personal Chatbots from 2002 and the Alicebot foundation named it as Pandorabots, the Pandorabots is based on Lisp, and the interpreter version is called Program-Z, main reason was to host on internets freely through Website based Chatbot hosting services for end users to utilize and integrate on their domains.
PAGE 25 OF 120
NOTTINGHAM TRENT UNIVERSITY
RESEARCH PROJECT
N0235871
! C. ALICE (BRAIN) AIML KNOWLEDGE BASE
!
Figure 2.5, The AIML Knowledge Top Level Diagram, Image Source (Wallace 2001)
According to Author (Wallace 2001) It is structure of the ALICE Brain which is the overhead view of the Knowledge, this includes 24,000 Categories which was estimated in 2001, and 3rd image in the gallery shows the plot 1/4 of the patterns it has about 2000 stored patters, rooted such as "WHAT, WHEN and WHO" it is a representation of "Graphmaster graph". According to the (Dr. Richard Wallace 2003) The Background Architecture of Pandorabots Implementation are as follows, The programming language is a Common Lisp runs on Linux; The reasons for choosing this architecture by the ALICE foundations because of some advantages, which are 1. Chatbots hosting based on Low-Budget 2. Mainly focused on Low-Budget Chatbot application development and deployment for better prices 3. And the positive side for these architectures is the capability to change the system when it’s running. It has many advantages compared to the Console AIML Interpreters, as it offers a range of services to the users by allowing to create their Owen Chatbots characters and able to host it on the web, and is based on multi-lingual it also can execute arbitrary programs the most importantly it can be embodied by a character and able to utilize using the Pandorabots API’s to query online knowledge base such as Wikipedia.
PAGE 26 OF 120
NOTTINGHAM TRENT UNIVERSITY
RESEARCH PROJECT
N0235871
! 2.5.2 REVIEW RELATING TO SIMILAR PROJECTS BASED ON RELATED AIMS 2.5.2.1 INTEGRATION OF CHATBOTS ON MUVE PLATFORMS According to the author (Sukhanya Kethuneni 2007) the popularity of the Multi user virtual environments, the health care organizations have took it to another level to interact with people, in the research work they have proposed a virtual assistant based on health care advisor integrated it on second life virtual world platform, the author points out the focus was to escort the users by walking with them and assisting about healthy habits like healthy eating, good exercises, medical advices and discussion about diseases, the Chatbot obtains several information’s from the users and analyze their behaviors, below the diagram shows about the interaction with Chatbot to healthcare database
Figure -2.6 Virtual Assistant of Health care Image source (Sukhanya Kethuneni 2007)
The request is based on the text chat, the text is analyses once the user request by the Chatbot engine and responds by providing a correct answer as text, the Chatbot is based on AIML (Artificial intelligence market language) named Pandorabots it is a web based, as the authors points out that using Pandorabots the Bot administrator can always able to extend the Chatbot knowledge through online with increase the ability of the virtual humans responses Developers from Spain (Ibanez,! Kloos! et! al.! 2011) have described in their article “mixed-reality experience for learning Spanish as a foreign language” which they intended to extend capabilities of an open source multiuser Three-dimensional virtual world platform to organize education activities and use augmented reality and augmented virtuality. System Architecture that they planned to propose for the architecture are, it is based on Open Wonderland (Openwonderland! 2012) As the author states it’s a Java open source With multi users virtual environment toolkit with features like it can be extendable by adding or modifying certain inbuilt modules of open wonderland. ! (Ibanez,! Kloos! et! al.! 2011) “Their architecture expands Open PAGE 27 OF 120
NOTTINGHAM TRENT UNIVERSITY
RESEARCH PROJECT
N0235871
! Wonderland server into the Three-dimensional Learning Environment Server (3DLEnS), with capabilities fore establishing correspondence between physical and virtual objects, exchanging multimedia information between the physical and virtual world, and orchestrating learning activities. We also extend the Open Wonderland client to visualize information from the real world”. According to (Hiroshi Dohi 2009) the author expresses in their research work with the aim of having a "Life-like agent interface with second life avatars" due to the benefits of the virtual world the author is motivated to integrate a virtual intelligence on second life NPC avatars, they have successfully accomplished the prototype of an Life-like Agent in second life, the aimed goal was to realize the benefits of using the autonomous 3d virtual agents. 2.5.2.2 AIML BOTS BASED ON ADVANCED SEARCHING CAPABILITIES A. ENHANCING AIML WITH SEMANTIC WEB TECHNOLOGIES
According to (Freese 2007) AIML is based up on XML format, that is type of patterbased knowledge response stimulus and the information’s can be retrieve, request and processed through online web as well as offline ways, the offline way uses console AIML interpreter its a massive coded software precisely known’s all information’s about Bot, to generate response in the interpreter a module known as responder manages the Bot-to-human also human-to-Bot user interface, A language that represents metadata is RDF ((Resource description framework, particularly about web sources RDF has some collection of triples, each of them illustrates a relationship between the linked statements or contents, which is the triples has built in three parts such as "a subject, an object and a predicate (which is also known as property) which is intend to show the relationship in most cases the triples shows a simple human readable sentences. In the research the author has dedicated his time to integrate semantic web technology on AIML-based Chatbots in a way that Conversion of RDF to AIML categories, which hold topics and patters to convert the RDF to AIML knowledge, based on many ontology’s
PAGE 28 OF 120
NOTTINGHAM TRENT UNIVERSITY
RESEARCH PROJECT
N0235871
! B. A SEMANTIC WEB BASED AIML AGENT CALLED XOPERATOR
According to (Sebastian Dietzold 2008) the author expresses that instant messaging is an added part of email and web system which is highlighted as the most popular service over the internet, the author is promoting the xOperator is a concept of linking the network between semantic web and instant messing services the main idea behind the operator is that, to merge AIML based Chatbot conversational agents with the semantic web based ontology’s such as social networks knowledge base FOAF, with integrating a top security awareness and trust in querying requests to access a massive scale of heterogeneous source of online information’s through text based information retrieval, as the technical architecture of the xOperator is shown below which is based on the evaluation of AIML sources to retrieve the RDF documents
Figure -2.7 xOperator Agent Technical Architecture Image Source (Sebastian Dietzold 2008)
The author describes the technical architecture flow from the above diagram as the Chatbot Agent xOperator is a mediator for a XMPP client such as Jabber, which is one side is the xOperator agent and the other side is the web it uses SPARQL to query the RDF documents based on the analysis of AIML pattern and retrieves the results based up on the users query. C. PANDORABOTS WITH WIKI AND WOLFRAME ALPHA
According to the Author (Restless 2011) the AIML based online Chatbot known as Pandorabots which is integrated on Second life can now able to query online knowledge base such as Wikipedia and Wolframe alpha which was created by the wolfram research team, which is one of the most toughest intelligent engine, the merge of wolfram alpha query, Wikipedia query and AIML with customized responses based up on Pandorabots will make the Chatbot the most intelligent AIML based Chatbot agents in second life.
PAGE 29 OF 120
NOTTINGHAM TRENT UNIVERSITY
RESEARCH PROJECT
N0235871
! D. IMPROVING CHATBOT BRAIN THROUGH PANDORABOTS
According to (Doubly Aimless 2004) The advantage for using Pandorabots are users can able to extend Chatbot knowledge web based online functionalities using chat robot programming language known as AIML, because it all depends on how much information’s are fed to the bots using new patterns, categories and templates as this will make the conversations realistic. Querying the knowledge web, According to example of (Doubly Aimless 2004) the knowledge web is discussed by providing a sample input sentence as "Do you love me?" and the author expressed that it can be seen as a series of nodes or links (Lines) inside the knowledge web, as the image demonstrates as all the given links are named by words (similar to nodes illustrating the gaps between the words).
Figure 2.8, The AIML Knowledge Category Chart, Image Source (Doubly Aimless 2004)
Querying a request in the knowledge web, the Chatbot responses with the stored answers from the templates and a particular links through knowledge web with the templates holding the response is known as category in the above example the Chatbot will respond accordingly.
PAGE 30 OF 120
NOTTINGHAM TRENT UNIVERSITY
RESEARCH PROJECT
N0235871
! 2.6 3D MODELING FOR VIRTUAL ENVIRONMENTS TOOLS TO CREATE 3D MODEL Open Wonderland can import by many different latest 3D modeling tools such as Google SketchUp, Maya or 3D Studio Max from Autodesk, According to (Marziah Karch 2010) Google SketchUp” is a tool for creating Three dimensional model it is less complex to use then any other 3D modeling tool that are available as a open application from Google, Once the 3D model is developed in Google SketchUp it can be imported in to open wonderland (Jordan Slott 2011) for accessing it as virtual environment. According to (Ryan Dube 2010) in his article he explains about the application. Google SketchUp has many templates that will allow us to create 3d environment straight away, also the good part is that a 3D character will be shown in the 3d environment inside the sketch up window, it helps to keep things to scale, also in addition to that there is a options for getting pre designed models in to the Google SketchUp, since this will be utilized to import minor 3d models to use in the design of this project,
2.7 CHAPTER SUMMARY
CHAPTER-2
This section explains the overall Summary of the Literature review chapter, the Author had started the chapter with an general introduction presenting a overview of Current Internet trends and gave an general overview of what the background survey would includes based on Chatbot, Virtual world and Online Education systems which is in (section, 2.1), and then the next section Involves in the discussions about the Scope of online education which includes a initial investigation on multi user virtual environment related topics which also includes important facts about virtual world based learning which are in (Section, 2.2 & 2.3) And subsequently Author had discussed about the Virtual world platform which includes, General Background of Integration Platforms which are currently existing highly developed Open source multi user virtual environments which are Open wonderland and second life and this includes some Historical backgrounds of MUVE Technologies based on Statistics of Educationally enhanced Virtual worlds Later the Author had included deep discussions on Existing Virtual world Platforms that are Second life and Open wonderland it’s Technical reviews about Server (simulator) and Client (Viewer), the methods to extend the Functionalities of MUVE’s And concluded by an Evaluation of the two MUVE’s Technical information’s PAGE 31 OF 120
NOTTINGHAM TRENT UNIVERSITY
RESEARCH PROJECT
N0235871
! After the Virtual world reviews the Author had started to discuss about the Conversation agent and Chatbots which includes in investigating the present Chatbot Engines to integrate on virtual world platform. Author discovered many Chatbots in this section, important Chatbot is ALICE (Artificial Linguistic Internet Computer Entity) which is based on the AIML interpreters and it is open source project, Then further discussion about utilizing the ALICE Chatbot Engine to integrate on Virtual world has been investigated, Which follows in finding the Java based API’s for AIML Interpreters, in which the Author had came across Java based AIML Interpreters which are, ChatterBean, Program-D, Charliebot, Program-W, and Web-based AIML Interpreter Pandorabot (Program-Z) after gathering relevant sources about the interpreters, next part has been reviewed and discussed about AIML Knowledge base and its extensions and review on AIML Bots based on advanced searching capabilities which includes discussions about Enhancing AIML with semantic web technologies, A Semantic Web Based AIML Agent called XOperator , Pandorabots with wiki and Wolframe alpha querying capabilities, Improving Chatbot Brain through Pandorabots after the Chatbots information’s had been reviewed properly the virtual world development has been discussed for 3D modeling for Virtual Environments the Tools To Create 3D Models which is based on Google SketchUp. The next Chapter is about the project requirements by stating the Authors main motivations for this research project; also the next chapter includes several sections about requirements, which is based on dividing Aims, and objectives for undertaking project tasks in later chapters.
! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! PAGE 32 OF 120
NOTTINGHAM TRENT UNIVERSITY
RESEARCH PROJECT
N0235871
! ! 3.0 REQUIREMENTS
(CHAPTER-3)
3.1 INTRODUCTION The research on the factual background surveys from the previous literature review chapter the requirements have been clearly recognized, and this chapter describes the main requirements and the purpose of the project by expressing the author’s motivation and aims about the research. 3.2 MOTIVATION OF THE RESEARCH The Author’s motivation derives from present generation’s immersive interests in online virtual world game theories from the source (McGonigal 2010) by analyzing its advantages rationally. As for today, there are several online multi user virtual world role playing games available one of the well known Massively multiplayer online roleplaying game (MMORPG) is World of warcraft which has more than 12 million players worldwide according to the blog, (MMOHut 2010) Active today and intensively been playing from many years, as we can asses the individual players deep interest and their behaviors on virtual world related games, it is clear to notice that it has great advantages that is to utilize such a available framework similar to a Multi user virtual environments for other disciplines such as for education and business purposes as the authors focus is on educational purpose in this research. If we look deep in to the virtual world game theory, which is initially it’s based on multi players enabling many players to log in from around the world simulating their individual characters in a digitalized virtual game environment as a result this enables individuals to have a simulation of reality. These game theories includes some of the massive functionalities for gamers to stay focused in that multi user virtual environment every second by providing active quests with enabling them to tackle some of the high obstacles in their quests And the virtual game environments provides additional functionalities to guide them which are Chatbot for having conversations with an artificial robot to solve their problems related to their difficulties that they may face upon their level in the games. To understand the gamers’ intensity for the deep involvement in such online gaming environments is that it provides a great framework with extensive functionalities that motivates gamers not to get distracted from achieving their tasks. Similarly this theory could apply in all the disciplines if the design and level of its background is architecture properly. PAGE 33 OF 120
NOTTINGHAM TRENT UNIVERSITY
RESEARCH PROJECT
N0235871
! As these kinds of virtual world game theories has influenced many communities and developers, today there are many virtual world platforms similar to these kinds of gamming frameworks providing virtual world platforms, which are available. Using these kinds of virtual world platforms and game similar functionality it would be a great tool for utilizing them for educational purposes. From the above motivation the Author has inspired to research in this field by studying deep in to all the sub components that makes a progressive system on a platform based on multi users to collaborate which is concentrated highly by many individuals every second world wide, so the Authors main aim is to build a framework using a Multi user virtual environment engine to enable students to collaborate and interact with the Chatbot which is intended to be capable of querying Ontology’s which would make it a Natural language processing based answer retrieval engine on a simulated world.
3.3 REQUIREMENTS OVERVIEW As generations passing by, the web based software technologies are becoming more intense and advanced these days, as discussed in the literature review chapter (Section 2.1), that the web is offering many technologies for accessing information’s involving 3D virtual environments and artificial intelligence to enable great functionalities by providing many advantages for users, as the combination of virtual world and artificial intelligence is described as Virtual intelligence. As from the literature review chapter (Section, 2.5.2.2.c) it has become clear that some of the famous multi user virtual environments like second life which has been active from many years has integrated Chatbot functionalities on their NPC (Non player characters) and improved its answering capability levels from many software enthusiasts by additionally interfacing with many knowledge base such as Wikipedia and wolfram alpha which are a massive factual databases, which provides API's in many programming languages which made the developers to integrate and to extend its knowledge capabilities to make the NPC very intelligent for problem solving and for utilizing its wide range of benefits in virtual environments. Today there are various new virtual world platforms that are available and some of them are focused on several individual disciplines like educational purposes. Open wonderland is a latest Multi user virtual environment platform recently launched as a PAGE 34 OF 120
NOTTINGHAM TRENT UNIVERSITY
RESEARCH PROJECT
N0235871
! open source project, focused mainly for education and business purposes and it offers many tools which are constantly being developed by the enthusiasts from its community by the end users that enables educational capabilities at its best, even though it has many functionalities, Chatbot functionality is not available in the wonderland it is very essential features for extending the open wonderland platform which will be to utilize for education and business purposes. On the other end the Artificial intelligence communities are focusing more on developing intelligent systems for providing access to various information’s through various systematic methods, Like getting information as short and simple to the exact questions with the factual details, as this is based on short answers to the queries, in contrast to this motivation there are intelligent agents better known as Chatbot or conversational agents that had been developed over the years which is mainly based on Artificial intelligence techniques for responding to the user queries in Natural language, one of the famous Chatbot which we have investigated from the literature review chapter (Section, 2.5.1.1) ALICE Chatbot which is based on AIML (Artificial intelligence markup language) it retrieves the answers based up on users queries Using Natural language process which is very powerful tool in this generation and as the Chatbot technology is available, the main requirement here is to integrate the most proper Chatbot in open wonderland and later extending the Chatbot answering capabilities by interfacing with many online knowledge base using both Chatbot and available knowledge base API’s to assemble the integration to extent the Chatbots intelligence levels to make it more realistic and problem solving and once the required implementations are completed the next task is to illustrate all the obtained knowledge from the research project on MUVE and Chatbot and finally to model a 3d of real-geo building which is based on CIB Building from NTU Clifton campus (www.ntu.ac.uk 2012) to demonstrate the usability of Chatbot functionality in virtual environment.
PAGE 35 OF 120
NOTTINGHAM TRENT UNIVERSITY
RESEARCH PROJECT
N0235871
! 3.4 PROJECT REQUIREMENTS In contrast to the above two sections, research motivation and requirements overview the author proposes the project main requirements in this section, 3.4.A. REQUIRED VIRTUAL WORLD PLATFORM After analyzing several virtual world platforms from literature review chapter (Section 2.4.4) it has been considered that Open wonderland multi user virtual environment is a better platform for enabling educational functionalities and To integrate the Chatbot capabilities on this platform. Since presently Open wonderland does not have the Chatbot functionality it requires integration of artificial intelligence based Chatbot and also this MUVE is based on open source project, which is most suitable for extending its functionalities, as seen in the previous chapter (Section, 2.4.4.2.c) that Open wonderland has its own standard procedures in extending its functionalities which the term is defined as “Modules” which is in general term similar to a plug-in, the development requirement is to follow these standards of programming methods to successfully deploy the Chatbot integration for extending the project. 3.4.B. REQUIRED CHATBOT ENGINE As discussed in the literature review (Section, 2.5) there are several Chatbots that are available today and they are very unique in their functionalities. Chatbots have practically been improving in its versions from the early prototype named ELIZA, which is based upon pattern matching, the new and latest Chatbot which is ALICE (Artificial Linguistic Internet Computer Entity) is the most improved version of all the Chatbots which are available today it certainly has influenced from the early Chatbot ELIZA which was based on pattern matching concept, ALICE uses AIML (Artificial intelligence markup language) to retrieve its responses it is based on the XMLcompliant language standards, it stores its knowledge base in AIML format, mainly it has patters and responses of English conversations, the Chatbot engine community is based on open source that provides API’s for developers and also this community has been constantly improving from many years. As ALICE is based on AIML it uses many programming based Interpreters which is discussed in detail (section, 2.5.1.2.a) under open source project, the AIML Interpreters have been developed and available to the end users or developers for modifications it is available in several programming languages, the java based AIML PAGE 36 OF 120
NOTTINGHAM TRENT UNIVERSITY
RESEARCH PROJECT
N0235871
! Interpreter is Program-D, Charliebot, Program-W, ChatterBean and a web based Interpreter Pandorabots which is in Lisp language, and the interpreter version is called Program-Z, allows to host Chatbots on the internet freely through Website based Chatbot hosting services.
As the literature review shows that Program-D and Pandorabots interpreters are more advanced and stable version of all the interpreters, The Author has considered these two Interpreters, which are “Program-D” and “Pandorabots” to experiment and to test between the advantages of these prototypes by integrating on open wonderland Engine. 3.4.C. PROJECT REQUIRED AIMS AND OBJECTIVES The main requirements for this project are to integrate a Chatbot based on two prototypes, which is “Program-D” and “Pandorabots” mainly for MUVE platform users for future advantages. The integration is on open wonderland virtual world and finally after the integration the Chatbots knowledge has to be improved for answer retrieving capabilities by scripting AIML and in the final stage is to interface it with different ontology’s, since open wonderland is a recent up coming virtual world platform and this is mainly used for education and business purpose so this platform highly requires an intelligent conversational agent and presently it does not have any Chatbot capability in its core modules.
3.5 AIMS AND OBJECTIVES OF THE This section describes about the required aims, which are necessary for accomplishments and to evaluate in this research project it has been divided in to two major aims to be undertaken, based on theoretical and technical.
3.5.1. AIM 1: CHATBOT INTEGRATION ON OPEN WONDERLAND USING BOTH API’S The Chatbot required for integrations are “Pandorabots” and “program-D”. The author of this project is intending to experiment the integration of Chatbot by dividing it as two prototypes as developing two separate modules and deploying it on the server, since both of them provides their unique functionalities as in, for the next task it is required to improve its searching capabilities by interfacing with other knowledge bases. So PAGE 37 OF 120
NOTTINGHAM TRENT UNIVERSITY
RESEARCH PROJECT
N0235871
! considering a proper Chatbot AIML Interpreter is very essential, so it is required to experiment with these AIML Interpreters and evaluating its advantages and disadvantages.
3.5.1.A OBJECTIVES 1. FIRST PROTOTYPE INTEGRATION (PROGRAM-D) Integrating “Program-D” on open wonderland virtual world platform, by developing a wonderland component module following the Wonderland and Program-D’s API with virtual world programming standards to successfully integrate this Interpreter, As Program-D is based on J2EE web application, and its the highly used Java based Chatbot Interpreter and it is open source which has all the necessary features includes best sets of AIML specifications which is Chatbot brain or knowledge base, this interpreter can support unlimited numerous Chatbots and can able to modify or interface many knowledge base to improve its responding abilities. 2. SECOND PROTOTYPE INTEGRATION (PANDORABOTS) Integrating “Pandorabots” on open wonderland virtual world platform, as Pandorabot provides a massive level of advantages for its users since it is based up on the web. The integration will require the Pandorabots API’s to accomplish the integration on Open wonderland platform since the Pandorabots users can able to extend Chatbot knowledge through simple ways like online methods and as from the previous chapter it has been considered by many developers from second life virtual world platform to utilize this Chatbot and they have successfully improved its answer retrieval abilities by interfacing it with Wikipedia and Wolframe Alfa.
3.5.2. AIM 2: IMPROVING A CHATBOT BRAIN (KNOWLEDGE BASE) This section describes about two important aims which has to be done after the first aims accomplishments, it is based upon extending the Chatbot answering capabilities, by extending its knowledge, the sections divides two objectives, first one is based on extending knowledge using AIML scripting and the second aim is most challenging which involves interfacing with outer factual knowledge base or semantic related ontology this part is based up on programming using knowledge base API’s to fully extend the Chatbot answering capabilities. PAGE 38 OF 120
NOTTINGHAM TRENT UNIVERSITY
RESEARCH PROJECT
N0235871
! 3.5.2.A. OBJECTIVES 1. EXTENDING CHATBOT BRAIN USING AIML SCRIPTING After successfully integrated the Chatbots on open wonderland it is required to develop the Chatbot brains based upon scripting on AIML (Artificial intelligence markup language) for the project experimentation the Chatbot knowledge is improved based on available university general metadata, since this aim is very important to recognize about adding knowledge to the integrated Chatbot prototypes, as this part will discuss both the prototypes advantages and disadvantages on ease of adding knowledge to the Chatbot since this is the most important part for a Chatbot to increase its answering capabilities, also in contrast with adding knowledge from virtual world platform it is required that it should be fairly simple for other users to improve a Chatbot brain from inside open wonderland virtual world platform. 2. FUTURE DEVELOPMENTS TO INTERFACE WITH SEMANTIC WEB BASED ONTOLOGY USING API’S WITH INTEGRATED CHATBOT From the previous chapter, as there are many experimentation from various authors regarding the improvement of Chatbot ability to retrieve answers based on various knowledge base, linguistic database, common sense data base to make Chatbot more realistic and problem solving for serious problems and this section describes about all the knowledge base and their methods to interface with the integrated Chatbot. Interfacing Chatbot with FOAF after the integration stage, FOAF is abbreviated as Friend of a Friend, which is a framework, based on social networking Meta data that holds its knowledge base of many online users social profiles and their networking contacts. As we seen in the last chapter that a project based on Semantic Agent on XMPP Networks which uses AIML Based Chatbot engine to query its answers, this Agent uses FOAF knowledge base to query the Social information of the requested contact and it provides the factual answers based on the present fact which are available in the FOAF knowledge base. As we know that one of a famous social networking engine Facebook holds many social networking information’s which is it has “open graph” which is the framework for social networking and in recent years some developer has done a project based on generating FOAF information’s of Facebook using its API’s so in this project the Author is intending to utilize his resources to generate the FOAF metadata and to interface with the integrated Chatbot, As this will be a new way of queering a social networking websites based on PAGE 39 OF 120
NOTTINGHAM TRENT UNIVERSITY
RESEARCH PROJECT
N0235871
! the exact requested information’s from inside the virtual world engines. OpenCyc is a Common Sense ontology which is required for Chatbot to recognize the queries which could make proper sense and retrieve answers based upon its semantic
judgments,
recently
a
project
by
Dexter
Labs
(http://www.daxtron.com/CyNAIML.html), they have implemented this ontology with AIML interpreter known as Program-N which is based on C++ language and in their term they have defined as OpenCyc plus Program-N equals Cyn, and presently it is in basic stage which is it can detect the queries based on true or false types of questions, and this could be implemented with the integrated Chatbot since its API’s are available.
3.5.3. AIM 3, DEVELOPING VIRTUAL ENVIRONMENT Once all the above aims and objectives have been accomplished, the next task is to create a virtual world environment on open wonderland as a virtual campus for demonstrating all the implemented tasks on Open wonderland MUVE platform and then to work on the Open wonderland NPC (Non Player Character) for extending its capability by adding the proximity distance level for Chatbot to open as a NPC’s component. 3.5.3.A. OBJECTIVES 1. The objective of the third Aim is involved in 3D modeling of a existing campus based buildings to simulate the reality of an environment, The 3D models for the virtual world buildings will be designed using Google SketchUp, the prototype model is based on CIB Building from NTU Clifton campus (www.ntu.ac.uk 2012). 2. Improving Open wonderlands NPC’s Proximity distance level for Chatbot to activate based on user avatars approaching towards it, the available NPC Prototype will be based on generic-npc core module (Josmas 2011), which is based on nondependency with other scripting components Modules in open wonderland. This will be further discussed in later chapters
PAGE 40 OF 120
NOTTINGHAM TRENT UNIVERSITY
RESEARCH PROJECT
N0235871
! 3.5.4 CHAPTER SUMMARY
CHAPTER-3
This chapter has been accomplished based on literature review chapter-2, by identifying the factual details of the research topics, this chapter states the Project requirements by stating the Authors main motivations for this research project based on NPC's from the Gaming Engines (world of Warcraft) by mainly identifying the Gamers concentration on the MUVE gamming platforms in which the Author has identified the Virtual world Gaming platform for Educational framework; and the chapter includes several sections about the requirements which are about identifying the platform for Integration of Chatbot functionality which is on "Open wonderland" platform and after carefully investigating available Chabot’s the Author has identified the integration process by selecting the Chatbot integration experimentations by dividing them in prototypes, and later aims are to increase the integrated Chatbot knowledge base by developing the required AIML files, and experimentations with querying ontology’s which are Wolframe alpha, and stated the final aims to design the Virtual campus for illustrating about the process of multi user virtual environment by designing real geo-based 3D models of CIB, Clifton Campus based on Google SketchUp 3D modeling tool and another aim about integrating ALICE Chatbot functionality on Open wonderland NPC’s for user proximity activations. The next Chapter is about designing the requirements identified in this chapter which involves in Chatbot integrations prototypes design discussions, and designs about a proper virtual world based virtual environment for online education concepts by illustrating diagrams of the activity process on virtual campus, and finally the next chapter includes the designs about Virtual campus 3D models. This chapter will be utilized for later chapters.
PAGE 41 OF 120
NOTTINGHAM TRENT UNIVERSITY
RESEARCH PROJECT
N0235871
! 4.0 DESIGN
(CHAPTER-4)
4.1 INTRODUCTION This chapter demonstrates the design decisions about integrations of the Chatbot functionality in Multi user virtual environment platform, which also includes the designs of 3D models for a virtual campus, which is based on completion of the Chatbot integration to demonstrate for project purpose. 4.1.1 PURPOSE The Purpose of this chapter is to illustrate detailed description about the project requirements, this involves in system designs based on theory, functionality extension based on programming and virtual world design based on 3D modeling. This is a supportive document for implementation chapter. 4.1.2 SCOPE This Chapter shows a detailed description of the application architecture about the virtual campus and Chatbot, it involves several important diagrams and discussions of the system such as System block diagram, Context diagram; activity and dataflow diagrams, use cases, entity relationship diagram, interface designs.
The Design
Consideration involves in some of the necessary sections, such as software development methodology, architectural designs system designs. 4.1.3 PLATFORM CONSIDERATION AND TARGETED USERS The Author has investigated several multi user virtual environments Platform and selected “Open wonderland” and the system is focused mainly for students and lectures for better collaborations
PAGE 42 OF 120
NOTTINGHAM TRENT UNIVERSITY
RESEARCH PROJECT
N0235871
! 4.2 DESIGN METHODOLOGY
(Figure - 4.1 Iterative and incremental development (bigelow 2012))
The Author of this project has investigated and selected an appropriate software development life cycle (SDLC) from investigating sources from the Author (Nabil Mohammed 2010) the comparisons between Waterfall model, Spiral mode”, Iterative Development, V-Shaped Model, Spiral Model, Extreme Programming. V-model development methodology does not allow to implement prototypes during the design stages only it has to be developed during the implementation stage and v-model does not provide a proper ways to examine the troubles during the testing stages. Spiral model is better for very large projects because of the software is made in the initial stages of the development cycle and negative side would be it is costly model for using and it will not suit for small projects. Extreme programming methodology is based on test approach and quality assurance which is good for a cohesion and the problem with this model is that it is hard to scale up projects when the documentations is necessary. Iterative methodology is more flexible compared to all the models since it is based on building a design on an existing model, and includes prototyping it allows separate tasks to process and implementations of simple areas would not required to follow al the process which is its advantages. The Author has Selected software development methodology as “Iterative and incremental development” (wikipedia 2006) development model Since the project involves in several technical tasks to be undergone such as at the beginning stage research about the virtual world usability for educational purposes, which involves in demonstrating working prototype of the Virtual Campus, to accomplish these tasks PAGE 43 OF 120
NOTTINGHAM TRENT UNIVERSITY
RESEARCH PROJECT
N0235871
! which involves in programming a conversation agent component for integration and deployment in to MUVE platform and 3D modeling for virtual campus building,
4.3 PROJECT CONCEPT SYSTEM BLOCK DIAGRAM
(VIRTUAL CAMPUS)
(Figure - 4.2 Research Project Concept System Block Diagram)
The Above diagram illustrates the expected working process and concepts of the system, which involves in client-server architecture based system in which the client and server architecture is the communication protocol the theory is based on Open wonderland client and server architecture this concept have adopted from (Juan L. Font 2012) on client and server communication. And additionally the figure 4.2 illustrates that many students can be teleported from around the globe (psdgraphics 2009) and it allows a place to collaborate to make decisions, involves in brainstorming, discussions, leaning new knowledge and to socialize. The virtual environment allows users to collaborate virtually enabling them by providing many tools such as NetBeans for programming projects, PDF readers, in-world music players, Google docs, wall posters, white board for discussions and sketches etc, these tools are similar to a desktop based applications which is available on the MUVE platform to access, some of the tools such as NetBeans IDE these are based PAGE 44 OF 120
NOTTINGHAM TRENT UNIVERSITY
RESEARCH PROJECT
N0235871
! on VNC Viewer (Virtual network computing) according to (en.wikipedia.org 2011) VNC is “a graphical desktop sharing system that uses the RFB (remote frame buffer) protocol to remotely control another computer. It broadcasts the keyboard and mouse actions from 1 computer to different, relaying the graphical screen updates back in the other direction, over a network”. In open wonderland applications based on modules, are constantly being extended by the virtual world developers or enthusiasts,
4.4 DESIGN OF CHATBOT INTEGRATION PROCEDURES
! 4.4.1 QUERY INFORMATIONS The Chatbot function is the most important feature in this virtual world education system, which enables student’s to query information’s relating to their specific topics. ! 4.4.1.A%OVERVIEW% This section describes the design of the functionality of Chatbot and its integration on Multi user virtual world environment; the system architecture includes high-level designs with necessary diagrams. Then the descriptions are given about the interactions between Chatbot engine and MUVE platform classes in a Use Case diagram and finally provide the data flow diagram, with User Interface design with annotations. 4.4.1.B%LIMITATIONS% The only Constraints in designing are the programming language, which is based on the multi user virtual environment platform for selecting the integration programming language. The programming language will be JAVA and also some of the web based AIML (Artificial Intelligence markup language) Interpreters does not provide Java based API’s for integrations.
PAGE 45 OF 120
NOTTINGHAM TRENT UNIVERSITY
RESEARCH PROJECT
N0235871
! 4.5. INITIAL DESIGN OF CHATBOT ENGINE
(SELECTION CRITERIA)
This section describes about the decisions for selecting a Chatbot for integrating on Multi user virtual world platform, which has been examined by the Author of this project for utilizations for the integration purpose the detail descriptions are given in literature review chapter (section 2.5).
(Figure - 4.3 Chatbot Engines based on prototype models)
The above diagram describes about three prototypes, which are sort of available options for an Chatbot Engines, which has been considered by the Author as investigated in the literature review chapter. The Author has examined its unique advantages to utilize the Chatbot engine for future purpose such as providing easy access for users to improve its knowledge base, based on ease of writing AIML scripting codes through MUVE Platform and also in later stages of the developments to interface with other factual databases such as to query answers from Ontology or Metadata’s. The following section describes the functionalities for each prototype,
PAGE 46 OF 120
NOTTINGHAM TRENT UNIVERSITY
RESEARCH PROJECT
N0235871
! 4.5.1 FIRST PROTOTYPE (NEW DESIGN OF CHATBOT) Which is based on developing a new Java program based on Natural language processing which follows same algorithms as AIML Chatbot Engine which requires in interfacing with linguistics database such as “WordNet” and requires third party java API’s such as “JWI” which is a java library for interfacing with “WordNet” and manually requires to input all the answer patterns for responses, The author has thought of using this prototype in the early stage of the project developments for experimenting with interfacing with online knowledge bases. 4.5.2 SECOND PROTOTYPE (PROGRAM-D) It is more advanced and stable version of all the interpreters, this Interpreter is based on J2EE web application, and its the highly used Java based Chatbot Interpreter and it is open source, it has all the necessary features includes best sets of AIML specifications, this interpreter can support unlimited numerous Chatbots in one server instance and the architecture is open ended to interacting with lot of different interfaces and it can be deployed on IRC, AIM and Yahoo Drop-in listeners, includes good API's JavaDocs about the Program-D Interpreter the latest version is 4.6 released on 12 March 2006 and a new version is being developed which is 4.7, 5.0 soon it will be made available in the community. 4.5.3 THIRD PROTOTYPE PANDORABOTS (PROGRAM-Z) Integrating “Pandorabots” on virtual world platform, as Pandorabot provides a massive level of advantages for its users since it is based on the web. The integration will require the Pandorabots API’s to accomplish the integration on virtual world platform since the Pandorabots users can able to extend Chatbot knowledge through online mode and Its based on Lisp, and the interpreter version is called Program-Z, main motive was to host Chatbot on the internet freely through Website based Chatbot hosting services for end users to utilize and integrate on their domains. As from the Literature review chapter it has been considered by many developers from second life virtual world platform to utilize this Chatbot and they have successfully improved its answer retrieval abilities by interfacing it with Wikipedia and Wolframe Alfa. PAGE 47 OF 120
NOTTINGHAM TRENT UNIVERSITY
RESEARCH PROJECT
N0235871
! 4.5.4 CHATBOT ARCHITECTURE OF AIML INTERPRETERS
4.5.4.A SYSTEM OVERVIEW As described in the project requirements chapter (Section, 3.4.b) an educational system on Virtual world platform requires a Chatbot engine which is based on having Natural language processing based query and retrieval of response and information’s form a Chatbot engine such as AIML Engine, some of the use cases that is designed to achieve the integration, aim is given below based on AIML Engine.
(Figure - 4.4: Chatbot Use Case, high-level diagram) The use case diagram represents about how users could engage in conversation by query information on a specific topic and obtains the information’s through the AIML Engine. 4.5.4.B ARCHITECTURAL DESIGN OF CHATBOT ON MUVE PLATFORM
(Figure - 4.5 representing the Overall System architecture of Chatbot on MUVE) PAGE 48 OF 120
NOTTINGHAM TRENT UNIVERSITY
RESEARCH PROJECT
N0235871
! The Architecture is based on Client and Server; many users log in to MUVE client and access the Chatbot engine and the Chatbot should simultaneously communicate with many users and retrieve their answers from the AIML Engine. 4.5.4.C DATA FLOW DIAGRAM
(Figure - 4.6 representing the data flow of a users example query) adopted from (Smith 2010)
The data flow diagram represents the information retrieval process from an user, as shown in the diagram the procedure starts with "waiting for users input" once the user enters a query input message like "Hello" then the flow continues to new stage which checks whether "hello is a query" then if it a query then continues to next flow which is again checks "whether the query is a follow-up query" and checks for "What is query type?" if it is Elliptic, according to (en.wikipedia.org, Ellipsis (linguistics) 2012) Elliptic is “based on Linguistics, it refers to the omission from a Clause (smallest grammatical unit that can express a complete proposition) of one or more words.)
Then it
generates message for reformulate query”. If it is anaphoric which is defined as (en.wikipedia.org 2012) “Anaphora is based on linguistics, which is a type of expression whose reference depends on another referential element” then system prompts users to rewrite query then sends the query to Chatbot engine and generates the responses and flows to the interface to display answers to the users. PAGE 49 OF 120
NOTTINGHAM TRENT UNIVERSITY
RESEARCH PROJECT
N0235871
! 4.5.4.D USE CASE DIAGRAM OF CHATBOT ON MUVE PLATFORM
(Figure - 4.7: Use case diagram for Chatbot and MUVE)
4.6 DATA DESIGN 4.6.1 IMPROVING A CHATBOT BRAIN (KNOWLEDGE BASE) This section describes about the designs of two important integrations which has to be done after the integration of the Chatbot, it is based upon extending the Chatbot answering capabilities, by extending its knowledge, the sections divides two objectives, first one is based on extending knowledge using AIML scripting and the second aim involves in interfacing with outer factual knowledge base or semantic related ontology this part is based up on programming using knowledge base API’s to fully extend the Chatbot answering capabilities based on time constraints of the project this will be implemented.
PAGE 50 OF 120
NOTTINGHAM TRENT UNIVERSITY
RESEARCH PROJECT
N0235871
! 4.6.2 EXTENDING CHATBOT BRAIN USING AIML SCRIPTING After successfully integrated the Chatbots on virtual world platform it is required to develop the Chatbot intelligence based on scripting on AIML (Artificial intelligence markup language) it is very important to recognize about adding knowledge to the integrated Chatbot prototypes, as this part will discuss both the prototypes advantages and disadvantages on ease of adding knowledge to the Chatbot since this is the most important part for a Chatbot to increase its answering capabilities, also in contrast with adding knowledge through virtual world platform it is required that it should be fairly simple for other users to improve a Chatbot answering capabilities from inside virtual world platform. A. DATABASE DESCRIPTIONS
The Chatbot engine depends on AIML files for its knowledge base or data sets, and it is based on XML Format These files stick to the schema specification of AIML, since the AIML tags is based on XML, the basic skeleton of the AIML file is shown below which is required to store the patters and categories.
•
tag starts and ends an AIML document •
this tag marks "Unit of knowledge" in the Chatbot Knowledge base •
this tag contains basic patterns that recognizes, by users input information’s like what they may say •
this tag consists of responses to inputs made by the users
!
A simple query knowledge representing of “What is robot?”
WHAT IS ROBOT ROBOT "Any anthropomorphic mechanical being, built to do routine manual work for human beings"
!
PAGE 51 OF 120
NOTTINGHAM TRENT UNIVERSITY
RESEARCH PROJECT
N0235871
! 4.6.3 DESIGN DESCRIPTIONS FOR EXTENDING CHATBOT KNOWLEDGE BASE BY INTERFACING WITH SEMANTIC WEB BASED ONTOLOGY TO AIML INTERPRETER.
(Figure - 4.8: Chatbot Engine interfacing with Ontology’s Concept) The Purple Colored “Core” Component had adopted and modified from (Jindal 2004)
The above diagram represents the procedure of interfacing with external knowledge base in to the AIML interpreter, as seen From the previous chapter, there are many experimentation from various authors regarding the improvement of Chatbot ability to retrieve answers based on various knowledge base, linguistic database, common sense data base to make Chatbot more realistic and problem solving for serious problems and this section describes about all the knowledge base and their methods to interface with the integrated Chatbot. Interfacing Chatbot with FOAF (http://www.foaf-project.org/) after the integration stage, FOAF the acronym as Friend of a Friend, which is a framework, based on social networking Meta data that holds its knowledge base of many online users social profiles and their networking contacts. As we seen in the last chapter that a project based on Semantic Agent on XMPP Networks which uses AIML Based Chatbot engine to query its answers, this Agent uses FOAF knowledge base to query the Social information of the requested contact and it provides the factual answers based on the present fact which are available in the FOAF knowledge base. As we know that one of a famous social networking engine Facebook holds many social networking information’s which is it has “open graph” which is the framework for social PAGE 52 OF 120
NOTTINGHAM TRENT UNIVERSITY
RESEARCH PROJECT
N0235871
! networking and in recent years some developer has done a project based on generating FOAF information’s of Facebook using its API’s so in this project the Author is intending to utilize his resources to generate the FOAF metadata and to interface with the integrated Chatbot, As this will be a new way of querying a social networking websites based on the exact requested information’s from inside the virtual world engines. OpenCyc is a Common Sense ontology which is required for Chatbot to recognize the queries which could make proper sense and retrieve answers based upon its semantic
judgments,
recently
a
project
by
Dexter
Labs
(http://www.daxtron.com/CyNAIML.html), they have implemented this ontology with AIML interpreter known as Program-N which is based on C++ language and in their term they have defined as OpenCyc plus Program-N equals Cyn, and presently it is in basic stage which is it can detect the queries based on true or false types of questions, and this could be implemented with the integrated Chatbot since its API’s are available.
4.6.4. CHATBOT INTERFACE DESIGNS A. CHATBOT INTERFACE
!!!!!!!!!!(Figure!M!4.9!Basic User Interface 2D frames for Chatbot)
It is very essential and important in this project to develop a neat 2D chat window for users to query information’s from Chatbot engine, as this is meant to be user friendly and should not be complicated to use and able to display necessary information’s in the chat window and it should be made movable, maximize on in the screen and able to have a transparency mode when the user are not interacting with the Chatbot. PAGE 53 OF 120
NOTTINGHAM TRENT UNIVERSITY
RESEARCH PROJECT
N0235871
! B. CHATBOT AND NPC PROXIMITY LEVEL
(Figure - 4.9 NPC, Proximity for Chatbot Activation)
In addition with the above functionalities it is meant to extend the NPC (Non player character) capabilities in the virtual world, as shown in the above diagram the programming functionality should able to enable a proximity distance level when the user approaches near to NPC then it should activate the Chatbot function and pop up the chat window displaying a random message.
PAGE 54 OF 120
NOTTINGHAM TRENT UNIVERSITY
RESEARCH PROJECT
N0235871
! 4.6.5. A TECHNIQUE OF COGNITIVE LEARNING METHODS FOR ENABLING BETTER EDUCATION SYSTEM ON VIRTUAL WORLD PLATFORM SYSTEM DESIGN
(Figure - 4.10 Represents a design hierarchy diagram of the system)
The research project motivation is to utilize the principles of computer cognitive science theories as discussed in the literature review chapter to make a better system from utilizing the resources which are available, the design in this sections are based on the final part of the project which is to design the virtual campus for demonstrating a successful working system which has the integrated Chatbot functionality for students to query information’s, as Education system requires many tools and techniques to achieve its functionalities.
PAGE 55 OF 120
NOTTINGHAM TRENT UNIVERSITY
RESEARCH PROJECT
N0235871
! 4.6.6. COMPLETE VIRTUAL CAMPUS SYSTEM DESIGN 1. SYSTEM CONTEXT DIAGRAM
(Figure - 4.11: Virtual Campus System Context Diagram)
The Above System Context Diagram is adopted from, Real-time analysis and design Module (Hartley 2011) 2. External Even List !
Student Logs in to MUVE Server to attain virtual campus
!
Server Loads Virtual Campus and provides Multi user virtual Environment
!
Multiple Students Query Information on Chatbot
!
Chatbot responds to the queries synchronously to multiple students
!
Student Navigates to their desired virtual campus departments
!
MUVE Server Provides Virtual Room Space and additional functionalities
!
Students organizes and builds a team to collaborate and to work
!
MUVE Server Provides Virtual Space and additional functionalities
!
Students request lectures for Coaching services through virtual campus
!
Collaborated student team lists and lecture appointment are reserved for team collaboration room (B)
!
Virtual Campus room is reserved and MUVE Server Provides Virtual Space and additional functionalities
PAGE 56 OF 120
NOTTINGHAM TRENT UNIVERSITY
RESEARCH PROJECT
N0235871
! 2.6.7 DATA FLOW AND ACTIVITY DIAGRAM
(Figure - 4.12: Virtual Campus, DFD and Activity) The Red colored components of the above diagram has been adopted from (Andreas Schmeil 2010) and purple component (Jindal!2004)
The above Figure represents about the data flow of the virtual campus system, initially users logs in with the authenticated user ID and passwords in the MUVE client viewer, the system proceeds further if the ID and passwords is correct if not it returns to the main screen, then once the system accepts the ID & password, it takes few seconds to load the Virtual world environment from the server depending on the internet PAGE 57 OF 120
NOTTINGHAM TRENT UNIVERSITY
RESEARCH PROJECT
N0235871
! speed, and physical avatar is teleported in to virtually with an Virtual avatar, the MUVE platform systems provide many abilities to avatars such as "Communications", "Navigation", "Static Objects", "Interactive Object", "World object action", "Automated objects". Once the avatar is in the virtual campus, they needs to perform an action depending on their desires they navigate to the virtual campus departments such as rooms (A, B, C, D, E, F, G) and the avatars can able to query in to the Chatbot for information’s about their interested subjects. 2.6.8 USE CASE DIAGRAM
(Figure - 4.13: System Use Case Diagram)
The Above diagram represents the overall system, which is required to implement in this project, which has three actors, Students, lectures and administrators. PAGE 58 OF 120
NOTTINGHAM TRENT UNIVERSITY
RESEARCH PROJECT
N0235871
! 2.6.9 VIRTUAL CAMPUS MODELS A. VIRTUAL CAMPUS SCENE GRAPH
Figure 4.14: Virtual Campus scene graph As the above figure represents that virtual campus scene graph the concept of drawing scene graph has obtained from (Finnigan 2010) B. VIRTUAL CAMPUS 2D MAP FOR DEVELOPING 3D MODELS
Figure 4.15: Blueprint of Virtual Campus top-level Map PAGE 59 OF 120
NOTTINGHAM TRENT UNIVERSITY
RESEARCH PROJECT
N0235871
! The above diagram represents a an abstract map of the Virtual campus, the design decisions of the buildings is based on implementing a real builds based on Clifton Campus based designs, requirements are to design CIB Building 3D Model in Google SketchUp, Similarly utilizing it for AKB, and other designs are a abstract three rooms for Students to Collaborate, Entertainment and for learning. This is based on strategies related to learning technologies, which is to obtain knowledge; the virtual campus provides five massive buildings. These designs will be accomplished in the Implementations Chapter
C. ABSTRACT BLUEPRINT FOR CIB BUILDING FOR 3D MODELING
Figure 4.16: Blueprint of CIB Building A Blueprint is very essential for 3D modeling since it is fairly straightforward to draw 3D models using blueprints as information’s were obtained from (www.youtube.com 2011). The Blue lines in the figure represent the Walls and Red lines represent the Doors and this will be 3-story building with staircase, rooms, windows and doors.
PAGE 60 OF 120
NOTTINGHAM TRENT UNIVERSITY
RESEARCH PROJECT
N0235871
! D. BLUEPRINT OF CIB BUILDING
Figure: 4.17 Blueprint of CIB Building The Above figure represents inside CIB Building View, it includes the Open wonderland applications for utilizations for group projects. E. VIRTUAL CAMPUS NAME BOARDS
Figure: 3-Dimensional Diagram, Figure: 1 Unit Building Diagram,
Figure: 4.18 Name boards for Virtual Campus The Above figure is the design of the virtual campus name boards for information’s, which is similar to the NTU Name boards PAGE 61 OF 120
NOTTINGHAM TRENT UNIVERSITY
RESEARCH PROJECT
N0235871
! F. VIRTUAL CAMPUS OTHER ROOMS BLUEPRINTS
Figure: 4.19 Room Blueprint for A, B and C. The Above Figure is a blueprint for Rooms based on Learning, Collaborating, and Entertainment which is based on A, B, and C. these rooms will all be similar in it design.
2.7 CHAPTER SUMMARY
CHAPTER-4
This Chapter includes about requirement designs, which has been identified from the Requirement Chapter the design decisions are based on the specified Aims and objectives, which have been stated in the requirements chapter. This chapter initiates with a background introduction about the tasks which will be accomplished during the design documentation process which are based on selecting a development methodology in which the author had selected "Iterative and incremental development SDLC model for accomplishing the implementation process since the process of implementations will include many development components which will make this as a whole system which are, integration of Chatbot, 3D modeling and designing a virtual campus for education frameworks. So Author has selected this methodology based on the requirements. Then the chapter includes discussions about the designs of the Chatbot integration procedures to follow, which includes an initial design of experimentation prototypes based on availability of Chatbot Interpreters for integrations, in this section the author has included three prototypes for experimentations. And the author had included a PAGE 62 OF 120
NOTTINGHAM TRENT UNIVERSITY
RESEARCH PROJECT
N0235871
! use case diagram based on the Chatbot and MUVE integration and also it includes about data designs for Chatbot brains which is based on interfacing knowledge base on AIML Files and design discussions of adding ontology’s for AIML interpreter which are FOAF, Wolframe alpha, Wikipedia, OpenCyc and WordNet for interfacing with AIML engine these identifications have been designed based on illustrating by a diagram. Then the Author had included designs about Chabot user interface with including proximity level concepts these are illustrated using figures. The next Chapter describes about the integration process of Chatbot based on experimenting with three prototypes, by providing results and testing of the prototypes and finally implementation process of virtual campus designs for development process, which are based on designing 3D models for virtual campus which includes a Scene graph of virtual campus, a 2D Abstract Map for Virtual campus, name boards designs and designs about Rooms (A, B and C) based on Learning, entertainment and collaborations. And the next chapter is based on implementation of the designs, which are included and illustrated in this chapter.
! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! PAGE 63 OF 120
NOTTINGHAM TRENT UNIVERSITY
RESEARCH PROJECT
N0235871
! 5.0 IMPLEMENTATION
(CHAPTER-5)
5.1 INTRODUCTION This chapter involves in implementing the design decisions made in the previous chapter about integrating a Chatbot functionality in to a virtual world platform and designing a well structured education related multi user virtual world by enabling the authors research about the strategies which he obtained during the research about learning methods using cognitive science technologies which involves theoretical components like artificial intelligence, linguistics and physiology to enable virtual world education system with question answering functionality. And also the implementation includes the designs of the 3D models for a virtual campus, which is essential to validate the project requirements for illustrating about the learning facilities in virtual environment. The Purpose of this chapter is to utilize the skills of software engineering principles to implement the required tasks from design chapter, it involves several prototypes experimentations for Chatbot integration based on the design chapter, and implementations of the Chatbot interface and after all the completion of required aims experimenting by enabling proximity level for NPC to activate the Chatbot engine as discussed in earlier chapter and finally the virtual campus will be implemented on the multi user virtual environment.
5.2 HARDWARE REQUIREMENTS The hardware requirements for implementation of the required tasks are based on requirements of Open wonderland MUVE Platform’s necessary hardware, which are listed according to the official website (Open Wonderland 2012) to utilize Open wonderland client the requirements are, modem configured PC which is capable of handling 3D graphics the minimum specifications are, Processor requirement is above 1.5ghz, Ram requirements is more than 1GB, Accelerated graphics card which is capable of running 3D games and in addition for the best performance a video memory of 256MB is required although 128MB would be sufficient and for the server it is similar to the client configurations.
PAGE 64 OF 120
NOTTINGHAM TRENT UNIVERSITY
RESEARCH PROJECT
N0235871
! 5.3 SOFTWARE REQUIREMENTS The major software requirements are open wonderland v0.5, Source code or Binary file to run the server and client And The operating system requirements to run open wonderland, as this is based on java, the wonderland client needs Java runtime environment (JRE) it will run on "Mac OS, Windows, Linux and Solaris". NetBeans IDE 7.0.1 java compiler for development of Chatbot integration component and deployments, application server that is required is Glassfish server, Google SketchUp for 3D environment modeling, MS Office tools for documentations and diagrams and the OS for implementation will be done using MAC OS X. 5.4 INTEGRATION OF CHATBOT ENGINE AND VIRTUAL CAMPUS After investigating many MUVE such as open wonderland, second life and several other virtual world platforms from literature review chapter it has been considered that Open wonderland multi user virtual environment is a superior MUVE platform which is available and it is an open source project, which will improve rapidly in future, so the author has carefully considered this platform for enabling the cognitive science strategies based on artificial intelligence and information retrieval principles from applied computer science techniques the author has indented to achieve a better educational system on MUVE and since the open wonderland does not have a Chatbot functionality the author can integrate his Artificial intelligence goals based on the entire vision such as interfacing with semantic web based ontology’s, as stated in the design description chapter to integrate the Chatbot capabilities on this platform. Since currently open wonderland does not have a conversation agent or Chatbot functionality it requires integration of artificial intelligence based Chatbot and as this is based open source project, which is most suitable for extending its functionalities, as seen in the early chapter that Open wonderland has its own standard procedures in extending its functionalities which the term is defined as “Modules” which is similar to plug-in, the development requirement is to follow these standards of programming methods to successfully deploy the Chatbot integration for extending the project.
PAGE 65 OF 120
NOTTINGHAM TRENT UNIVERSITY
RESEARCH PROJECT
N0235871
! 5.5 IMPLEMENTATION PROCESS
(Figure 5.0 Illustration of Project Implementation Diagram)
The above figure is an illustration of required components of applied computer science area in which it highly influences several principles for accomplishing the goals of this research project the starting part of the project involves in a theoretical based which is based on learning about computer and cognitive science strategies which is required for obtaining the motivation for developing a good virtual world based learning system and celebrative environments, then proceeding to the next part, which is based on development of component based on Chatbot in which the principles applied are from software engineering and 3D models on a multi user virtual world environment which is based on computer graphics and simulations systems.
PAGE 66 OF 120
NOTTINGHAM TRENT UNIVERSITY
RESEARCH PROJECT
N0235871
! 5.6 OPEN WONDERLAND MUVE PLATFORM FOR INTEGRATION As the Author has investigated open wonderland MUVE in literature review chapter in detail the implementation part discuss the process which took place during the implementation by giving a little background about this MUVE, According to (Kaplan, Yankelovich 2011) Open wonderland is a kind of multi user virtual environment development toolkit for enabling 3D virtual worlds; Open wonderland is based entirely on Java programming platform and which is a open source project. A brief overview on the technical design of open wonderlands architecture is discussed in the following section. Open wonderland is a client-server based model for creating shared virtual worlds. It gives 3D space to collaborate a virtual environment. The client grants a browser and turns these shared services into a 3D environment view. It contains downloading, rendering graphics and caching content, acts in response to the users interactions, and responding to server messages. The communication protocol of open wonderland as it is based on Client and Server based model it uses number of networking protocols to make the communications. Web services for validating the users, logs authentications, downloading code, and world resources like 3D models and textures, Traditional TCP transmission control protocol base foundation for communicating data of the word like properties of the object and their position. For audio purpose, Session Initiation Protocol (SIP) and Real-time Transport Protocol (RTP) are used. For sharing applications, videos and screen it uses Multimedia streaming protocols (MSP). 5.6.A EXTENDING OPEN WONDERLAND PLATFORM As investigated in the literature review chapter Open wonderland is a very complex virtual world platform, which has many sub modules built in its core, to extend wonderland we need to deploy using a packaged standard which wonderland accepts As the recent version of wonderland V0.5 has designed a way to extend the open wonderland functionalities by deploying in a modular package,
PAGE 67 OF 120
NOTTINGHAM TRENT UNIVERSITY
RESEARCH PROJECT
N0235871
! A brief overview of extending open wonderland functionalities are specified, there are two ways to extend the functionality of open wonderland platform such as, 1. Cell Module deployment 2. Cell Component module deployment
(Figure 5.1, Open wonderland Platform extension)
Above diagram represents the open wonderland Cell and Cell Components which is based on creating a object and extending its functionality Both the Cell and Cell Component module design architecture is somewhat similar which involves three concepts in its java package, which involves “Server”, “Client” and common for client and server states, the cell development module architecture is described in background chapter in depth as this project involves in developing capability for virtual objects it focuses on developing “Cell Component” module which is more appropriate to follow this module architecture to integrate the Chatbot component.
PAGE 68 OF 120
NOTTINGHAM TRENT UNIVERSITY
RESEARCH PROJECT
N0235871
! 5.6.B INITIAL REQUIREMENTS FOR DEVELOPING PROCESS 1. Open wonderland MUVE Workstation Installation process The latest version of open wonderland is V0.5 there are two options to run the platform they are based on "Source code" and "Binary file” this project requires open wonderland source code, since it includes other set of software’s such as Java 3D and project Darkstar. Open wonderland is based on the NetBeans project, Downloading Wonderland from SVN (Subversion), which includes every sub modules source codes and its libraries which wonderland relays upon, which is available in Google Codes as subversions. Terminal process, Wonderland from SVN (Subversion)
Figure 5.2 Command to download project from Terminal, Screen shot (Kaplan 2012)
The options to build open wonderland is based on two methods which are first one is through terminal by “Ant” command to build and to generate open wonderland binary from source then “Ant run-server” to run the generated binary file for launching the server and client. And second methods is based upon importing to a java based compiler which is NetBeans IDE, then performing “Build” and “Run-server” simultaneously to build and to run the server and client from the NetBeans. The Author of the project has followed second method work on these procedures. Once the server is started either in NetBeans or through terminal methods, on the successful running of server, a message will be shown as below figure,
Figure 5.3, Server Started message through NetBeans
PAGE 69 OF 120
NOTTINGHAM TRENT UNIVERSITY
RESEARCH PROJECT
N0235871
! 5.7 CHATBOT INTEGRATION EXPERIMENTATIONS 5.7.1 PROTOTYPE-1 As discussed in the design chapter (Section, 4.5.1), in relation to the first Chatbot Prototype experimentation in the beginning of research project the author had intended to design a new Chatbot program, using the principles of Natural language processing and intelligent agent systems, which was essential to analyze the given input text and generate a response to received text, the concept of developing this Chatbot program had been deeply experimented by the author of this project in initial times to investigate about the process which involves in analyzing texts and generating responses and the Author had come across many types of existing algorithms which were based on the required Chatbot program, and after reviewing several methods the Author had recognized a set of practical procedure to build a Chatbot program based on Java programming language, in which the main requirements were needed such as, 1. A Computational linguistics resource “WordNet” (Princeton 2012) 2. JWI (the MIT Java WordNet Interface)(csail.mit 2012) or other Java API for interfacing with WordNet. (For searching in WordNet) The prototype experimentation process started by an existing skeleton code based on java console application, sources obtained from (www.wiki.ed.ac.uk 2011) university of Edinburgh, based on obtained resources which were an exam subject (inf.ed.ac.uk 2010 ) on designing a Chatbot program it included a setup instructions and an skeleton module code was based on Blue-j project which had been integrated with the WordNet linguistics database, the online resource which available were sufficient enough to experiment this prototype, initially project had three package which had few set of java classes based on WordNet and JWI, the following figures represents the entity relationship diagram of the skeleton code.
Figure 5.4, “Chat Package”
PAGE 70 OF 120
Figure 5.5 “Langen Package”
NOTTINGHAM TRENT UNIVERSITY
RESEARCH PROJECT
N0235871
!
Figure 5.6 “Utils Package”
The project included three sub-packages: namely "Chat, Langen and Utils", in which the “Langen” package included java classes, which handled language generation tasks. The other package “Chat" included java classes, which are associated with the Chatbots, and the “utils” package included some helper class, which was necessary when experimenting the Chatbot, to make the Chatbot functioning the tasks here were to implement the methods for starting conversations, and a necessary part was to examine the Interface class "Language Generator" which included all the methods for reply and generating sentences. The initial set of methods, which were required on “Chat” Class file, which were, creating a Chatbot, initializing the language generator, Initiate a conversation about any topic. Generate a starting sentence, Generate a response to the specified statement, Another requirements were to test the functionality of Chatbot this was performed by Discussion Class a helper class. Method to create, discussions between two Chatbots for engaging them in conversation, creating test functionality for Chatbot After accomplishing the required methods the response of the experimentations did not worked, there were problems in the langen package, and it took lot of time to experiment fixing this project Authors code on “Chat” and “Discussion” were included in the appendix,
PAGE 71 OF 120
NOTTINGHAM TRENT UNIVERSITY
RESEARCH PROJECT
N0235871
! 5.7.2 PROTOTYPE-2 After experimenting with the first prototype and the Author had experimented with few other Chatbots and finally found out about an excellent Chatbot, containing many documentations about its API’s based on java and it’s an open source Chatbot Engine that had been improving from more than past 15 years (www.alicebot.org 2012) which is ALICE (The Artificial Linguistic Internet Computer Entity) Chatbot as seen in the literature review chapter (Section, 2.5.1.2.a) which is based on AIML (Artificial intelligence markup language). To start with this Prototype experimentations, the Author required a Java based AIML interpreter some of Java based interpreters are Program-D, Charliebot, ChatterBean and Program-W which is an improved version of program-D and had been interfaced with “WordNet, and the Author had selected to experiment with Program-D since this interpreter had an impression as best among Chatbot developers. Author obtained all the interpreters source codes and started mainly experimenting with Program-D Source code version 4.5 from (aitools.org 2007) and the beginning process included to build the source code versions to generate the binary jar file to utilize this library for the integration purpose on the open wonderland MUVE module. In this stage to build the source code to generate binary file, Author had faced several problems regarding to the particular version of interpreter for MAC OS X (Lion), since it had many versions and then experimented with other interpreters “program-W” and “ChatterBean” since these were based on program-d, which also had almost similar problems as the program-d 4.5, after these interpreters the Author had tried Charliebot this had worked on at the starting stage on, OS X. The following image represents the execution of the Charliebot from the terminal.
Figure 5.7 Execution of Charliebot on terminal PAGE 72 OF 120
NOTTINGHAM TRENT UNIVERSITY
RESEARCH PROJECT
N0235871
! The prototype experimentation was started using Charliebot as obtained from source (cocoanutstech 2004) and further experimentation process required Charliebot’s API documentation for integration on MUVE, the available sources on API’s about this interpreter were very limited and there was not enough documentations on this interpreter since this was an experimental interpreter at this stage the Author had preferred to work again on the old interpreter Program-d, as the Author had started to experiment all the versions which were available from its web (aitools.org 2007) starting from (V-4.1.0, 4.1.1, 4.1.2, 4.1.3, 4.1.4) and finally the version 4.1.4 had worked, as the following screen shot represents the terminal execution and ALICE conversation.
Figure 5.8 Execution of Program-D on Terminal
As the above figure represents the program-d binary execution, the AIML Chatbot Brain files are loaded which are required for conversation with the end users, and Once the Program-d was working, this had ignited the Author’s hope to experiment further on next tasks and this made a big impact since the available program-d API resources were stable and sufficient to experiment in the next stages of the system integration cycle. PAGE 73 OF 120
NOTTINGHAM TRENT UNIVERSITY
RESEARCH PROJECT
N0235871
! The experimentations process begin from studying about Program-D interpreter API’s from (files.aitools.org 2007) some of the necessary classes for interfacing Program-D were such as, 1. Org.aitools.programd.Core This class is most important, the Core of Program-D, which is independent class of any interfaces, there are three constructor types, "Core (URL Base) which initializes a new core objects with default property values base URL" and methods which are “getGraphmaster”, "getBots", which is based on information’s about AIML Bots, "getBot", a unique id of the requested Bot, getResponse method to obtain response from the users and generate outputs 2. Org.aitools.programd.CoreSettings This class uses the constructer, which is required for integration to create a content tree, the CoreSettings” (URL propertiesPath) Creates a CoreSettings with the (XML-formatted) properties located at the given path”.(files.aitools.org 2007) 3. Org.aitools.programd.bot.Bots Controls all of the properties of an included bot. 4. Org.aitools.programd.util.URLTools Involves methods, which are necessary for validating the URL, which includes “URLTools contains helper methods for dealing with URLs”. Once the Program-D API’s were familiar, the Author had obtained an example tutorial module on Open wonderland platform extension, which is a “Shape-tutorial-module” from (java.net 2011) the Author had come across several documentation tutorials about the open wonderland module deployment concept and followed a tutorial on shape development module from (Slott, Project Wonderland v0.5: Creating a simple shape (Part 1) 2009), which is based on similar to Plug-in more details are in literature review chapter (Section, 2.4.4.2.b) the experimentations led the author to obtain the working process of the OWL module concepts which is based on three concepts “Server”, “Client” and “Common” for (Server and client states) which were discussed in literature review chapter (Section, 2.4.4.2.b) after experimenting with “shapetutorial-module” The Author had a basic knowledge about all the java classes which were necessary to manage the objects in server side, rendering objects in virtual world and synchronize between client and server, and been very familiar with Open wonderland deployment process and basically this was the major step for Author to learn about the platform extension through Cell Module development ways which are described in (Section, 2.4.4.2.b) then the Author started to follow the same tutorials to PAGE 74 OF 120
NOTTINGHAM TRENT UNIVERSITY
RESEARCH PROJECT
N0235871
! integrate the Program-D binary from obtaining an OWL empty module from the source (josmas 2011). Initially the integration process started by modifying the empty modules few files such as “my.module.properties”, “Build.xml”, and imported to NetBeans since this file is based on NetBeans project for integration, the libraries of Program-D were included with other several necessary libraries which Open wonderland requires for rendering, other libraries for server, client, common synchronizing and process will be discussed more in detail in the later stages. The integration process started on the basis of referring to “Shape-tutorial-module” (java.net 2011) the main class which was able to handle the required integration tasks were client sides, CellComponent class, this is basically to handle all the 2D or 3D objects rendering in the virtual world, so the Author started to obtain more knowledge about the open wonderland Java Docs on necessary classes to handle design of a 2D Chabot window, rendering, integration of program-d, by the API Docs from (javadoc.openwonderland.org 2012) had initiated the procedures of Program-D API’s in this class, the required instructions method to successfully integrate Program-D AIML Engine were such as, 1. Extend “ChatbotCell” class with OWL Core super class “Cell” 2. Each subclass of super class Cell must overrides the setCleintState() Method 3. Then Initialize a Chatbot “SetBot” invoked from “ProgramDCore” class 4. To create a content free of AIML Files which are ALICE Brains on the server side the class ProgramDCoreSettings” (URL propertiesPath) for Creating a CoreSettings with the (XML-formatted) properties located at the given path were required. 5. Prototype required A 2D textbox based on java Swing concept tutorials obtained from the source (Johnson 2009) for the user input which was experimented on the module deployment based on experimenting and referring to the open wonderland text-chat module source code which was obtained from (code.google.com 2010) 6. And a method for obtaining response from users which is “GetResponce” from ”ProgramDCore”
PAGE 75 OF 120
NOTTINGHAM TRENT UNIVERSITY
RESEARCH PROJECT
N0235871
! The experimentations of this prototype was very progressive and the methods which the author had included were not working some of them are not practical and some methods required to include methods which are “Graphmaster” which is according to the Program-d API java doc “The Graphmaster is the "brain" of a Program D bot. It includes the collection of nodes known as Nodemappers. This Nodemappers map the branches from each node. The branches are either single words or wildcards.” (files.aitools.org 2007) the following image represents about the Nodemapper.
Figure: 5.9 Nodemapper of the graph (Bush 2011) This prototype experimentation took a long time, and did not worked as expected the trail and error of this module had been done many times and days this experimentation process had given a greater experience and made the Author to gain the skills required for the later stages in the area of integration concept, which later influenced in integrating in different approach, which also gave the skills and ideas about Designing a 2D Chatbot window, OWL required programming methods, and the deployment of this module went on for long time which made the author to adjust for the concept of extending the MUVE platforms.
PAGE 76 OF 120
NOTTINGHAM TRENT UNIVERSITY
RESEARCH PROJECT
N0235871
! 5.7.3 PROTOTYPE-3 After immeasurable times of experimentation with second prototype the Author totally had lost his optimism for integrating the Chatbot on MUVE and started to research in other areas of virtual world learning methods and also Author had been constantly kept observing all the existing NPC based Chatbot functionalities from online game engines such as World of warcraft (WOW) and in this WOW Engine the Chatbot service called “Wow Guru” (www.wowguru.com 2012) this Chatbot concept was based on querying information’s using IRC channels to search for online database. And some of the Chatbots in WOW had enabled with the AIML Engines, this had trigged the Author to experiment with this process, and after gathering several information’s. The Author found out about Pandorabots, which is ALICE, based on Online engine discussed in literature review chapter (section, 2.5.1.2) and after obtaining necessary information’s about the Pandorabots the Author was in search of Pandorabot API’s since the official website of Pandorabot suggested that, “Pandorabots has an API called XML-RPC for connecting third-party software to our Bot hosting service”(www.pandorabots.com 2012). And in this stage, the Author knew that this experimentation would be the final endeavor since the time constraint problems and at this stage Author had developed hope to experiment in the new approach for getting the Chatbot working on Open wonderland MUVE, and considered this implementation process as prototype-3 and started to search for existing Chatbot based on Pandorabot, and obtained many sources of Chatbots, which were enabled with Pandorabot online AIML Engine. The most well known and active Chatbot based on this prototype was from Second life MUVE, more details are in literature review chapter (section, 2.5.1.2.a) this Bot is developed from Linden labs (http://lindenlab.com/), the API code is based on Linden programming language sources are from (D. R. Wallace 2012) the required example of Pandorabot API codes was available in Linden programming language, the experimentation started with the available code which is illustrated in the following section a Terminal screen snap shot (figure 5.10), which is based on XML-RPC (Remote procedure call) by having an Bot-ID, Customer ID and mainly the programming logic was to query using the XML Link (http://www.pandorabots.com/pandora/talk-xml) enabling the Bot-ID. PAGE 77 OF 120
NOTTINGHAM TRENT UNIVERSITY
RESEARCH PROJECT
N0235871
!
Figure 5.10 Pandorabot API on Linden Program Chatbots in Second life MUVE Engine uses the above programming concept to enable the NPC’s to have conversation functionality with the Human Avatars as discussed in the literature review chapter includes an Chatbot conversation image (section, 2.5.2.2.c, figure-28), The above API code has influenced highly to attain success in integration process, so the Author had these sufficient practical working sources to experiment with the current Prototype-3, the main requirements were Pandorabot API and a Swing based Textbox for Chatbot. Pandorabot offers public based free Server for hosting Chatbots. The server is proposed for Chatbot Users to introduce new AIML patterns and categories (www.pandorabots.com 2012). This public based free AIML Server is a place to more than 200,000 Chatbots developed by many Artificial intelligence enthusiasts nearly 166,000 Chatbot masters are actively developing. And Initially the process of creating Pandorabot was to obtain an account for getting a Bot-ID, after the sign up procedures, a Bot has been created based on Standard AIML tags, PAGE 78 OF 120
NOTTINGHAM TRENT UNIVERSITY
RESEARCH PROJECT
N0235871
! Once the Bot has been created, Author had published with default ALICE Bot character by its AIML tags and also the Chatbot character information’s can be modifiable, there are many options for developers to improve the Chatbot knowledge base by uploading their version of AIML tags, After publishing the Pandorabot the Bot-ID had generated which is very necessary for next implementation stages, the Bot ID is “fd945da19e34e974” the below published Pandorabot conversation between a human is illustrated.
Figure 5.11: Screen shot of published Pandorabot As seen in the beginning of this section, According to (D. R. Wallace, alicebot.org 2012) the methods to integrate for Connecting to Pandorabot is based on API called XML-RPC (Remote procedure call) this communication protocol uses XML to encode which calls HTTP as a transport mechanism A client can interact with a Pandorabot, Chatbot service by Posting to (http://www.pandorabots.com/pandora/talk-xml) with the generated Bot-ID some of the necessary form variables for integration on MUVE which are, 1. Bot-ID: It’s a unique BOT identifier of the Pandorabot. 2. Customer-ID: This ID is to track the Log conversation with a particular Customer. This variable is optional. 3. Bot will give an xml based Text Response for User Queries. B. THE OPEN WONDERLAND CELL COMPONENT MODULE DEVELOPMENT
EXPERIMENTATION FOR PANDORABOT INTEGRATION The Open wonderland integration for prototype-3 requires Cell Component module development standards, since this is based on extending capability, This is another approach from the previous prototype Chatbot module development structure as discussed in (Section, 5.7.2). Prototype-2 was based on Cell module development PAGE 79 OF 120
NOTTINGHAM TRENT UNIVERSITY
RESEARCH PROJECT
N0235871
! and the Author of the project has intended to adopt some sources relevant from the second prototype module to experiment and that did not worked as required for Cell Component. In this stage the Author needed to learn and gain knowledge about deploying the Cell Component Modules for open wonderland which is based on extending the capability of an virtual world objects as discussed in the above (Section, 5.6.A), The Cell Component module learning process had started based on a tutorial documentation obtained from web source (Slott 2012) the example Cell Component Module experimentation was a “Tool-tip component” mainly for practice, the entire process took many experimentations which finally involved in gaining a decent experience in developing Cell Component.
! Figure 5.13 & 5.14: Tool-Tip Cell Component (blogs.openwonderland.org 2010)
The above figures illustrates the functionality of a Tool-Tip Cell Component, in which the component is extending a Cell (Object’s) capabilities which is basically the module is programmed to show the text information’s when mouse hovers over the selected Cell Object, as illustrated in the above figure 5.13 the user has added a component to that particular cell object which also shows that a textbox for information’s and the right side figure 5.14 illustrates the given text information’s when users mouse is hovered over that Cell Object. The Authors experimentations results were similar. And once the concept of Cell Component was clearer The Author had experimented with NPC based Scripting Component Module from source (code.google.com 2010), in which this Cell Component Module is based on extending NPC’s Capabilities in open wonderland. PAGE 80 OF 120
NOTTINGHAM TRENT UNIVERSITY
RESEARCH PROJECT
N0235871
! C. INITIAL PROCESS SKELETON MODULE FOR CHATBOT
After several times of experimentations with Cell Component development and deployments, an additional empty module for prototype-3 have been obtained sources (josmas 2011) the empty module is based on NetBeans project, which contains essential open wonderland module files, which has starting instructions to follow. Following basic instructions the author had initiated the tasks. Initially the experimentation of this prototype has been named Pandorabot, as below screenshots represents the initial development figures. D.1 CELL COMPONENT MODULE DEVELOPMENT IN NETBEANS
The following experimentation, skills and some instructions were adopted from prototype-2 mainly from the experimentation by outer sources, once the module work station was setup the libraries requirements for all the classes were based on wonderland core system such as “mtgame.jar” which is “MT Game Framework, is an exclusive seventh generation game engine” (en.wikipedia.org 2010), “jme.jar” which is jMonkey Engine “A 3D game engine written in and for Java. Many features including collisions,
particle
systems,
shaders,
terrain
system,
renderer
abstraction”
(http://jmonkeyengine.com/), “sgs-server-api-0.9.10.jar” API’s for server, “sgs-shared1.7.jar”,
“wonderland-server.jar”,
“wonderland-common.jar”,
and
“wonderland-
client.jar”. 1. CHATBOT COMPONENT MO (SERVER CLASS) Following the requirements standard for the Chatbot Cell Component Module Package such as “Server”, “Client” and a common package for Client and Server States were initially been added. The tasks for this class were, such as, 1. The functions of “Chatbot Component MO” class are to manage shared state of the Cell for all clients. 2. To manage asynchronous updates from individual clients, 3. Cell ComponentMO is based on "live" or "not live" 4. There are three methods which are required in this class, which are discussed below
PAGE 81 OF 120
NOTTINGHAM TRENT UNIVERSITY
RESEARCH PROJECT
N0235871
!
Figure 5.15 Chatbot ComponentMO Server Class
The initial java class created was the server side, which were Adopted from Tool-Tip Component, this represents the Cell Component; the class name specified is “PandorabotComponentMO” The “MO” stands for Managed object, which is the term based on the Darkstar gaming engine, in which it includes Avatars’ data like position, equipment, The functions of this server class are to manage shared state of the Cell for all clients. Mainly for managing asynchronous updates from individual clients, Cell ComponentMO is based on "live" or "not live", which is basically similar to the state of CellMO. A live CellComponentMO indicates that the CellMO in which it is attached is present in the world. When a CellMO transitions from "not live" to "live" state (or vice versa), The Code is explained in the appendix, It iterates there are three methods which
are
important
PAGE 82 OF 120
in
this
class,
getClientClass(),
getServerState(),
and
NOTTINGHAM TRENT UNIVERSITY
RESEARCH PROJECT
N0235871
! getClientState() method,The getCleintClass() method returns the subclass of the cellComponent class which illustrates the client cell component class. The getServerState () method fills object of cell Component ServerState class. The setServerState() records the state specified from the server state object into the pandorabotCellComponentMO object. 2. PANDORABOT COMPONENT SERVER STATE (COMMON CLASS) 1. The Common Server-State Pandorabot Component Class is Responsible for reading and parsing the xml cell file within WFS. 2. The Pandorabot component server state class should extend Cell Component Server State. 3. By annotation with Java Architecture for XML binding (JAXB) annotations to marshal or serialize to an XML in WFS (Wonderland file system) 4. Required Methods “getServerComponentClassName”, the details are given below
Figure 5.16: Code illustrating JXB Annotations Adopted from Prototype-2, Cell component Server and Component client state are common class which are similar to wonderland Cell Component Server State class architecture, which is intended to work as similar purpose since the server state java class should extend Cell Component Server State, the class basically consists of Java architecture for xml binding (JAXB) annotations to marshal or serialize to an XML based on WFS (Wonderland file system)
PAGE 83 OF 120
NOTTINGHAM TRENT UNIVERSITY
RESEARCH PROJECT
N0235871
! The annotation causes a root element statement to be created in the schema. The global element declaration is associated with the XML schema type to which the class is mapped. 3. Pandorabot Component Client State (Common Class) 1. The Pandorabot component Client state class should extend Cell Component Client State. 2. The purpose is to serialize from the ComponentServerState to each client as a java object from ComponentClientState, details are specified below.
Figure 5.17: Code illustrating Component Client State The CellComponentClientState class is the base class of all state information communicated between the client and Darkstar server nodes for the cell components it extends the cellClinetState class and illustrates the information that appeared from the
server
to
inform
ComponentServerState
the and
client
how
to
configure
ComponentClientState
class
itself. contains
In the
general same
information’s The client state class is serialized across to each client for each cell when it connects This class is to compile both in to the server side and client side codes So it belongs to common package, The purpose is to serialize from the ComponentServerState to each client as a java object from ComponentClientState 4. Pandorabot Component (Client Class) PAGE 84 OF 120
NOTTINGHAM TRENT UNIVERSITY
RESEARCH PROJECT
N0235871
! 1. The Client-side Pandorabot Cell Component Class 2. Every object displayed in the virtual world is represented by this class 3. Includes methods for connection to Pandorabot based on API called XML-RPC (Remote procedure call) protocol uses XML to encode which calls HTTP as a transport mechanism. 4. A client can interact with a Pandorabot, Chatbot service by Posting to http://www.pandorabots.com/pandora/talk-xml with the Bot-ID 5. Create a 2D chat textbox based Chatbot User Interface In World Application.
Figure 5.18: Pandorabot Cell Component, Code on XML-RPC This class is based on the client side component class; which is responsible to display graphical objects in the virtual; the classes that implement the client-side functionality are the most complicated aspect of the Pandorabot component. Every cell component has a client-side class that extends CellComponent and keeps the state of the cell component. Below a code method is illustrate to connect Pandorabot the entire code explanations are in the appendix
PAGE 85 OF 120
NOTTINGHAM TRENT UNIVERSITY
RESEARCH PROJECT
N0235871
! Above screen shot representing a response retrieval Method for Connecting to Pandorabot By its API called XML-RPC from Posting to (http://../pandora/talk-xml) with the earlier created Unique BOT-ID and program follows, which represents a Uniform Resource Locator, a pointer to a "Pandorabot XML" New Instance of URL Connection to make connection between this Module and URL instance. The process of deploying took many times since the Chatbot user interface was not properly working this process took many time to fix the component module sources are based on(Johnson 2009), once the Pandorabot component module has been successfully build by using necessary information, designed the Chatbot textbox and some experimentations late generated the binary sources from the module then process was to be deploy to the wonderland server. Which is based on deploying to (http://localhost:8080/). 5.7.4 RESULTS AND TESTING OF PROTOTYPE-3 1. WORKING MODES OF MUVE ENGINE AND IMPLEMENTED TASKS WITH SCREEN SHOTS This section describes the process took place after the project Pandorabot module has been developed and deployed to the open wonderland server, as this section will discuss the entire flow of open wonderland MUVE Engine login and administration process with the Pandorabot working Screen shot. The below screen shot illustrates the wonderland web server started link on local server,
Figure 5.19 Terminal prompt representing running local server Once the server has started it prompts the server link for clients to connect in this case it is a local host, the below image illustrates the web front of the open wonderland servers page.
PAGE 86 OF 120
NOTTINGHAM TRENT UNIVERSITY
RESEARCH PROJECT
N0235871
!
Figure 5.20: WebFront of Open wonderland server The above screen shot illustrates the open wonderland world launch page, as here there are two options for administrators and users, the administrator can able to manage the world from logging in to the server admin option, which is based on managing world, managing modules, managing server which includes “Web Administration Server”, “Darkstar Server”, “Voice Bridge” and “Shared Application Server, the below image represents manage modules which shows the deployed “Pandorabot” module which has deployed in the server.
Figure 5.21: illustrating Server page Deployed modules PAGE 87 OF 120
NOTTINGHAM TRENT UNIVERSITY
RESEARCH PROJECT
N0235871
! Once the entire server is running, which is discussed previously, the below screen shot illustrates the Server running on local host. Once the entire server is running effectively the clients can successfully able to launch the server.
Figure 5.22: Screen shot of Manage Server After the above administration process is completed the clients can able to launch the open wonderland server, in this process after the launch a “java web start” will be downloaded to the clients local systems, which is intended to Cache the open wonderland server in the clients local systems, after a few minutes depending on the internet speed the “Log-in” window will appears, as illustrated in the below image. Once the User logs-in to open wonderland server, it will take few minutes to load the virtual world depending on the Internets speed, after that the world will load based on the servers default world selections. The below screen shot representing the empty virtual world,
Figure 5.24: Wonderland starting World The wonderland client viewer will provide few default functionality for users to change their avatar appearance, navigation keys, can able to insert new objects from the PAGE 88 OF 120
NOTTINGHAM TRENT UNIVERSITY
RESEARCH PROJECT
N0235871
! “Insert” menu these objects are based on “Cell” deployed modules, and these modules can be extendable by adding Cell Component to it by selecting its property and adding a component which is illustrated in the below image.
Figure 5.25: Illustrating the AIML Component which can be added The above screen shot is based on adding functional components to the object Cells, as there are several components can be added to the object “TreeHillGrassHex” components such as “AIML capabilities” based on integrated Pandorabots. The below image shows in world 2D Chatbot Window
Figure 5.26: Screen shot illustrating Pandorabot Window PAGE 89 OF 120
NOTTINGHAM TRENT UNIVERSITY
RESEARCH PROJECT
N0235871
! 2.A THE CHATBOT IMPLEMENTED INTERFACE
Figure 5.27: Screen shot of Chatbot Interface The Above screen shot represents the Chatbot window, which the user has engaged in a conversation with the Pandorabot. 2.B QUERYING WITH WOLFRAM ALPHA After integrating the Pandorabot on open wonderland as a component the Author experimented with Wolframe alpha knowledge base in 2 ways which are based on using same methods as the Pandorabots methods by using API and other method is based on adding a A.I.M.L file based on querying Wolframe alpha in to the Chatbot A.I.M.L engine, Similar to the A.I.M.L Engine the wolfram alpha provides the API based on REST Protocol, which uses HTTP Get request to retrieve the answers from the engine, which will be in XML Structure answers based on Text and Gif images formats. The requirements for integrating wolfram alpha in to open wonderland module will basically follows the same process as the Pandorabot, in which here in wolfram alpha a "App-ID is required", this will be available for making 2000 queries a month, the author of this project has signed up for wolfram alpha and obtained an App-ID for integrations, As the wolfram alpha is based on Answer Engine its output specifications are little different, in comparison with the Chatbot outputs, the below image represents the output window of the wolfram alpha website. PAGE 90 OF 120
NOTTINGHAM TRENT UNIVERSITY
RESEARCH PROJECT
N0235871
! 2.B.1 WOLFRAME ALPHA ANSWER OUTPUT WINDOW
Figure 5.28: “Annotated output from the Wolfram | Alpha website” (wolframalpha.com 2011)
2.C. METHOD 1, USING API CALLED XML-RPC (REMOTE PROCEDURE CALL) The Author has experimented with integrating Wolframe alpha as a cell component following same process of developing Pandorabots, to query the answer engine the requirement code are focused below, Answer Engine "Wolframe Alpha" Access App-ID & Xml-link String appID= "JQEKVG-JUA262WP84"; URL ("http://api.wolframalpha.com/v2/query?appid=JQEKVG-JUA262WP84");
After the Integration and deployment to the server the author has tested querying many answers related to math and factual knowledge such as by entering “How far is India from the UK?” after few seconds the answer retrieved from the Chatbot. The PAGE 91 OF 120
NOTTINGHAM TRENT UNIVERSITY
RESEARCH PROJECT
N0235871
! Answer was in XML format with the pods (xml tags) the entire query file is attached in the appendix below, some of the answer information is shown in the below, the answers are based on xml, which includes text answers and the answer engine generates the Gif images and provides the links in the xml query file since the Chatbot window is based on text window and it requires graphical API’s based on Alpha engine standards to display the Gif image based answers, example is shown below. Answers from Wolframe Alpha for “How far is India from the UK?” It provides Text as well as Generates Gif Image links under the Separate Plaintext Tags,
Figure 5.29: Chatbot Screen shot retrieving Query results based on XML 2.C.1 RETRIEVED TEXT ANSWER AND GENERATED IMAGE SOURCE
United Kingdom | center coordinates to India | center coordinates 4672 miles aircraft (550 mph) | 8 hours 29 minutes sound | 6 hours 8 minutes light in fiber | 35.1 ms (milliseconds) light in vacuum | 25.1 ms (milliseconds) (assuming constant-speed great-circle path)
2.C.2 GENERATED GIF IMAGES SOURCES
Figure: 5.30 Separate Gif images, based on results, generated from Alpha Engine
PAGE 92 OF 120
NOTTINGHAM TRENT UNIVERSITY
RESEARCH PROJECT
N0235871
! Since the Wolframe alpha is based on very complex knowledge base ontology it is considered the worlds most powerful semantic web based answer engine it has developed form a very long time by the Author “Stephen Wolfram”(wikipedia.org 2008) this will be very necessary answer retrieval tool for a virtual world educational system to integrate. At the preset condition the Author of this project has managed to retrieve text based xml answers, due to the time constraints the author has not implanted a wolfram alpha generated image viewer based on its graphical interface API’s, the further discussions on this integration will be explained in the future development chapter. 2.D. METHOD 2, USING A.I.M.L FILE IN CHATBOT INTERPRETER TO QUERY WOLFRAME ALPHA Since the A.I.M.L is based on set of patterns and categories, there are experiments in the AI fields by developing a A.I.M.L scripted files which could able to query Ontology’s, such as FOAF for Facebook, Wikipedia for answers and Wolframe alpha, as the below image represents the A.I.M.L file querying wolfram alpha, this development is based on a AI related project from (Tags 2012), other AIML tags are attached in the appendix.
Figure 5.31: Image AIML tags for querying Wolframe alpha source (Tags 2012)
PAGE 93 OF 120
NOTTINGHAM TRENT UNIVERSITY
RESEARCH PROJECT
N0235871
! 5.7.5 VIRTUAL CAMPUS DEVELOPMENT (3D MODELS) This section describes the implementation process of 3D models in Google SketchUp and then integration in the virtual world as a virtual campus; the modeling example is based on NTU campus building and this section explains the process by providing the Screenshots, Author obtained Google SketchUp 3D development practical hands on experience and knowledge during the open wonderland world development Sessions from (Yankelovich, Using SketchUp to Create Models for Wonderland 2012) and the wonderland teams. 1. PROTOTYPE 3D MODEL OF CIB IN GOOGLE SKETCHUP
Figure: 5.32 Top view Blueprint
The above figure 5.32, illustrates the process of modeling CIB building in Google SketchUp it started from following blueprint which was designed in the previous chapter (section, 2.6.9.c) The modeling process carried out initially importing Models blueprint in Google SketchUp and drawing using available tools which are, As in the blueprint the blue line represents the walls and red line represent doors, drawing started using pencil tool, the techniques was to draw on the edge of the blue lines to build surface walls, Phase-2 which is based on this techniques. PAGE 94 OF 120
NOTTINGHAM TRENT UNIVERSITY
RESEARCH PROJECT
N0235871
! 1.A ILLUSTRATING 3D MODELING PROCESS
Figure 5.33, Modelling Process After drawing entirely Over the blue lines Author used “Push and pull” tool for making the walls 2 inches thick since it is required that the building models has to be thick (sketchup 2010) and maximized the using Push and pull tools, then designed the staircase using rectangular tool as shown in the below figure 5.33.
Figure 5.34 Finished Building 3D Model After completing the basement Flore, Author then used the pencil tool to draw ceilings, then by using push and pull tool he could raise the building until 3rd Flore by following the same techniques. He finished the basic model after completing the building process as illustrated in the above image and Author used textures for painting the walls; sources obtained from (Yankelovich, Using SketchUp to Create Models for Wonderland 2012) the textures are taken similar paints as on the CIB geo building. The methods to use texturing were to use the PNG file format for textures. This in general offered a more real texturing resolution. Author also found it is important to make sure that the textures have a 2 x 2 scale. This facilitated to keep the textures to scale when reforming models. PAGE 95 OF 120
NOTTINGHAM TRENT UNIVERSITY
RESEARCH PROJECT
N0235871
! 2. NAME BOARD DEVELOPMENT PROCESS
Figure 5.35 Name Board Modelling Process
The above figure 5.35, illustrates the process of modeling Name boards of buildings in Google SketchUp it started from following designs from the Design chapter (Section, 2.6.9.e) modeling process includes name boards which are based on similar to Clifton campus. 3. NAME BOARD DEVELOPMENT PROCESS
Figure 5.36 Name Board Modelling Process
The above figure 5.36, illustrates the process of modeling Rooms for Learning, Collaboration and entertainment based on (A, B and D) following the designs from the Design chapter (Section, 2.6.9.f). PAGE 96 OF 120
NOTTINGHAM TRENT UNIVERSITY
RESEARCH PROJECT
N0235871
! 4. OTHER 3D MODELS OBTAINED FROM OUTER SOURCES
Figure 5.37 3D Modles from the Google Wearhouse
The Above figure illustrates about the required other models for building virtual campus, which are, Grass Floor - 8x8m (Nigel 2009) for the Virtual campus, base floor, Sheffield Bicycle Stands (sketchup 2011), Oak tree (Marurb 2007) and Road (Joe 2011) these models are used for making the virtual campus simulation feel similar to reality 5.8 BUILDING VIRTUAL WORLDS IN OPEN WONDERLAND Once the entire 3D model has been designed in the Google SketchUp, it has to be converted to (.KMZ) format, since the open wonderland can recognize theses format files, in open wonderland to build the virtual world are from place marks, starting steps are initially the administrator has the authorities to create and save the virtual world, by adding new place mark information’s as shown in the below image it will generate a empty world based on the Location x, y, z data’s.
Figure: 5.38 Initial World building process in Open wonderland
5.8.1 VIRTUAL CAMPUS BUILDING IN OPEN WONDERLAND PAGE 97 OF 120
NOTTINGHAM TRENT UNIVERSITY
RESEARCH PROJECT
N0235871
! Following tutorial from the Author (Yankelovich 2011) After the Campus Location has been created in the open wonderland, the initial development process has started, basically the author imported all the 3D models which he created during the early phases and imported in to the virtual campus Location, which includes every 3D models, and open wonderland has functionality for moving, maximizing, minimizing, and rotating virtual objects.
Figure: 5.38 NTU Virtual Campus in Open Wonderland
The imported models have placed in the proper locations based on following Clifton Campus environment scenarios. As the above Screenshot figure represents the Virtual Campus based on Abstract model of Clifton campus in Open wonderland, as designed in the Chapter-4 (Section, 2.6.9.b, Figure-4.15). 5.8.2 VIRTUAL CAMPUS FUNCTIOPNALITIES IN OPEN WONDERLAND MUVE PAGE 98 OF 120
NOTTINGHAM TRENT UNIVERSITY
RESEARCH PROJECT
N0235871
!
Figure: 5.39 NTU Virtual Campus Front Views in MUVE
In Wonderland after building the virtual world, it can be saved which wonderland has a technique called “Create Snapshot” which is based on administration side, this will save the developed virtual world.
Figure: 5.40, Chatbot and Open wonderland Applications
The Above figure illustrates all the functionalities which open wonderland has. It includes interior building view, which includes applications on the wall for brainstorming activities, and gesture menu, and also it includes the integrated Chatbot based on ALICE.
PAGE 99 OF 120
NOTTINGHAM TRENT UNIVERSITY
RESEARCH PROJECT
N0235871
! 5.9 CHAPTER SUMMARY
CHAPTER-5
This chapter initiates with a background introduction about the implementation tasks which had to be accomplished based on the design documentation procedures based on following the development methodology "Iterative and incremental development SDLC,
model
phases
for
accomplishing
the
implementation
process,
the
implementation process includes many development components which will make this as a whole system which are, integration of Chatbot, 3D modeling and designing a virtual campus for education frameworks. Integration of Chatbot Includes experimenting in three prototypes based on trail and error with experimenting all the prototypes the first prototype was based on designing a new Chatbot in java program, with using linguistic database "WordNet" and JWI API (Java WordNet API) after experimenting several times with this prototype as a result this did not worked as expected and when experimenting with this prototype the Author had discovered about the ALICE Chatbot which is based on AIML Engines, which uses AIML Interpreter based on Graphmaster algorithm after discovering this prototype the author had obtained java based AIML Interpreter which are (Program-D, Charliebot, ChatterBean, Program-W) and experimented with program-d by learning its API's for integrations, and at this stage the author had a great experience with working on open wonderland Cell Module development and deployment by learning open wonderland's module development standards and its API's for integrations as a result after immeasurable times of experimentations with this prototype, this did not worked And there was no other way to experiment, Finally this stage the author had lost his optimism for integrating a Chatbot on Open wonderland, and started to gain knowledge about virtual world related 3D modeling and online collaborative learning strategies, even though the Author had lost his hope of Chatbot integration, he was constantly observing the NPC’s based Chatbots on gaming engines which are based on world of warcraft (WOW), once he found out about (WOW Guru) Chatbot and other Online based AIML Chatbots. The Author then started to discover about online game based Chatbots and their interpreters and found out about Pandorabots which are based on online Chatbot services, The Author found out about Second life MUVE engine which uses this interpreter Pandorabot, and obtained all the necessary sources and API's, which did not had much resources to experiment based on API’s, as Pandorabot API was based on XML-RPC, Author had obtained API code based on Linden programming language, that Author had PAGE 100 OF 120
NOTTINGHAM TRENT UNIVERSITY
RESEARCH PROJECT
N0235871
! intended to translated the linden code in to java, for the integration experimentations on open wonderland this prototype was based on new approach which was based on Cell Component development standards, This stage Author had obtained knowledge about developing Cell Components from experimenting Tool-Tip component development from open wonderland, once these process had been done the integration of Pandorabot on open wonderland has started and many trail and errors occurred and then the process led to deploy a working program on Open wonderland. After this process the testing was done, and experimented with interfacing with online answer engine wolfram alpha, and this was working based on obtaining the wolfram alpha's App-ID and xml link as this was based on XML-RPC protocol it was similar to Pandorabot integration process. Once the Chatbot integration process had accomplished. 3D modeling for virtual world development had started, which was based on developing 3D models similar to Clifton campus environments following design models from design chapter, and these process was successfully accomplished and integrated on the open wonderland as a Chatbot and virtual campus. Finally in this chapter the Author finally accomplished the integration of Chatbot based on prototype-3 on open wonderland and accomplished the 3D models based on required designs.
! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! !
PAGE 101 OF 120
NOTTINGHAM TRENT UNIVERSITY
RESEARCH PROJECT
N0235871
! 6.0 EVALUATION
(CHAPTER-6)
6.1 INTRODUCTION Evaluation is the most important and complicated task in a successful development project, it can take very long time to produce results when the output product has many components to analyze as in properly examine the whole system, Following the implementation process after reaching the required aims, the next phase was to evaluate the system in terms of obtaining results and discussions which is based on ensuring the system working tasks as expected, this process involves in testing the implemented system in contrast to recognizing the benefits of online education concept using virtual world by the assistance of a integrated intelligent conversation agent. 6.1.A SCOPE The chapter focuses on providing the factual results from users and by testing about the decisions of selecting a multi user virtual world platform to build a education system, and decisions about selecting the Chatbot Interpreter, this chapter process includes recording details about users opinions, system faults, involves in testing with users for getting feedbacks, questionnaires and observations of usability about the developed system. 6.1.B TECHNICAL IMPLEMENTED TASKS 1. Integration of the AIML Based Chatbot in open wonderland 2. Knowledge base experiment with Wolframe alpha and using additional AIML Files 3. Designing 3D models for virtual campus 6.2 TECHNICAL EVALUATION This section includes the evaluations between three Chatbot experimentations prototypes based on concluding the Authors suggestion on better Chatbot engine prototypes are based on creating a new Chatbot, console application based AIML Interpreter and online web based AIML Interpreter which Is Pandorabot. The evaluation is based on comparing ease of use and adding information’s in the Chatbot for retrieval.
PAGE 102 OF 120
NOTTINGHAM TRENT UNIVERSITY
RESEARCH PROJECT
N0235871
! 1. CHATBOT PROGRAM USING WORDNET
(PROTOTYPE-1)
As discussed in the implementation chapter in (Section, 5.7.1) describes about experimentations of the First prototype, This prototype was not successfully achieved, the methods which includes in this Bot are in generating responses using WordNet Linguistic database using JWI API, (Java for WordNet API) for interfacing this database, this experimentations led the Author to obtain a practical experience on the requirements and developments of a basic Chatbot program, which was basically to respond the users query’s by analyzing the inbuilt texts, as the Author had a Skeleton work for the experimentations and finally after many experimentations this prototype did not achieved its expected results and the Author had found out that, this prototype was not a practical program for integrating on Open wonderland MUVE, because of the query and answer retrieval was very basic since the programmer has to include the response patterns in the program and this will only generate a basic answers based on the queries, and also for adding more information’s for improving its answering capability was difficult, as considering these facts the author found out based on this algorithm other Chatbot Engines. The only advantage of this prototype was the ability to interface with other Ontology which are FOAF, Wiki, OpenCyc based on their API’s was fairly straightforward, since it was based on a existing ontology based interfaced model which was interfaced with WordNet database. 2. AIML INTERPRETER BASED CHATBOT
(PROTOTYPE-2)
This prototype had been experimented by the Author and had discussed in implementation chapter (Section 5,7,2), Mainly this was based on the AIML Chatbot Engine based on AIML Interpreter, and the experimentation was based on Program-D AIML Interpreter in which the integration method for open wonderland was to develop this using Cell module development procedures, and the integration was not accomplished and Author had discontinued experimentations with this model, the advantage was in this prototype technique was, The Author had planned to integrated knowledge basses, based on Meta data bases such as interfacing with Wolframe alpha, DBpedia (Wiki) and OpenCyc since this was based on console application source code version the chances for experimenting by modifying the code for interfacing with using API’s were fairly straightforward.
PAGE 103 OF 120
NOTTINGHAM TRENT UNIVERSITY
RESEARCH PROJECT
N0235871
! 3. WEB BASED AIML INTERPRETER
(PROTOTYPE-3)
As discussed in the implementation chapter in (Section, 5.7.3) describes about experimentations
of
the
third
prototype,
This
prototype
was
successfully
accomplished, this was based on web based AIML Interpreter which is known as Pandorabot and the API was based on XML-RPC, the integration was based on Cell Module development in Open wonderland, the concept of Cell Component was to extend capability of a virtual objects in open wonderland, the experimentation led the Author to additionally experiment with Wolframe alpha answer engine as well, as this was similar to XML-RPC protocol for retrieving query based information’s based on XML files. The negative part of this prototype is based on web Interpreter which is difficult to interface with ontology’s based on integrating in the AIML core as the figure represents in design chapter (Section, 4.6.3), the solution for interfacing ontology’s in this web based AIML Interpreter is that, based on the sources from (Restless, Pandorabots Can Now Query Wolfram Alpha 2011) the way it could be interfaced is that based on integration on a client side program for retrieval of information’s and additionally interface with all the required knowledge basses and also by developing AIML Based Files this could be solved and query can be made. And the Positive part is that the online way of Chatbot AIML concept is trouble-free and effortless for users to add additional information’s or extend Bot brain as in for increasing its answering capabilities since it only requires that users should have the ability to write simple AIML scripts based on Questions and Answers following the AIM scripting protocols which are based on Pattern, category and template concept as discussed earlier in the literature review chapter (Section, 2.5.11). 4. PROTOTYPES CONCLUSION Every prototype which the Author had a chance to experiment had supported him to achieve the expected aims which is based on integrating Chatbot on Open wonderland MUVE, the experimentation process of implementing all the prototypes was vey time consuming and initially the idea of dividing three prototypes experimentations was not prepared, this was a timely decisions which the Author had to commit since the familiarity of Chatbots was very limited. The process of implementing had influenced the Author to practically experiment all the important Chatbot Interpreters and programs, so the Author concludes the evaluation process of these prototypes were all interlinked and the achievement of the integration is based on all the experimentation process. PAGE 104 OF 120
NOTTINGHAM TRENT UNIVERSITY
RESEARCH PROJECT
N0235871
! 6.2 BACKGROUND SURVEY FOR LEARNING SYSTEM EVALUATION This section describes a background study for evaluation, in comparison with the implemented tasks, for rectifying some of the advantages of Chatbot and enabling virtual world based collaborative learning system about the research project, to utilize the MUVE engine for developing a virtual campus and its benefits to notify the evaluation criteria, which is based on proposing new ways or methods to expand the learning practices from improving a systematic process on the platform which supports multi users to collaborate and in association with involving existing technologies to increase the impact of learning new ways. To begin with the root aspect of online education system, According to (Steven 2007) the learning management system (LMS) is the most common education system, which is through World Wide Web, this has presented many ways to simplify the educational contents to reach a wide range of audience to publish the contents and it is not necessary for the content writers to be a developer or interface designer to extend the information’s however there are set of tools for publishing contents very easily this has been available since long time through many ways as this makes a initiative tasks for audiences such as tutors as for them to utilize the strategies for publishing educational contents for a wide range of audience such as students world wide through online. After years of improvements in the LMS sector these days some of the major technical improvements in LMS which are constantly been active and improving which includes “Chartrooms, discussion forums, grade books, and assessments” in considering this concept, Today the MUVE is a kind of similar to LMS concept which, has a great history of its birth from 1897 the first 2D virtual chat world called "Habitat" to today’s most advanced MUVES as we discussed in the background chapter such as "Open wonderland", "Second life", and "Everquest". Today these MUVE's have influenced from the gaming concept which includes every functionalities which the gaming engines has, the virtual world engines are build on the multi user game engines, which provides the same set of tools for users to obtain. And the recent study represents that second life MUVE, includes 92 universities in virtual world, and many organizations, libraries and museums. Based on the above evaluation about online education, which had illustrated the upcoming online learning platform, which will become more practical in the future.
PAGE 105 OF 120
NOTTINGHAM TRENT UNIVERSITY
RESEARCH PROJECT
N0235871
! 6.3 TECHNIQUES FOR EVALUATION All the feedbacks and information’s about the system were gathered based on Internet survey methods the questioners were asked on “Survey monkey” providing snapshots and link to the server for interacting with the MUVE Engine, since the research is based on online virtual environment engine. The motivation for the evaluation was In order to most successfully evaluate whether targeted system users who are students and their commitment with the designed Virtual World System would change their ability in real life, as in several kinds of behavioral changes about some particular way they could perform tasks, by enabling these techniques in to group collaboration works which are similar to a classroom, based learning methods which can be performed using multi user virtual world system, it was necessary to understand users point of view to recognize the uses of virtual campus which has all the functionalities such as Chatbot to motivate and guide them. The method for surveying about the intend project was by conducting various methods to analyze the system which are by conducting Interviews, formal questionnaire, observation and Discussion, finally analyzing the surveys and resulting data The method of questionnaires was based on 3 categories such as questionnaires about the first section on general background details about the familiarity of online education system this included 10 questions for general impression of participants on the proposed research, the second questionnaire was about familiarity of the virtual world technologies including questioners about the intended research project and third includes the whole system, with the integrated Chatbot questionnaire which included the usability of the Open wonderland virtual world engine. 6.4 USABILITY INSPECTION This method uses various types of methodologies to evaluate in which it includes, inspecting of a user interface, initially the target here is to give the users opportunity to assess the system to notify their viewpoints on the system and based on that it could be improved, the usability inspection includes many techniques such as “Heuristic evaluation”,
“Cognitive
walkthrough”,
“pluralistic
walkthrough”
these
are
the
techniques which has carried out during the process of evaluation. PAGE 106 OF 120
NOTTINGHAM TRENT UNIVERSITY
RESEARCH PROJECT
N0235871
! 6.4.1 HEURISTIC EVALUATION The Heuristic evaluation includes in detail examination of the system user interface in which case the system here is the virtual campus based on the available MUVE Engine Open wonderland, the evaluation includes the usability of the Client viewer which will be having all the Head up display (HUD) menu buttons such as for gesturing, audio, avatar customizations, navigations, error reporting, etc which is very essential in the education system since the users will be relaying on them on the MUVE, And interruptions with the integrated Chatbot component its interface, since this will carry out a systematic approach to examine the system. 6.6 RESULTS AND DISCUSSIONS The following section demonstrates the results and discussions about the conducted survey these were received from 9 participants; most of the questions were based on multiple-choice answers, as stated in the above sections and the results are given according to Authors judgment on most appropriate results to include in this chapter and rest of the survey are attached in the appendix. 1. PARTICIPATES AGE GROUPS
Figure: 6.1, Participates age Group
The above pie-chart represents the age group of the system evaluation participants; this was very necessary for assessment of the interest about multi user virtual PAGE 107 OF 120
NOTTINGHAM TRENT UNIVERSITY
RESEARCH PROJECT
N0235871
! environment among many interested users, as the statistics illustrates that out of 9 participants 5 participants were 21 to 29 in their age group, 3 participants were 30 to 39 in their group and 1 participate was in the age group of 50 to 59. And most of them were students and very few were professionals. The following answers for the above questionnaires were received from the above participants from obtaining their interest in the proposed integrated system and usability of the Open wonderland MUVE Engine for Virtual campus. Mainly these questioners are aimed about the Open wonderland MUVE platform and familiarity among the users. 2. OPINION ON ONLINE EDUCATION METHODS
Figure: 6.2, Participates opinion on online education
The above bar-chart illustrates the participants opinion on online education systems this was based on multiple choice question type, and it very necessary as well for assessment of the familiarity of their concentration level for learning subjects using online methods to obtain new way for experience, Which will untimely influence them in learning in multi user virtual environment among many interested learners, PAGE 108 OF 120
NOTTINGHAM TRENT UNIVERSITY
RESEARCH PROJECT
N0235871
! As the statistics illustrates that out of 9 participants 4 participants expressed online education system as “Good method, and in some stage much better than classrooms”, 3 participants expressed as “Excellent method to learn new knowledge” and 2 participants selected as “Moderate method, as in not as good as based on classrooms”. According to the interest of the users survey about online education system most of them were interested in innovative methods for learning new knowledge online. 3. PARTICIPANTS INTEREST ON NEW WAYS FOR GROUP COLLOBRATION
Figure: 6.3, Participates interest on new methods for online collaboration
The above Line-chart represents the participants interest about new methods for online collaboration this was based on multiple choice question type, and it very necessary as well for assessment of their flexibility to adopt their collaboration methods in to new situations with the same teams, This was very essential to know whether the participants will use Multi user virtual environment for their collaboration to accomplish their group working tasks as a result this will influence the proposed system on the positive side
PAGE 109 OF 120
NOTTINGHAM TRENT UNIVERSITY
RESEARCH PROJECT
N0235871
! As the statistics illustrates that out of 9 participants 6 participants expressed, “Yes I would try new ways to collaborate”, 2 participants expressed as “Sometimes I experiment with new technologies” and 1 participant selected, as “I never experiment with new technologies to collaborate”. According to the interest of the users survey about new methods for online collaboration most of them were interested in innovative methods for group colorations. 4. PARTICIPANTS HIGHEST ENGAGED ACTIVITIES IN MUVE ENGINE
Figure: 6.4, Participants highest engaged activities in MUVE Engine
The above Bar chart represents the participant’s highest engaged activities in using multi user virtual world environments this was based on multiple choice question type, and it very necessary as well for assessment of their interest on spending their time on activities which they perform most of the time on MUVE’s, As the above statistics illustrates that out of 8 participants 4 had expressed, “Learning new knowledge”, 2 participants expressed as “Taking with strangers”, 1 participant selected, as Business related works” and 1 participant expressed as for “Gaming Purpose” According to the interest of the users survey about their activities on MUVE the highest number of users are interested in “Learning new knowledge”. This concludes as in one point, that the proposed system would be feasible for education purpose. PAGE 110 OF 120
NOTTINGHAM TRENT UNIVERSITY
RESEARCH PROJECT
N0235871
! 5. CHATBOT FAMILIARITY AMONG PARTICIPANTS
Figure: 6.5, familiarity of Chatbots with Participants
The above Pie chart represents the participant’s familiarity of Chatbot technology this was based on multiple choice question type, As the above statistics illustrates that out of 5 participants 2 had expressed, “I don’t know Chatbots”, 2 participants expressed as “I am not familiar but I only have a basic knowledge about Chatbot technology”, 1 participant selected, “I am familiar with Chatbot technology”. 5. THE CONCEPT AND USABILITY OF CHATBOT IN VIRTUAL WORLD
Figure: 6.6, The Concept and usability of Chatbot in Virtual World The above bar chart represents the usability of Chatbot among participants, in 100% ratio, 80% of participants had “Strongly agreed” that the concept and usability of Chatbot in virtual world is good, and other 20% have “Agreed” on this. PAGE 111 OF 120
NOTTINGHAM TRENT UNIVERSITY
RESEARCH PROJECT
N0235871
! 6.7 CHAPTER SUMMARY
(CHAPTER-6)
This chapter consist of the evaluation methods of implemented tasks from the previous chapter; this chapter has started with an introduction by providing general background on the evaluation process, which involves some of the techniques, which are, usability evaluation of MUVE system, technical implemented tasks and discussions on providing better solutions for experimented prototypes, by comparing three different Chatbots with their interpreters, and the main evaluation techniques includes in Questionnaires, based on gathering information’s from the end users, finally the results from the evaluation states that majority of the participants agreed the system is good and feasible for collaborating on the virtual world for group projects and other learning related activities.
! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! PAGE 112 OF 120
NOTTINGHAM TRENT UNIVERSITY
RESEARCH PROJECT
N0235871
! ! 7.0 CONCLUSION
(CHAPTER-7)
This project was very ambitious the process of integration led Author to obtain knowledge by experimenting with multi user virtual environment platform, based on its extensions and about various Chatbot engines and it was very necessary for experimenting between different prototypes based on Chatbot integration, one of the best Chatbot which can be integrated with ontology’s based on Semantic webs to query information’s, is AIML based Chatbot named ALICE, which uses AIML Interpreter based on Graphmaster algorithm this can be extendable. Every prototype, which the Author had a chance to experiment, has its own good and bad features based on extending the NLP based answer retrieval capabilities, There are a few most important Chatbot Interpreters and programs, which are available, web based AIML Chatbot Interpreters are good for integrating on Multi user virtual world environments or on other online systems, which uses XML-RPC communication protocol to query information’s, As a result of overall project experimentation, the concept of Chatbot or conversation agent is a huge functioning engine which the author believes that it will be the future search engine concept which will be based on interlinked with available Semantic web based ontology's and information’s can be queried in natural language. A main lesson, The Author learnt from this research project was that “It is better to integrate existing highly improved service components then reinventing the same components” as in this generation since most of the frameworks are already been developed but it requires to analyze the gapes where technology should be filled by innovative connections to produce more outcomes. Chatbots are very necessary In a multi user virtual environments which are mainly based on education related platforms, by considering these facts about Chatbot requirements on MUVE and experimenting on collaborative learning techniques using Virtual worlds for education system the Author research intensions were accelerated for integrating Chatbot on Open wonderland MUVE based on designing a virtual simulated learning environment.
PAGE 113 OF 120
NOTTINGHAM TRENT UNIVERSITY
RESEARCH PROJECT
N0235871
! 7.1 FUTURE WORK
(CHAPTER-7)
Due to the time constraints some of the aims were not been achieved, as it required more time to experiment, some of them are, Integrating Chatbot capability on open wonderland NPC’s (Non player characters) based on proximity level for Chatbot to activate based on human avatar approaching towards NPC’s, this experimentations will be done based on integration on NPC module. 1. Improving Wolframe alpha’s output in the open wonderland by developing 2D based output frame using Wolframe alphas API’s for Visual Representations of its generated Gif image based answers to represent in virtual world. Since this is very necessary to represent the generated Image answers from the Wolframe alpha web. 2. Developing AIML Files, basically on improving its answering capabilities to query knowledge basses this is a concept of enabling semantic web based querying functionalities. And also the experimentations will be to interface with available open source ontology’s to achieve semantic web based Chatbot functionality using their API’s for integrations on AIML Interpreter. 3. Improving Open wonderland NPC Module and Chatbot outputs which is to convert text-based answers to voice-prompt based output on NPC’s utilizing open wonderland’s audio capabilities and other speech synthesis applications. This is very essential part for a multi user virtual environment to interact with NPC’s as this will be more useful in interacting and then Working on NPC’s scripting component to generate emotions for expressing the output message, which includes speech recognition for voice-based interaction with the Chatbot this can be done using NPC scripting component module as well. Since this will be a part of Virtual intelligence concept. It requires more dedicated time to develop these functionalities.
! ! ! ! ! ! ! ! PAGE 114 OF 120
NOTTINGHAM TRENT UNIVERSITY
RESEARCH PROJECT
N0235871
! ! 8.0 REFERENCES
1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11.
12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24.
MMOHut. The Top Most Popular Free MMORPGs. 2010. http://mmohuts.com/editorials/mostpopular-free-mmorpgs (accessed 2012 йил 12-08). wikipedia. Computer science. 2012. http://en.wikipedia.org/wiki/Computer_science (accessed 2012 йил 17-Sep ). Deléglise, Eric, Diponkar Paul, and Morten Fjeld. “2D/3D WEB TRANSITIONS: METHODS AND TECHNIQUES.” Peter Adolphs, Anton Benz , Nuria Bertomeu Castello , Xiwen Cheng , Tina Kl uwer , Manfred Krifka , Alexandra Strekalova. “Conversational Agents in a Virtual World.” DFKI-LT, 2011. Schaarsmith, Amy McConnell, and Gazette Post Pittsburgh. Growing number of college students choose online courses . February 16, 2012. http://old.postgazette.com/pg/12047/1209200-298.stm?cmpid=education.xml (accessed May 8, 2012). Tate, Austin. Activity in Context – Planning to Keep Learners ‘in the Zone’ for Scenario-based Mixed-Initiative Training. MSc in e-Learning Moray House School of Education, University of Edinburgh, Edinburgh: University of Edinburgh, 2012 ALEXEI SOURIN, KONSTANTIN LEVINSKI, QI LIU, 2010. Virtual Campus – It is Fun and Educational
. 2012. Singapore: Cgg-journal. ALLISON, C., MILLER, A., STURGEON, T., NICOLL, J.R. and PERERA, I., 2010. Educationally enhanced virtual worlds, Frontiers in Education Conference (FIE), 2010 IEEE 2010, pp. T4F-1-T4F-6. BARTLE, R., 2004. Designing virtual worlds. Indianapolis, Ind.: New Riders. BIN CHEN, FENGRU HUANG and HUI LIN, 2009. Using virtual world technology to construct immersive 3D virtual university, Geoinformatics, 2009 17th International Conference on 2009, pp. 1-5. BISHOPPHILLIPS, 2010-last update, Real Learning in Virtual Worlds - CHAPTER 2: Literature Review - RiskWiki. Available: http://riskwiki.bishopphillips.com/index.php?title=Real_Learning_in_Virtual_Worlds__CHAPTER_2:_Literature_Review [5/14/2012, 2012]. CHEN, J.F., WARDEN, C.A., WEN-SHUNG TAI, D., CHEN, F. and CHAO, C., 2011. Level of abstraction and feelings of presence in virtual space: Business English negotiation in Open Wonderland. Computers & Education, 57(3), pp. 2126-2134. E. PRASOLOVA-FØRLAND, T. G. WYELD, M. FOMINYKH, 2010. Virtual Campus of NTNU as an Arena for Educational Activities (Mikhail Fominykh) - Academia.edu. 2012. Trondheim: ACTAPRESS. HILL, V. and HYUK-JIN LEE, 2010. Libraries and museums in virtual worlds: Adoption of immersive learning environments, Virtual Systems and Multimedia (VSMM), 2010 16th International Conference on 2010, pp. 386-389. IAN, W., 2008-last update, High Scalability - High Scalability - Second Life Architecture The Grid. Available: http://highscalability.com/second-life-architecture-grid [5/16/2012, 2012]. IAN, W., 2008-last update, InfoQ: Second Life’s Architecture. Available: http://www.infoq.com/presentations/Second-Life-IanWilkes;jsessionid=103386D4D1EDDB904E927E3A4F5AE7F6 [5/16/2012, 2012]. IBANEZ, M., KLOOS, C.D., LEONY, D., RUEDA, J.J.G. and MAROTO, D., 2011. Learning a Foreign Language in a Mixed-Reality Environment. Internet Computing, IEEE, 15(6), pp. 44-47. JORDAN SLOTT, 2011. ProjectWonderland. java.net's Javadesktop web, . KAPLAN, J. and YANKELOVICH, N., 2011. Open Wonderland: An Extensible Virtual World Architecture. Internet Computing, IEEE, 15(5), pp. 38-45. KARLKAPP, 2010-last update, Random 3D Virtual World Statistics | Kapp Notes. Available: http://www.kaplaneduneering.com/kappnotes/index.php/2010/03/random-3dvirtual-world-statistics/ [5/14/2012, 2012]. KIRRIEMUIR, J., 2011-last update, About | Virtual World Watch. Available: http://virtualworldwatch.net/about/ [5/14/2012, 2012]. MARZIAH KARCH, 2010-last update, Review of Google SketchUp 6, Free 3D Modeling Tool. Available: http://google.about.com/od/googlereviews/gr/sketchupgr.htm [5/15/2012, 2012]. MIKROPOULOS, T.A. and NATSIS, A., 2011. Educational virtual environments: A ten-year review of empirical research (1999–2009). Computers & Education, 56(3), pp. 769-780. NINO, T., 2012-last update, Second Life Statistical Charts. Available:
PAGE 115 OF 120
NOTTINGHAM TRENT UNIVERSITY
RESEARCH PROJECT
N0235871
! http://dwellonit.taterunino.net/sl-statistical-charts/ [5/15/2012, 2012]. 25. OPENWONDERLAND, 2012-last update, About « Wonderblog. Available: 26. http://blogs.openwonderland.org/about/ [5/15/2012, 2012]. 27. RYAN DUBE, 2010-last update, Design & Build 3D Virtual Buildings & Objects With Google SketchUp. Available: http://www.makeuseof.com/tag/build-virtually-explore-3d-designgoogle-sketchup/ [5/15/2012, 2012]. 28. SCHENDEL, J., CHANG LIU, CHELBERG, D. and FRANKLIN, T., 2008. Virtual gallery walk, an innovative outlet for sharing student research work in K-12 classrooms, Frontiers in Education Conference, 2008. FIE 2008. 38th Annual 2008, pp. F1A-1-F1A-6. 29. TATE, A., CHEN-BURGER, Y.-., DALTON, J., POTTER, S., RICHARDSON, D., STADER, J., WICKLER, G., BANKIER, I., WALTON, C. and WILLIAMS, P., 2010. I-Room: A Virtual Space for Intelligent Interaction. Intelligent Systems, IEEE, 25(4), pp. 62-71. 30. YANKELOVICH, N., 2012. The Current State & Future of Online Education. Wonderblog, . 31. Tate, Austin. Activity in Context – Planning to Keep Learners ‘in the Zone’ for Scenario-based Mixed-Initiative Training. MSc in e-Learning Moray House School of Education, University of Edinburgh, Edinburgh: University of Edinburgh, 2012. 32. GlassFish Server. http://glassfish.java.net/. 33. http://openwonderland.org/. Open wonderlad. 34. http://openwonderland.org/about/about-project-wonderland (accessed 2011 йил 10-may). Korolov, Maria. Business First. 2011. http://www.hypergridbusiness.com/2011/09/businesscockpit-built-on-open-wonderland/ (accessed 2012 йил 14-Sep). 35. Slott, Jordan. Project Wonderland v0.5: Working with Modules. 2009. http://openwonderland.googlecode.com/svn/www/wiki/backup/pdf/ProjectWonderlandWorkingWi thModules05.pdf. 36. Bayan Abu Shawar, Eric Atwell. “Chatbots: Are they Really Useful?” 2007. 37. Jason L, Hutchens, Micheal D. Alder. “Introducing MegaHAL.” 1998. 38. Joyce Chai, Veronika Horvath, Nicolas Nicolov, Margo Stys, Nanda Kambhatla, Wlodek Zadrozny, Prem Melville. “Natural Language Assistant: A Dialog System for Online Product Recommendation.” 2002. 39. Bayan Abu Shawar, Eric Atwell. “Chatbots: Are they Really Useful?” 2007. 40. BBC NEWS. Alice chatbot wins for third time. 2004. http://news.bbc.co.uk/1/hi/technology/3672424.stm. 41. Fritz Kunze, Franz Inc. “Pandorabots – a Common Lisp-based Software Robot Hosting System.” 2003. 42. http://www.alicebot.org/aiml.html. http://www.alicebot.org/aiml.html. 2012. (accessed 2012 йил 13-Aug). 43. Bayan Abu Shawar, Eric Atwell. “Chatbots: Are they Really Useful?” 2007. 44. Dr. Richard Wallace, Dr. Hideto Tomabechi, Dr. Doubly Aimless. “Chatterbots Go Native: Considerations for an ecosystem fostering the development of artificial life forms in a human world.” 2003. 45. Sukhanya Kethuneni, Stephanie E. August, James Ian Vales. Personal Healthcare Assistant/Companion in Virtual World. Department of Electrical Engineering and Computer Science, Los Angeles: AAAI Fall Symposium, 2007. 46. Wallace, Dr. Richard S. A. L. I. C. E. Artificial Intelligence Foundation. 2001. http://www.alicebot.org/documentation/gallery/ (accessed 2012 йил 14-07). 47. Freese, Eric. Enhancing AIML Bots using Semantic Web Technologies. 2007. http://conferences.idealliance.org/extreme/html/2007/Freese01/EML2007Freese01.html (accessed 2012 йил 15-08). 48. Hiroshi Dohi, Mitsuru Ishizuka. A Life-Like Agent Interface System with Second Life Avatars on the OpenSimulator Server. Information and Communication Engineering, Graduate School of Information Science and Technology, University of Tokyo, Bunkyo-ku: Springer-Verlag Berlin Heidelberg, 2009. 49. Restless, Missy. Pandorabots Can Now Query Wolfram Alpha. 2011. http://pandorabot.blogspot.co.uk/2011/11/pandorabots-can-now-query-wolfram-alpha.html (accessed 2012 йил 15-08). 50. Sebastian Dietzold, Jörg Unbehauen , and Sören Auer. Universität Leipzig, Department of Computer Science, ESWC'08 Proceedings of the 5th European semantic web conference on The semantic web: research and applications, 2008. 51. Doubly Aimless, Seiji Umatani. A Tutorial For Adding Knowledge to Your Robot. 2004. http://pandorabots.com/botmaster/en/~16a38deb17188981daf6931~/tutorial (accessed 2012 йил 14-08). 52. Josmas. github.com. 2011. https://github.com/josmas/core-npc (accessed 2012 йил 12-Sep). 53. McGonigal, Jane. Gaming can make a better world: Jane McGonigal on TED.com. 2010 йил 17 -March. http://blog.ted.com/2010/03/17/gaming_can_make/ (accessed 2012 йил 12-09). 54. MMOHut. The Top Most Popular Free MMORPGs. 2010. http://mmohuts.com/editorials/mostpopular-free-mmorpgs (accessed 2012 йил 12-08).
PAGE 116 OF 120
NOTTINGHAM TRENT UNIVERSITY
RESEARCH PROJECT
N0235871
! 55. www.ntu.ac.uk. Clifton campus 3D map. 2012 йил 10-July. http://www.ntu.ac.uk/map_files/8720.pdf (accessed 2012 йил 12-Sep). 56. bigelow. Process. 2012. http://www.bigelow.ch/Process/Process.aspx (accessed 2012 йил 12Sep). 57. en.wikipedia.org. Virtual Network Computing. 2011. http://en.wikipedia.org/wiki/Virtual_Network_Computing (accessed 2012 йил 12-Sep). 58. Juan L. Font, Daniel Cascado, José L. Sevillano, Fernando Díaz del Río, Gabriel Jiménez,. Network traffic analysis and evaluation of a multi-user virtual environment, Simulation Modelling Practice and Theory, . Department of Computer Technology and Architecture, University of Seville, Seville, Spain, sciencedirect, 2012. 59. Nabil Mohammed, Ali Munassar A, Govardhan. A Comparison Between Five Models Of Software Engineering. Computer Science & Engineering, Jawahrlal Nehru Technological University , Hyderabad: IJCSI International Journal of Computer Science Issues, 2010. 60. psdgraphics. World map background. 2009. http://www.psdgraphics.com/backgrounds/worldmap-background/ (accessed 2012 йил 12-08). 61. wikipedia. Iterative and incremental development. 2006 йил 13-10. http://en.wikipedia.org/wiki/Iterative_and_incremental_development (accessed 2012 йил 28-08). 62. en.wikipedia.org. 2012. http://en.wikipedia.org/wiki/Anaphora_(linguistics) (accessed 2012 йил 13-Sep). 63. —. Ellipsis (linguistics). 2012. http://en.wikipedia.org/wiki/Elliptical_construction (accessed 2012 йил 13-Sep). 64. Smith, James. “IQABOT: A Chatbot-Based Interactive.” Computer Science, 2010. 65. Jindal, Rahul. Implementing a Natural Language Conversational Interface for Indian Language Computing. Department of Computer Science and Engineering Punjab Engineering College, Chandigarh: Infosys Technologies, Mohali, 2004. 66. Andreas Schmeil, Michael Steinbusch, Béatrice Hasler. A Refined Workflow for Designing Virtual Worlds for Collaborative Learning. Ieeexplore, 2010. 67. Hartley, Dr Joanne. Anycity Ambulance Patient Transfer Service . MSc Real Time Computing Applications, Nottingham Trent University, ducati.doc.ntu.ac.uk, 2011. 68. Finnigan, Douglas. Wonderland Development . 2010. http://openwonderland.googlecode.com/svn/www/wiki/beginner/Wonderland_Tutorial_01.pdf (accessed 2012 йил 10-Sep). 69. www.youtube.com. Building a house on Sketchup 8. 2011. http://www.youtube.com/watch?v=ZYp_Yz7T6k&feature=related (accessed 2012 йил 10-Sep). 70. Kaplan, Jonathan. DownloadBuildSource05 . 2012 йил 13-01. http://code.google.com/p/openwonderland/wiki/DownloadBuildSource05 (accessed 2012 йил 10-05). 71. Open Wonderland. Open Wonderland FAQ. 2012. http://openwonderland.org/about/faq (accessed 2012 йил 02-09). 72. aitools.org. Downloads Program_D. 2007. http://aitools.org/Downloads#Program_D (accessed 2012 йил 13-Jun). 73. cocoanutstech. Charliebot Bundle. 2004. http://www.cocoanutstech.com/publishing/pageWithName/DownloadCharlie/ (accessed 2012 йил 13-Sep). 74. csail.mit. projects.csail.mit.edu. 2012. http://projects.csail.mit.edu/jwi/ (accessed 2012 йил 13Sep). 75. inf.ed.ac.uk. Introduction to Java Programming: 2011-2012. 2010 . http://www.inf.ed.ac.uk/teaching/courses/ijp/2010_2011/ijp-assignment_1-instructions.pdf (accessed 2012 йил 11-May). 76. Princeton. wordnet. 2012. http://wordnet.princeton.edu/ (accessed 2012 йил 13-Sep). 77. www.alicebot.org. www.alicebot.org. 2012. http://www.alicebot.org/bios/richardwallace.html (accessed 2012 йил 12-07). 78. www.wiki.ed.ac.uk. First Assignment. 2011. https://www.wiki.ed.ac.uk/display/mscijp/First+Assignment (accessed 2012 йил 13-Sep). 79. code.google.com. Open Wonderland Modules. 2010. http://code.google.com/p/openwonderland/source/browse/trunk/modules/tools/textchat/src/classes/org/jdesktop/wonderland/modules/textchat/client/TextChatPanelTabbedPane.ja va?r=4803 (accessed 2012 йил 14-June). 80. files.aitools.org. Program D API. 2007. http://files.aitools.org/programd/docs/api/ (accessed 2012 йил 18-June). 81. java.net. Source code browse. 2011. http://java.net/projects/wonderland/sources/svn/show/trunk/www/wiki/modules?rev=4378 (accessed 2012 йил 12-June). 82. javadoc.openwonderland.org. Open Wonderland. 2012. http://javadoc.openwonderland.org/index.html?overview-summary.html (accessed 2012 йил 12AUG). 83. Johnson, Deron. Wonderland Swing Developer's Guide. 2009 йил 13-Oct.
PAGE 117 OF 120
NOTTINGHAM TRENT UNIVERSITY
RESEARCH PROJECT
N0235871
! https://docs.google.com/document/pub?id=19HnaRiFJV5NgD7xpR4qF4ZXNPElkBHVjEhhF7fN noZA (accessed 2012 йил 15-Aug). 84. josmas . 2011. https://github.com/josmas/open_wonderland_empty_module (accessed 2012 йил 03-09). 85. Slott, Jordan. Project Wonderland v0.5: Creating a simple shape (Part 1). 2009. http://openwonderland.googlecode.com/svn/www/wiki/backup/pdf/ProjectWonderlandDevelopin gNewCell05Part1.pdf (accessed 2012). 86. Bush, Noel. Explanation via implementation description: Graphmaster. 2011. http://www.alicebot.org/TR/2011/ (accessed 2012 йил 14-Aug). 87. files.aitools.org. Program D API. 2007. http://files.aitools.org/programd/docs/api/ (accessed 2012 йил 18-June). 88. Wallace, Dr. Richard. “Integrating Pandorabots with Third Party Applications.” Third-Party: IMified. 2012. alicebot.org/documentation/ThirdParty.doc (accessed 2012 йил 29-Aug). 89. www.pandorabots.com. Pandorabots Frequently Asked Questions. 2012. 90. http://www.pandorabots.com/botmaster/en/faq (accessed 2012 йил 26-Aug). 91. www.wowguru.com. Bot Service. 2012. http://www.wowguru.com/bot-service.php (accessed 2012 йил 25-Aug). 92. blogs.openwonderland.org. Tooltips in Wonderland. 2010. http://blogs.openwonderland.org/2010/01/25/tooltips-in-wonderland/ (accessed 2012 йил 1Sep). 93. code.google.com. Open Wonderland Modules. 2010. http://code.google.com/p/openwonderland/source/browse/trunk/modules/tools/textchat/src/classes/org/jdesktop/wonderland/modules/textchat/client/TextChatPanelTabbedPane.ja va?r=4803 (accessed 2012 йил 14-June). 94. “pandorabot-client.” code.google.com. 2012. http://code.google.com/p/pandorabot-client/ (accessed 202 йил 29-Aug). 95. Slott, Jordan. 2012. http://code.google.com/p/openwonderland/wiki/DevelopingNewCellComponent (accessed 2012 йил 30-Aug). 96. Wallace, Dr. Richard S. alicebot.org. 2012. alicebot.org/documentation/ThirdParty.doc (accessed 2012 йил 05-08). 97. www.pandorabots.com. www.pandorabots.com. 2012. http://www.pandorabots.com/botmaster/en/home (accessed 2012). 98. en.wikipedia.org. MT Framework. 2010 йил 23-04. http://en.wikipedia.org/wiki/MT_Framework (accessed 2012 йил 03-09). 99. Johnson, Deron. Wonderland Swing Developer's Guide. 2009 йил 13-Oct. https://docs.google.com/document/pub?id=19HnaRiFJV5NgD7xpR4qF4ZXNPElkBHVjEhhF7fN noZA (accessed 2012 йил 15-Aug). 100. josmas . 2011. https://github.com/josmas/open_wonderland_empty_module (accessed 2012 йил 03-09). 101. Tags, CallMom AIML. aiml-en-us-pandorabots-callmom. 2012. http://code.google.com/p/aimlen-us-pandorabots-callmom/ (accessed 2012 йил 06-08). 102. wikipedia.org . 2008 йил 23-06. http://en.wikipedia.org/wiki/Stephen_Wolfram (accessed 2012 йил 06-08). 103. wolframalpha.com. wolframalpha.com. 2011. 104. http://products.wolframalpha.com/docs/WolframAlpha-API-Reference.pdf (accessed 2012 йил 06-08). 105. Yankelovich, Nicole. Using SketchUp to Create Models for Wonderland. 2012 йил 30-August. http://blogs.openwonderland.org/ (accessed 2012 йил 10-Sep). 106. Joe. Road. 2011. http://sketchup.google.com/3dwarehouse/details?mid=e9a1827d0a806e5192f48552725bb4db& prevstart=0 (accessed 2012 йил 15-Sep). 107. Marurb. Oak tree . 2007. http://sketchup.google.com/3dwarehouse/details?mid=ec65371d2b194af0f04cc2dc2aedea38&p revstart=12 (accessed 2012 йил 13-Sep). 108. Nigel. Grass Floor - 8x8m Square. 2009. http://sketchup.google.com/3dwarehouse/details?mid=1545f0263600389449a2fcb68a10413&ct =mdrm (accessed 2012). 109. sketchup. Sheffield Bicycle Stands. 2011. http://sketchup.google.com/3dwarehouse/details?mid=f4b566087894cb08c588115416f3a223&p revstart=0 (accessed 2012 йил 15-Sep). 110. —. Making Walls and Floors. 2010. http://sketchup-tutor.blogspot.co.uk/2010/01/making-wallsand-floors.html (accessed 2012 йил 10-Sep). 111. Yankelovich, Nicole. 2011. http://faithhold.dyndns.org:8080/JSPWiki/Wiki.jsp?page=Building%20an%20Open%20Wonderla nd%20World%20From%20Scratch (accessed 2012 йил 15-Sep).
PAGE 118 OF 120
NOTTINGHAM TRENT UNIVERSITY
RESEARCH PROJECT
N0235871
! 112. —. Using SketchUp to Create Models for Wonderland. 2012 йил 30-August. http://blogs.openwonderland.org/ (accessed 2012 йил 10-Sep). 113. Restless, Missy. Pandorabots Can Now Query Wolfram Alpha. 2011. http://pandorabot.blogspot.co.uk/2011/11/pandorabots-can-now-query-wolfram-alpha.html (accessed 2012 йил 16-Sep). 114. Steven, House. “Education in Multi-User Virtual Environments.” 2007.
! ! ! !
! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! PAGE 119 OF 120
NOTTINGHAM TRENT UNIVERSITY
RESEARCH PROJECT
N0235871
! ! 9.0 APPENDIX
! ! A B C D E F G H I J K L M N
PROJECT PLAN---------------------------------------------------------------1 IMPLEMENTATION PLAN--------------------------------------------------2 IMPLEMENTATION PLAN-1------------------------------------------------3 IMPLEMENTATION PLAN-2------------------------------------------------4 IMPLEMENTATION PLAN-3------------------------------------------------5 CHATBOT COMPONENT (CLIENT CLASS)---------------------------6 CHATBOT COMPONENT FACTORY (CLIENT CLASS)-----------12 CHATBOT COMPONENT CLIENT & SERVER STATE------------13 CHATBOT COMPONENT MO (SERVER CLASS)------------------16 CHATBOT COMPONENT PROPERTY (CLIENT CLASS)--------18 EARLY ATTEMPT OF JAVA BASED -----------------------------------21 EVALUATION QUESTIONS-----------------------------------------------22 PROJECT PLANNING TASKS AND MILESTONES-----------------32 GNTT CHART------------------------------------------------------------------37!
PAGE 120 OF 120
NOTTINGHAM TRENT UNIVERSITY
RESEARCH PROJECT
N0235871
! A PROJECT PLAN
(APPENDIX)!
!
!
! ! ! PAGE 1 OF 37
!
NOTTINGHAM TRENT UNIVERSITY
RESEARCH PROJECT
N0235871
! ! B
IMPLEMENTATION PLAN
PAGE 2 OF 37
!
(APPENDIX )
NOTTINGHAM TRENT UNIVERSITY
RESEARCH PROJECT
N0235871
! C IMPLEMENTATION PLAN-1
PAGE 3 OF 37
!
(APPENDIX )
NOTTINGHAM TRENT UNIVERSITY
RESEARCH PROJECT
N0235871
! D IMPLEMENTATION PLAN-2
(APPENDIX )
!
! ! ! ! ! PAGE 4 OF 37
!
NOTTINGHAM TRENT UNIVERSITY
RESEARCH PROJECT
N0235871
! E IMPLEMENTATION PLAN-3
(APPENDIX )
! !
!
! ! ! ! ! ! ! ! PAGE 5 OF 37
!
NOTTINGHAM TRENT UNIVERSITY
RESEARCH PROJECT
N0235871
! ! ! F
CHATBOT COMPONENT (CLIENT CLASS)
(APPENDIX )
!
!
! PAGE 6 OF 37
!
NOTTINGHAM TRENT UNIVERSITY
RESEARCH PROJECT
N0235871
!
! PAGE 7 OF 37
!
NOTTINGHAM TRENT UNIVERSITY
RESEARCH PROJECT
N0235871
!
! PAGE 8 OF 37
!
NOTTINGHAM TRENT UNIVERSITY
RESEARCH PROJECT
N0235871
!
!
! PAGE 9 OF 37
!
NOTTINGHAM TRENT UNIVERSITY
RESEARCH PROJECT
N0235871
!
!
! ! ! ! ! ! ! !
PAGE 10 OF 37
!
NOTTINGHAM TRENT UNIVERSITY
RESEARCH PROJECT
N0235871
!
!
! ! ! ! PAGE 11 OF 37
!
NOTTINGHAM TRENT UNIVERSITY
RESEARCH PROJECT
N0235871
! G CHATBOT COMPONENT FACTORY (CLIENT CLASS)
(APPENDIX )
!
!
! ! ! ! ! ! ! ! ! ! ! PAGE 12 OF 37
!
NOTTINGHAM TRENT UNIVERSITY
RESEARCH PROJECT
N0235871
! H
CHATBOT COMPONENT CLIENT & SERVER STATE (COMMON CLASS)
(APPENDIX )
!
!
! ! ! ! ! ! ! !
PAGE 13 OF 37
!
NOTTINGHAM TRENT UNIVERSITY
RESEARCH PROJECT
N0235871
!
!
! PAGE 14 OF 37
!
NOTTINGHAM TRENT UNIVERSITY
RESEARCH PROJECT
N0235871
!
!
! ! ! ! ! ! PAGE 15 OF 37
!
NOTTINGHAM TRENT UNIVERSITY
RESEARCH PROJECT
N0235871
! I CHATBOT COMPONENT MO (SERVER CLASS)
(APPENDIX )
!
!
PAGE 16 OF 37
!
NOTTINGHAM TRENT UNIVERSITY
RESEARCH PROJECT
N0235871
!
!
! ! ! ! ! ! ! PAGE 17 OF 37
!
NOTTINGHAM TRENT UNIVERSITY
RESEARCH PROJECT
N0235871
! ! J CHATBOT COMPONENT PROPERTY (CLIENT CLASS)
(APPENDIX )
! !
! PAGE 18 OF 37
!
NOTTINGHAM TRENT UNIVERSITY
RESEARCH PROJECT
N0235871
!
PAGE 19 OF 37
!
NOTTINGHAM TRENT UNIVERSITY
RESEARCH PROJECT
N0235871
!
!
! ! PAGE 20 OF 37
!
NOTTINGHAM TRENT UNIVERSITY
RESEARCH PROJECT
N0235871
! ! K EARLY ATTEMPT OF JAVA BASED EXPERIMENTATION WITH PANDORABOT
(APPENDIX )
! ! 2. In search of java based API’s for Pandorabot, It showed the way for the Author to discover a Client side Pandorabot API based on Java code sources from (code.google.com 2012), this took a starting experimentation of working with Pandorabot desktop based XML-RPC (Remote procedure call) it was able to interact with a Pandorabot, Chatbot service by Posting to, (http://www.pandorabots.com/pandora/talk-xml) from the compiler, the following Screen snapshot represents the Pandorabot Java API libraries, codes.
Figure 8.0: Java API For Code for Communicating with Pandorabot Following this early Pandorabot experimentation processes, this led the Author to gain skills by practically experimenting with XML-RPC Protocols, the Author had a belief that these experimentations would able to work on Open wonderland MUVE and Author had started to work on the open wonderland module. As the Pandorabot integration is based on online AIML interpreter version known as Program-Z it is explained in the background chapter (Section, 2.5.1.2.b) in depth.
PAGE 21 OF 37
!
NOTTINGHAM TRENT UNIVERSITY
RESEARCH PROJECT
N0235871
! ! L
EVALUATION QUESTIONS
(APPENDIX )
!
PAGE 22 OF 37
!
NOTTINGHAM TRENT UNIVERSITY
RESEARCH PROJECT
N0235871
!
!
! ! ! !
PAGE 23 OF 37
!
NOTTINGHAM TRENT UNIVERSITY
RESEARCH PROJECT
N0235871
!
!
! ! ! ! ! ! ! PAGE 24 OF 37
!
NOTTINGHAM TRENT UNIVERSITY
RESEARCH PROJECT
N0235871
!
!
! !
! PAGE 25 OF 37
!
NOTTINGHAM TRENT UNIVERSITY
RESEARCH PROJECT
N0235871
!
!
! !
PAGE 26 OF 37
!
NOTTINGHAM TRENT UNIVERSITY
RESEARCH PROJECT
N0235871
!
!
! !
! PAGE 27 OF 37
!
NOTTINGHAM TRENT UNIVERSITY
RESEARCH PROJECT
N0235871
!
!
! !
PAGE 28 OF 37
!
NOTTINGHAM TRENT UNIVERSITY
RESEARCH PROJECT
N0235871
!
!
! ! PAGE 29 OF 37
!
!
NOTTINGHAM TRENT UNIVERSITY
RESEARCH PROJECT
N0235871
!
!
! PAGE 30 OF 37
!
NOTTINGHAM TRENT UNIVERSITY
RESEARCH PROJECT
N0235871
!
!
! !
!
! PAGE 31 OF 37
!
NOTTINGHAM TRENT UNIVERSITY
RESEARCH PROJECT
N0235871
! ! M
PROJECT PLANNING TASKS AND MILESTONES
(APPENDIX )
Brainstorming – To start of with the project I will engage in the brainstorming activities to generate new ideas and techniques that will be useful for this project development, in this part, I will make my tasks very clear and categorize its complexity by dividing the project particular parts separately to start on, as this will lead me to get organized with my tasks and to focus on the issues to get new solutions to my expected results, as these process will be highly useful and necessary to undertake this step to get good understanding and deep involvement in to the subject as this part if benefit to progress to the next phases in the development of this project. Research – This is the major step in this project development, it involves in investigating of the required hardware, software and knowledge sources tools that will contribute towards the project implementation, such as required programming language, required software development tools, required compliers, interface designing by third party tools and necessary system configurations to perform the related developments tasks also to study on the tasks which is necessary through out my entire project development stages. Learning Process – This project involves in several challenging tasks to be accomplished which includes in programming, 3d modeling and to record the evaluation by documenting procedures and techniques that will be undertaken through out the project development periods, so the required learning process includes !
Improving Java programming language, I have to improve my skills in writing the java code since to implement the Chatterbot module I have to implement it using java-programming language, as this will be integrated with open wonderland MUVE that is completely java-based framework.
!
Learning about current Trend online sociology, learning about social behaviors in online, this is a very important step in my project development as this learning process includes the search of knowledge about the current social activeness online and learn about the pros and cons, as this will lead to do better understandings in the knowledge for evaluation process in the project.
Learning to design 3D model, I have to learn Google sketchup to design a three-dimensional model of a real environment place, which is to model a university campus building. So this process is important to properly study the required tasks that will be undergone to accomplish the 3D model, which may include taking the relevant pictures about the environments and integrating it in the Google sketchup. I have to develop my expertise in the above listed topics to a skilled level, which is very necessary to proceed to the next level in this project as !
PAGE 32 OF 37
!
NOTTINGHAM TRENT UNIVERSITY
RESEARCH PROJECT
N0235871
! estimated this will take about 3 weeks to accomplish these tasks. After effectively been through this stage, which is learning process, I will obtain all the necessary hardware and software tools and by installing in to my computer to perform the development tasks. Once these above process is accomplished, I will proceed further to the next stage in the project which is design stage, I will start building a prototype java application of a Chatterbot which is focused as a main aim task in this project I will start doing this by developing a prototype of a Chatterbot with setting up a data dictionary that holds set of respond commands then I will work on the text based response and voice based response using natural language processing (NLP) tool to generate the computer voice for the particular response. Design This project involves in too development plans such as developing a Chatterbot and designing a 3d model of the university, To start with the initial steps I will use software development methodology protocol such as waterfall or spiral model to properly organize the project tasks by dividing stages, And here the complete integration plan will be designed, like initial step is setting up open wonderland, and writing java code for Chatterbot module, also by obtaining a available source code on this related working program, Designing a plan to modify an available java based code to use and develop a Chatterbot system that will able to respond to students when they interact with this robotic character and this character as a student advisor will be having an instructions such as some sort of generally asked queries base on (frequently asked questions) FAQ types of advice that can able to respond to the students by a text based respond or a voice based response as voice prompt system will be used as speech synthesis technology to prompt voice of that respond instructions. Implementation – after the design stage I will have a focused tools and recourses to start this stage. This Project stages will be programmatically approached, to successfully achieve the expected aim of the project, implementation of the Chatterbot will be accomplished in this stage, this involves in integration on open wonderland MUVE, using an available source code of this Chatterbot technology the implementation part will be to integrate Chatterbot in to the virtual world MUVE, as here it involves in modifying and writing code on both side to successfully integrate this technology. And another implementation will be to accomplish a 2d model of a Real environment building. Alpha testing - Once the development of expected goal is achieved the alpha testing will be accomplished which includes an efficient test plan details and properly examining the program faults and analyze its alternatives ides if incase encountered any faults will be done in this stage, if any unexpected program faults or problems arise then it will be brainstormed to successfully fix it. Every part will be examined in same way; after the component testing is done then the system testing will be done.
PAGE 33 OF 37
!
NOTTINGHAM TRENT UNIVERSITY
RESEARCH PROJECT
N0235871
! Beta Testing - A complete test that is a final test will be carried out in this stage. It will include in some student volunteers to interact in the MUVE virtual world and test the Chatterbot module, as this will include in getting the feed backs to improve some technologies. Launch – After successfully testing the Chatterbot and the MUVE technology it will be launched in the university server to access in public systems and can able to use this MUVE for the university open day as Chatterbot will be an virtual student advisor that can able to prompt a response for the students query requests. Dissertation – This is the documentation part will which includes in the evaluation open wonderland with second life MUVE technology mainly focusing the benefits that education industry can have from MUVE and then properly justifying the developments which I have undergone during these stages in the project development this document will include every tasks such as decisions of the chosen algorithm of the Chatterbot module before designing this system, about my decisions on developing 3d model and writing dissertation will be carried out completely during the early stage and till the final stage as it is very essential to record and express the methods which I used to accomplish the goal. Sources of Information It involves in the project development, initially is based on investigating about the necessary software tools, hardware and knowledge sources tools that will contribute towards the project implementation, such as required programming language, required software development tools, required compliers, interface designing by third party tools and necessary system configurations to perform the related developments tasks also to study on the tasks which is necessary through out my entire project development stages, initially I will start this task by searching the adequate information about my project necessary information’s as this is a challenging task which involves in finding sources about relevant developments fields which is similar to my project. The first step is looking for information about “Second life” Multi user environment technology, about its technical framework and developments, and finding out the tools used to develop this technology and the next research is on “Open wonderland” multiuser virtual world environment technology, the research about this MUVE will be done on base of similar procedure to the “Second life” MUVE technology as by comparing its every techniques that have been available in these technologies and makings a proper evaluations on these Multi user virtual environments. The Third search of knowledge will be on the Chatterbot which is a virtual character which has a set of preloaded instructions which will responds to the users on the basis of a conversations so this is a very important task in this development, as there are available technologies related to Chatterbot as a open source projects, which can be integrated by bridging this technology with open wondered in form of a Jar file module. However if any technologies are limited then I will develop a prototype of a Chatterbot to integrate to the wonderland module system. PAGE 34 OF 37
!
NOTTINGHAM TRENT UNIVERSITY
RESEARCH PROJECT
N0235871
! Project Risks Some of the important project risks I have discussed in the following chart that involves in proem, consequences and solutions to the trouble. Problem
Consequences
Trouble solutions
If the required open source code for developing Chatterbot module is not available in java
It will be a big problem and project will not be accomplished since it is required to integrate this module in open wonderland
If the information on developing 3D model is very complicated and not enough sources to accomplish Situations of computer may go down or crash
Then the project will be unsuccessful
There are projects related to Chatterbot technology written in c++ or other language and needs to rewritten this to convert it in to java code As there are lot of sources that teach this software to model 3d environment I will use it
If I have not done proper brainstorming and have got some unrealistic project goals are listed
This will really delay my progress towards the project goal and can have serious troubles in the development of this work
Some changes in the requirements, as changing Chatterbot to any other module.
It will delays the proposed project plan and can lead to poor document writing
Data corruptions Problem related to Software which are involved
It will face in the data corruptions and delay may happen to fix the issues
PAGE 35 OF 37
!
Project will be unsuccessful on time
Each time a task is done I will be uploading it to my virtual online hard disk that way this problem wont happen Initially to overcome this problem I will properly brainstorm my ideas, and execute it by separate individual tasks to perform this way I will accomplish the main required task and time-consuming task can be added to future task. It can avoidable after finding out the complexity of the development n brainstorming stage and organizing milestones of each tasks will highly help to be motivated stay focused in the development Using Drop box online hard drive space system, every information can be
NOTTINGHAM TRENT UNIVERSITY
RESEARCH PROJECT
N0235871
!
Health problem or over stress
The project will be delayed and postponed
stored and avoid the data corruptions and loss Fast work will be accomplished, in buffer time, and by making sure my heath is in good condition to avoid any problems or stress
In the above chart I have listed some of the risk that might occur during the development period of the project as the main risk is that the availability of the open source code regarding the Chatterbot to integrate in to the open wonderland MUVE, and the solution for this is, there are many Chatterbot related source code is available which is in c++, C sharp language and it needs to be changed to java language to integrate it with open wonderland technology, another risk is that the usability of the Three dimensional modeling tool such as Google Sketch up to use it when undergoing in the designing process of the virtual world model. Professional Issues This part will describe to approve awareness towards the social, legal and ethical issues of computing. This issue is not based on technology related but its ethics related concern, While developing the software technique it will be been make sure that the software application will be used in socially in reliable way. As to the further privacy concern its important to value the privacy of others like students or users. by confirming that I will protect the privacy confidentiality of every persons information who ever is involved in the development of this work. ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! PAGE 36 OF 37
!
NOTTINGHAM TRENT UNIVERSITY
RESEARCH PROJECT
N0235871
! ! ! N
GANTT CHART
(APPENDIX )
! !
PAGE 37 OF 37
!
NOTTINGHAM TRENT UNIVERSITY