digest programming brief

July 24, 2007 on 9:33 am | In Oribotics |

digest.oribotics.net

programmers brief- by matthew gardiner

Description

synopsis
To transform xml feeds into emotional states for the oribots.
Do this by gathering and storing xml data feeds, and subsequently digesting the data according to rules defined by keywords. The conceptual idea is that the oribots are feeding on information from the web. The digest program is actually ‘farming’ the information, and processing (digesting) the data into a suitable form for consumption by the oribot.

emotions
happy, sad, fear, surprise, angry, disgust, aversion, ambivalence +(more)

what is digestion?
Digestion is a process of analysing a body of text, collecting key words, and checking the emotional modifier (emo-mod) assigned to the keyword. The highest emo-mod value takes precedence and becomes the emotion for the article. To allow for a large peak in a single emo-mod value, there is a peak emotional response followed by an average response.

how often does digestion occur?
Digestion occurs at the soonest possible time after the collection of a new article for digestion from a feed. All feeds are periodically checked for new elements. The feed rate can be calculated over a period of time.

how are the emo-mods defined?
All keywords are assigned an emotion and a value modifier. Here is a comma separated list of examples: terrorist = fear + 10, baby = happy + 20, technology = envy + 3.

can emo-mods be changed?
Yes, the user interface on oribotics.net allows users to modify the emotion and modifier value for any keyword.

DATABASE TABLES AND SCHEMAS

SCHEMAS
feeds - keep track of feeds: urls of feed, access times.
articles- table to download article into
words- dictionary of words assigned to emotions
emotions - emotions and values
bots - links bots to a SINGLE feed, and its emotion

FEEDS SCHEMA
 feedID(int)
 title (text)
 feedtype(text) - flavor of feed, atom, rss, rss2 etc…
 url (text)
 last access(date)
 frequency to access (in minutes) (int)
ARTICLES SCHEMA
 articleID (int) - system id for article
 feedID(int)
 title (text)
 url (text)
 shortbody(text)
 fullbody(text)
 keywords (text)
 peak-emo(emoID)
 average-emo (emoID)
 datetime (date)
WORDS SCHEMA
 wordID(int)
 word(text)
 emoID(text)
 modifier (int)
EMOTION SCHEMA
 emoID(int)
 emotion(text)
 modifiervalue(int)
BOTS SCHEMA
 botID(int)
 feedID(int)
 emoID(int)
 
LOG
 feedID(int)
 emoID(int)
 emoValue
 articleID(int)
 timestamp (date time YYYY-MM-DD HH:MM:SS)
 

PROGRAM FUNCTIONS

Automated functions (php code)

1. harvester (called by cron job)
Read all feeds periodically, check for, and collect new articles, then pass new articles to digester. The shortbody is collected directly from the feed, and fullbody is collected from the article url in the feed.

2. digester (called by harvester or cron job)
Deals with new articles.
Read article body. Extract keywords, run emotional scan on keywords, and determine peak emotional state, and average emotional state. Add record of the state in the log.

User interactive functions (php & flash code)

user interaction
users can do the following:
0. view current emo-state for each robot
1. view the most recent digest that created the emo-state
2. see the list of keywords and emo-mods
3. click on a keyword to alter the emo-mod for words
4. add new words - make words keywords
5. add new feeds + including their personal blogs
6. alter the emotional associations for words and

user functions:
edit pages for the following:
sources -> feeds
words -> emotional associations > modifer values

outputs
when queried by a bot request, outputs an xml file of current states

outputs
history of emotional output states

ADDITIONAL STUFF.

interesting reading
http://www.vepsy.com/communication/book4/4_21BOUCOU.PDF

good ideas
first taste peak - followed by deviation average tone of article
power - synchronisation - non chaotic - rms - as a measure of information
biorhythm - emotional physical intellectual

No Comments yet

TrackBack URI

Sorry, the comment form is closed at this time.

Entries and comments feeds. Valid XHTML and CSS. ^Top^