A SaaS (Software as Service) Delivery Platform ( www.iKenStudio.com )
An online development environment to develop web-based enterprise applications, decision support systems, knowledge-based websites and BI (Business Intelligence) applications backed by expert system, case-based reasoning and Hybrid AI technologies.
iKen Studio Layered Architecture iKen Studio SQL-XML Mapping and Transformation Engine Variable Database Mapping Interface SQL Builder & Rule Filter Dynamic Query Interface Access Rights Management Data Access layer Rule-based Expert System Engine Case-Based Reasoning Engine Rule Manager CBR Configuration Interface Intelligent Systems Layer Session Management Domain Vocabulary Interfaces Common Session Data (XML) Session layer Report Designer Form Designer XML-HTML Transformation Engine Presentation Transformation Layer File Upload Database Database Database Client Browser Client Browser Client Browser Web Services API HTTP Access Other business Systems
System Development Interfaces Data Services XML<-> SQL Transformation System Interfaces Domain Vocabulary Intelligent Techniques (Core Engines) Presentation Services (Input/Output)
Core Engines Expert System Engine (Rule Engine)
Web-based, XML-based Expert Systems can easily be developed and deployed.
Easy to use and understand IF...THEN...ELSE rule format
Supports rules for multiple expert systems, which are logically separated into application groups.
Rules are stored in intermediate format at run time rather than interpreted each time. Rules are checked for various syntax and semantic errors. Rule Manager facilitates interactive environment to manage the rules.
Backward as well as forward reasoning
Various data types: number, real, text, date, list, dynamic list, trend, matrix, boolean, document, URL, etc
Various mathematical, string, list, date, matrix, trend, graph, database, session management and report functions.
Special operators and functions like INCLUDE, IS BETTER THAN, SCORE_OF, PROFILE_OF etc. to reduce number of explicit rules eg : expressions like :
Customer.Education IS BETTER THAN Diploma ,
STATUS_OF Customer.Age IS Young
Customer.Income Documents INCLUDE [PAN,Form16] etc .
User defined functions can be created to be invoked in expert system rules
Supports many databases simultaneously, no explicit database programming is required: like opening database connections, executing SQL command, opening record-sets, populating data etc. The database interfaces manage extraction, mapping and transformation of data. The data in response to SQL queries is populated into session data and vise-a-versa at run time.
System can run in Debug mode to dump the data and know process status at run-time.
An expert system can be invoked through URL and Web services
System Interfaces like Form Designer and Report Designers are used to create HTML input templates and sessions reports to enter, validate data and get formatted output in HTML format.
Existing C/C++ APIs can be used by wrapping them in DLL files
Expert system engine can work as host system for accessing and controlling case-based reasoning systems or to develop hybrid systems
Domain independent Web-based CBR systems can be developed. The engine is tightly connected to expert system engine. Expert system engine can act as host. Expert system can be used to enter query or problem case (through Q&A or Forms). Run-time format of case format is XML, cases are stored in the database/s.
No restructuring of database contents, existing contents can easily used and converted to cases on the fly (by mapping SQL-XML)
Supports for all phases (Retrieve, Reuse, Revise and Retain) of CBR
Uses combination of rule-base, SQL and nearest neighbour method for retrieval.
Powerful rule-based engine for adaptation of cases.
It can address structural as well as conversational CBR thereby supporting wide-range of applications from intelligent help desk to complex decision support.
The engine supports taxonomy, hierarchy of CBRs and logical grouping of features.
It supports large number of similarity functions and custom functions can be added.
It can be configured to set similarities from databases based on criteria or procedural logic (query results), also to learn and adjust similarities automatically from the past transactions or examples.
Presentation Interfaces Form and Report Designer
Create DHTML web pages for Input and Output
Support all major HTML controls, tags, fonts, colors etc
Form designer interface: used for designing and building inputs forms
Report designer interface: used for designing and building report templates. The system populates and calculates appropriate values at run-time when invoked or displayed.
Studio supports default report templates with lot of client side functionality and navigation aids
Support two basic types of reports:
Session Report : to display session data at run-time
Query Report : to display dataset in multiple rows e.g. result of SQL query
Domain Vocabulary Global Variables, Menus, Range Conversions and Lookup Table
It facilitates to maintain global dictionary of domain terms (parameters/variables and their descriptions)
These variables are used in various intelligent systems like in expert system, forms, reports, etc.
Supports various variable types based on usage in the system
Interface facilitates to enter detailed variable description like HTML formatting, validation criteria, WHEN NEEDED and WHEN ADDED scripts, linked intelligent systems and so on. Web pages are automatically for input type variables based on HTML formatting parameters selected.
Various data types are supported
Menu objects hold the information about various possible options (list of values) a variable can take.
Symbolic values and numeric values (including) can be converted into numeric and qualitative respectively using range-list objects. These can be used to transform values. It helps to reduce the writing of explicit rules to convert values at run-time in expert system.
Lookup table interface is used store table of values in memory at run-time instead of fetching them from database each time. Especially if taxonomy or abstract features for generalization is to be stored in memory instead fetching them each time from databases. e.g. to fetch Education Level, Education Discipline, etc. from Degree.
A SQL interface to build SQL queries interactively
Data from multiple queries can be in integrated or merged from different databases
Data retrieved from queries further filtered using logical rules involving complex criteria making it database independent. Large number of date, string, trend analysis, list, math functions available to be included in rule filter
It allows to set different options to roles. Each role includes access to system interfaces, applications, databases and variable groups.
An user can have multiple roles
System Interfaces System Parameters & Configuration
Various project level parameters can be set which are applicable to all applications in that project
Applications and linked variable groups can be defined with some applications can be loaded as default applications when iKen Studio starts
These include: parameters for connecting to SMTP server, use navigation button names, virtual directory path, script files path, default formats, max number of rules, max number of tokens in expression etc.
access iKen Studio components, applications and live sessions
configure iKen Studio projects at run-time
synchronize data transfer between external applications and iKen Studio application databases
All of the objects of application such as expert systems, CBRs, rule-filters, user-defined functions, session, databases are accessed using unique ID. Which helps to implement business logic in iKen Studio and executing functionality just using object ID and data in XML format and limited number of webs services.
Supports XML and text data transfers
External parameters can be mapped to iKen Studio application variables to facilitate data exchange between external applications and iKen Studio applications
iKen Studio App and Web Services iKen Studio Core Framework Project: Objects (External App Params<->iKen Studio App Var Mapping) Expert Systems, CBRs, UDFS, Session, Rule Filters, Databases… iKen Studio Web Services (accessing objects through their IDs) Models & Config.Files Databases Databases Databases External App External App External App
Accessing iKen Studio and Apps Interactive Mode: iKen Studio based applications can be invoked through URL and run interactively. It can embedded in other applications through iFrame. e.g. http://www.ikenstudio.com/Anil/Main.aspx?Goal=Transaction.Scan&Action=RunSystem Through URL iKen Studio based applications can be invoked through URL. Initial parameters can be passed to the application using URL get method e.g. http:// www.ikenstudio.com/Anil/Main.aspx?Goal = Transaction.Scan&Action = RunUsingURL&Trans_ID =15 Web Services: Applications can be accessed and run through Web Services e.g. APIs Applications can also be invoked by including iKen Studio DLL with live instances.
Accessing Web Services: Adaptive Framework using iKen Studio <string><Case No="1"><CD><N>MovieMart.NextPushCID_HID</N><V> [22298:212,23424:212,24696:212,24988:212,24348:212,24362:140,24157:212,22490:212,23399:212,24685:212,22027:212,23583:212,24008:212,24477:212,24943:212,22083:140,22233:140,22501:140,24582:140,24691:212]</V></CD><CD><N>SystemInterface.Solution_Matching</N><V>|64.29 64.29 64.29 64.29 59.04 56.78 56.38 55.6 55.2 55.2 54.83 54.83 54.83 54.83 54.83 54.8 54.8 54.8 54.8 54.6 54.3 53.85 53.55 53.08 53.08 53.08 52.55 52.33 52.33 |</V></CD></Case></string> http://www.iKenStudio.com /iKenStudio.asmx/UDF_ExecuteUsingList?p_FunctionID=MovieMart.GenerateGlobalUserProfile&p_ArgumentList=1 http://www.iKenStudio.com /iKenStudio.asmx/UDF_ExecuteUsingList?p_FunctionID=MovieMart.GenerateUserProfile&p_ArgumentList=[1,212] Generating Global User Profile Generating Local User Profile http://www.iKenStudio.com / iKenStudio.asmx / UDF_ExecuteUsingList ? P_FunctionID =MovieMart.AddTransaction& p_ArgumentList =[1,21925,212,B,Sanjay%20Dutt,KY] seq. [U_ID,C_ID,H_ID,D_Type,Keyword,Key_Type] Notifying download iKen Studio Web Services Web Service UDF_ExecuteWithList List of function parameters and values Name of Internal UDF defined in iKen Studio List of values passed to UDF MovieMart.AddTransaction returns status OK:1 returns status OK:1 returns status OK:1 WebService ExpertSystem_RunWithData p_GoalVariable =MovieMart.iPushGoal p_xmlData =<Case><CD><N>MovieMart.Action</N><V>NextPush</V></CD><CD><N>MovieMart.User_ID</N><V>1</V></CD></Case> p_OutputVariableList =[MovieMart.NextPushCID_HID,SystemInterface.Solution_Matching] Calculating Best Recommended
Case studies: demonstrating iKen Studio capabilities and integration models WAP Contents, Meta-Content, Business and User Rules and Knowledge iKen Studio Intelligence Middleware (Adaptive Framework: Personalization and Recommendation) WAP Server Mobile VAS iKen Studio as Intelligence Middleware for Mobile VAS WAP Customer DB iKen Studio (SaaS) Intelligence and Decision Support Back-end (AI-based Rating Model) WAP Server Online Credit Rating On Mobile iKen Studio as AI-end for Intelligence and Credit Rating Customer DB and Conversion iKen Studio (SaaS) Rule-based Engine (Decision rules and reporting specific to Investor, Servicer and Insurer) Mortgage Financial Portal (Intelligent Conversion and Reporting) iKen Studio as a one of the component of overall mortgage portal
Accessing iKen Studio e.g. iKen Studio App embedded in portal
Comparing with other Expert System Tools/Shells Other expert system tools iKen Studio These provides standard expert system functionality. For other extensions, client has to customize explicitly or pay for additional add-ons to the software vendor Lot of extensions and customizations done to address specific kind of applications like personalization, recommendation, intelligent exams, surveys etc. Concentrate on expert system development interfaces rather than components to generate reports, forms, XML support etc. It is complete high productive development environment which includes form generators, report designers, SQL builder etc. These tools are not offered in SaaS mode. A completely web-based expert system shell environment to be offered in SaaS model. Most of the tools have desktop development and web-based deployment. Which makes development environment distributed. Completely web-based development framework, brings advantages of web-based systems such as centralised system development and deployment, scalability, access from anywhere etc.
Comparing with other CBR Tools/Shells Similarities has to be defined explicitly. Has built-in mechanism for learning similarities from the transactions etc. Other CBR tools iKen Studio Case management and indexing mechanism is explicitly part of CBR shell Coupled with databases, it relies on database indexing mechanism (for retrieval) which is powerful instead of having explicitly implemented in CBR tool. May have to define case structure and cases explicitly. Because of SQL-XML mapping and transforming engine, existing database contents are treated as cases without explicit case presentations etc. Most of the CBR shells are limited to retrieval (and reuse) phase only. Applications requiring all R-4 (Retrieve, Reuse, Revise, Retain) cycles can be developed. Only CBR engine (expert system is not part of it) which sometimes limits type of applications that can be developed and addressed CBR engine is integrated with expert system engine, thereby facilitating development of hybrid CBR systems supported by expert system
Effective and powerful combination of human intelligence (business rules and logic through rule-based expert systems and filters) and domain knowledge-aided machine intelligence (content filtering, intelligent matching, knowledge-based clustering and collaborative filtering using CBR technology)
On-the-fly intelligence using lazy learning
Self-learning and adaptive intelligence
Intelligence can be programmed, customized and configured. It can integrated into existing operational systems using web services or APIs.
No need to restructure existing database for BI applications
Can be programmed to support micro-level intelligence (what an individual user or customer does, likes etc.) and macro-level intelligence (what specific group of users or customers do, like etc.)
Can address classification, clustering, associations and sequence problems effectively
KM and decision support components can be implemented
Data retrieval, mapping and transformation (on-the-fly) Domain Knowledge, Rule-Filters, Rules ( business, decision support and customization ) and Models BI Applications Database Database Database Client Browser Client Browser Client Browser