Programmers Stack Exchange is a question and answer site for professional programmers interested in conceptual questions about software development. Join them; it only takes a minute:

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

I'm going to work on some project that would do a user-action recognition based on what he/she does in the system.

As far as I understand there are two main parts here:

Intercept the user actions (say http traffic in web/ui interaction in thick-client) analysis of user intentions.

While the first part is rather technical and therefor easy to implement, the second one is AI related and can be academic.

So I was wondering whether someone knows some third-parties/academic projects that would implement the 'action-recognition' stuff?

share|improve this question
Some more detail of what you mean by "action-recognition stuff" might help. An example maybe? I know of some things (albeit, in the .NET world - search for but that might not help depending on what you're trying to do. – Steve Evers May 28 '12 at 17:17
Thanks for the comment. The example can be "user uses 'search' capability of the system in order to find, say, apples". This is an action that I'm planning to recognize. The recognition can be based on series of web http requests in the web world. I would like to try to recognize both the action (search) and a subject to-be searched (apple). I can't really do the straight parsing since I don't know in advance what the request will look like (say, in GWT its a one kind of requests, in JSF something else, etc.) I thought about supervised learning, but I'm looking for aome auxiliary material :) – Mark Bramnik May 28 '12 at 18:54

I think you're after CEP (Complex Event Processing), where you look at distinct events and infer something more specific. Your example is a bit trivial but, the two events of going to a search screen and then entering apples would mean that your user wanted to find some apples.

The Complex Event Processing page on Wikipedia gives a number of links to academic research, if you're looking for applications of CEP in the real work, I've come across it looking into Behavioural Analysis in relation to Fraud detection.

share|improve this answer

I might be far off, but to me that looks more like the recognition of critical paths in a decision tree, as it's pretty much how you could represent the interactions of a user with a system: a long chain of decisions, which are represented as concrete actions.

So I'd recommend to read on expert systems, graph theory, and predictions systems.

Then if you need to make predictions of more abstract actions, like the evaluation of search habits, that gets a bit more complex.

share|improve this answer

It sounds like the "action-recognition" term you are looking for is 'web analytics'.

This can be a custom framework that you design and implement yourself, or - if advanced graphing and charting capabilities are required in to report usage data, you might want to check out these frameworks:

Google Analytics

Omniture - Site Catalyst

share|improve this answer

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.