没有任何数据可供显示
开源项目社区 | 当前位置 : |
|
www.trustie.net/open_source_projects | 主页 > 开源项目社区 > moodbs |
moodbs
|
0 | 0 | 41 |
贡献者 | 讨论 | 代码提交 |
Mood Based Navigation ShoePrototype of a novel context sensitive serviceRoland Haring
Otto Naderer
Doris Zachhuber
Please download Version 1.0.4 of Source and Installers. Other versions do not work or install properly probably ...
PaperA paper describing the project can be found here: http://moodbs.googlecode.com/svn/trunk/paper/ucui2.pdf
presentation: http://moodbs.googlecode.com/svn/trunk/praesentation/uui.ppt
That's what the prototype looks like:
The Client Application
The "Mood Wizard" is used to set the users mood:
The client is configured using an XML file. You need to set the correct Server Name/IP and the com Port to your arduino port (if you have one). Each client needs to have a unique numerical id. Otherwise the server won't accept a connection.
localhost
4711
1
3
The Server Application
Yellow lines show users navigation towards each other,
red lines indicate user navigation towards an activity.
There are currently 24 different POIs configured. The server XML configuration looks like that:
...
You need to provide a map and activities. That's all.
It might be possible, that you need to install the Microsoft Visual C++ 2008 SP1 Redistributable Package manually to run the binaries:
What it doesHere is a state transition diagram of the navigation:
General Rules:
1. Cancel brings user back to state „findUsers“ from every state except idle (and remembers declined activities and users)
2. Changing of Mood brings User always back to state „findUsers“
and here are the mood profiles for the different activities:
with
3 much
2 little
1 neutral
0 not matching
the matching is done with this algorithm:
float Mood::getMatch(Mood &other)
{
float match = 0.0f;
float cnt = 0.0f;
for (int i=0; i<=MAX_MOOD_INDEX; i++)
{
if (other.getVal(i) NEUTRAL || getVal(i) NEUTRAL)
{
continue;
}
cnt++;
float diff = abs((float)other.getVal(i) - (float)getVal(i));
const float MAX_DIST = 3.0f;
match += 1.0f - diff / MAX_DIST;
}
match /= cnt;
return match;
}The minimum matching factor for a match between user and user or user(s) and activity was estimated empirically and is 0.75