This forum has been archived. All content is frozen. Please use KDE Discuss instead.

Create K.I.I.M

50

Votes
57
7
Tags: pim, app request pim, app request pim, app request
(comma "," separated)
Lukas
Registered Member
Posts
427
Karma
0

Re: [app request] Create K.I.I.M

Wed Jul 01, 2009 10:08 pm
What about creating a simple KIIM testing version in some scripting or even pseudocode language. To take a look at models itself, take a test how would this work and might be find and eliminate possible structural leaks?

Its just a brainstorm, so what about this?
The User
KDE Developer
Posts
647
Karma
0
OS

Re: [app request] Create K.I.I.M

Wed Jul 01, 2009 10:53 pm
There should be a seperation between layer 2 and layer 3 to support things like speech-detection or the usage of a webcam.

Code: Select all
GuiKiim
{
  Use LineEdit
}


Code: Select all
SpeechAnalyzer
{
  analyze(SpeechStream);    // Divide input stream
  dispatch(SpeechSentence); // Analyze single sentence, sends Structure to DataBase
}


Code: Select all
TextAnalyzer
{
  analyze(String); // Sends Structure to DataBase
}


SpeechAnalyzer and TextAnalyzer don't have a common interface because they can't be used in the same way: You can't use a LineEdit with a SpeechAnalyzer.

Code: Select all
CLIAnalyzer  // Less complex structure - not real language
{
  analyze(String); // Sends Structure to DataBase
  // for example: delete emails -from Bob --condition "older 1year"
}


Code: Select all
Structure
-Predicate
-Negated?
-List<Object>


Code: Select all
Object
-Primary Object
-Condition
-Other keyword-like prepositions (from, to...)
-List<Keyword>


Code: Select all
DataBase
{
  searchItem(Structure)
  matchingcache // For optimization
}


Code: Select all
DataSet
{
  executionType()
  int matching(Structure) // return weight
}


Code: Select all
MatchRule // used by DataSet::matching, maybe an interface, but it should be static for now
{
  // format for rules necessary
  match(Structure);
  // use DataBase::matchingcache
}


Code: Select all
ExecutionPluginInterface
{
  Factory-Pattern
  execute(DataSet)  // Returns a result displayed by the frontend, an error or information like "not applicable", then another matching DataSet should be used
  // it can also directly communicate with the user (dialogs...)
}


"Structure" would be the glue between layer 2 and layer 3, when we find a good "Structure" the model works.
User avatar
Dante Ashton
Registered Member
Posts
525
Karma
3
OS

Re: [app request] Create K.I.I.M

Fri Jul 03, 2009 9:55 pm
I am currently in the process of researching other FOSS tech that could be used in Kiim's construction. Bear with me here.
User avatar
Dante Ashton
Registered Member
Posts
525
Karma
3
OS

Re: [app request] Create K.I.I.M

Sat Jul 04, 2009 9:50 pm
Just been talking with one Stephen Reed; interesting chap, runs Texai (open source)

http://www.texai.org/blog/


Which, according to him, could basically do everything we require in terms of natural langauge understanding, it just aint finished yet (it's only him doing it)

(I accidently posted this in another brainstorm idea, silly me!)


Dante Ashton, in the KDE Community since 2008-Nov.
-Artificial Intelligence Specialist.
User avatar
Dante Ashton
Registered Member
Posts
525
Karma
3
OS

Re: [app request] Create K.I.I.M

Sun Jul 05, 2009 12:34 pm
(NOTICE! This is a long list, look through any that catch your fancy.)

Projects found on Sourceforge;

EVE:
Eve is a AI project written in python that takes commands verbally or textually to control the computer and eveyday functions.

http://sourceforge.net/projects/eve1/
--------------------------------

TextMarker;
The TextMarker system is a rule-based tool for information extraction and text processing tasks. The comprehensible rule language can be easily extended and supports several scripting functionalities. TextMarker uses DLTK and UIMA.

http://sourceforge.net/projects/textmarker/

-------------------------------
Personal Assistant Natalie

Natalie is a free Personal Assistant who does your bidding from the Windows Run Box. Features Research Assistant Mode, Natural Language Interface, and extreme Extensibility. Compare to IWantSandy. Looking for Help / Staff!
(Note: Look at the screenshot!)

http://sourceforge.net/projects/natalie/

--------------------------------
Project MARY:

Mary is a computerized therapist with english sentence parsing (determines the subject, verb and direct object of a sentence ~95% when all rules are in place), keyword recognition, user accounts with password protection and variable session lengths.

(Note; this is a modern version of ELIZA)


http://sourceforge.net/projects/project-mary/
------------------------------
AIStockBot

AIStockBot aims to become the greatest Technical and Fundamental Stock Analysis program written. Using Artificial Intelligence, it should pick stocks better than you. Includes Portfolio & Document Management Systems.

(Note: Stock bots are normally better then humans at this task)

http://sourceforge.net/projects/aistockbot/

-----------------------------
Cognitive Vision.

Main goal is to improve the cognitive vision in artificial intelligence. Camera calibration, object recognition etc. will be implemented and all results can be used by webcams or AIBO robotdog. Project is based on OpenCV and own source codes.

(Note; object recognition code can be utlized for augmented reailty)

http://sourceforge.net/projects/aibo/

------------------------------------

Text Analyzer Classifier Summarizer

TexLexAn is an open source text analyser for Linux, able to estimate the readability and reading time, to classify and summarize texts. It has some learning abilities and accepts html, doc, pdf, ppt, odt and txt documents. Written in C and Python.

http://sourceforge.net/projects/texlexan/


That's about it, the last one I find to be the most interesting.


Dante Ashton, in the KDE Community since 2008-Nov.
-Artificial Intelligence Specialist.
User avatar
Dante Ashton
Registered Member
Posts
525
Karma
3
OS

Re: [app request] Create K.I.I.M

Tue Jul 07, 2009 6:13 pm
Added to bugs.KDE as wishlist item.


Dante Ashton, in the KDE Community since 2008-Nov.
-Artificial Intelligence Specialist.
User avatar
Dante Ashton
Registered Member
Posts
525
Karma
3
OS

Re: [app request] Create K.I.I.M

Fri Jul 10, 2009 11:54 am
It seems the nepomuk-KDE guys have also been working on a quite similar problem;

http://www.mail-archive.com/nepomuk-kde ... 00167.html


Dante Ashton, in the KDE Community since 2008-Nov.
-Artificial Intelligence Specialist.
dberg918
Registered Member
Posts
16
Karma
0
OS

Re: [app request] Create K.I.I.M

Fri Jul 10, 2009 11:40 pm
Not sure if you've seen this yet, but I just saw it in my Akregator...

Simon (Speech Interaction Daemon)
http://simon-listens.org/index.php?id=122&L=1

It's on KDE-Apps here.

Last edited by dberg918 on Fri Jul 10, 2009 11:43 pm, edited 1 time in total.
User avatar
Dante Ashton
Registered Member
Posts
525
Karma
3
OS

Re: [app request] Create K.I.I.M

Fri Jul 10, 2009 11:43 pm
There appears to be an error; Content not found.

What was it?


Dante Ashton, in the KDE Community since 2008-Nov.
-Artificial Intelligence Specialist.
pano
Registered Member
Posts
58
Karma
0
OS

Re: [app request] Create K.I.I.M

Mon Jul 13, 2009 8:09 pm
@ Dante Ashton:
Here's a video of Simon in action:
http://www.youtube.com/watch?v=x_9ImaiOISs

I just can say omg, this is GREAT


pano, proud to be a member of KDE forums since 2008-Nov.
KMess!
User avatar
jmcombatt
Registered Member
Posts
19
Karma
0
OS

Re: [app request] Create K.I.I.M

Mon Jul 13, 2009 8:41 pm
Have you taken a look to Mozilla's Ubiquity project. It seems to already do a lot of natural language translations for firefox (at least in written form).
User avatar
Dante Ashton
Registered Member
Posts
525
Karma
3
OS

Re: [app request] Create K.I.I.M

Mon Jul 13, 2009 10:14 pm
I have. I'm talking about a singluar Natural Langauge interface for the entire desktop, though :P


Dante Ashton, in the KDE Community since 2008-Nov.
-Artificial Intelligence Specialist.
anoneemouse
Registered Member
Posts
123
Karma
0
OS

[app request] Create K.I.I.M

Thu Sep 10, 2009 8:08 pm
Although this is a good idea there are some things to keep in mind:

The current computer human interface means when you execute a command it executes, with this interface there will almost always be some error rate. An interface like this can be awesome in simple form for home automation projects because simple commands like switching off lights will work without an error rate. It could be frustrating trying to issue commands and they don't work or are ambiguous in some way.

I think that Lukas' idea is much more doable(especially the SQL part) and people will be able to extract better information from such an interface because it follows syntax.

You also need to consider how this system will know how to work new applications and deal with complex commands. There was a project to make natural language queries for databases and it failed. Syntax and grammar don't mix well.

The problems with such an interface seem insurmountable from a modern view of programming.

There is also the problem of verbosity. What is important to who? When should it speak and when should it shut up?

The final question I have is what problem does it solve? A "plink" sound when I get an important email is just as significant as an entire sentence, but much more unobtrusive. This interface will do everything the current KDE interface can do, just in a different way.


Bookmarks



Who is online

Registered users: Bing [Bot], gfielding, Google [Bot], Sogou [Bot]