Top Banner
NETWORKED COMMUNITY RELATION VISUALIZATION Created date: 24-11- 2010 Author: NCRV Team Contest:MHST 2010 PROJECT OVERVIEW
39

NETWORKED COMMUNITY RELATION VISUALIZATION

Jan 13, 2016

Download

Documents

idana

PROJECT OVERVIEW. NETWORKED COMMUNITY RELATION VISUALIZATION. Created date: 24-11-2010 Author: NCRV Team Contest:MHST 2010. Agenda. Introduction Plan Overview Licenses System architecture Algorithms Future Aims Difficulties References. Introduction - Team members. - PowerPoint PPT Presentation
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: NETWORKED COMMUNITY RELATION VISUALIZATION

NETWORKED COMMUNITY RELATION VISUALIZATION

Created date: 24-11-2010Author: NCRV Team

Contest:MHST 2010

PROJECT OVERVIEW

Page 2: NETWORKED COMMUNITY RELATION VISUALIZATION

Agenda

1. Introduction2. Plan3. Overview4. Licenses5. System architecture6. Algorithms7. Future Aims8. Difficulties9. References

Page 3: NETWORKED COMMUNITY RELATION VISUALIZATION

Introduction - Team members

• Võ Đặng Phát – FPT Univ.• Nguyễn Hoàng Long – FPT Univ.• Ngô Quang Khánh – FPT Univ.

• Mentor: Nguyễn Vũ Hưng, CTO, Vinicorp

Page 4: NETWORKED COMMUNITY RELATION VISUALIZATION

Introduction - The Project

• Background: – The developing of social network– The demand of review the activeness and

performances of members

• Ideas:– Create an application to visualize the relations of

members in social networks– Begin with two types of input: mailing list archive and

PhpBB forum

Page 5: NETWORKED COMMUNITY RELATION VISUALIZATION

Plan - Planned

• Input:– Mailman’s mailing list archive– PhpBB forum database tables

• Output: – General graph which show the relation of members in social

network by using Post-Reply relationship– Personal graphs which show the performance of a member in

network• Technology (intended)

– Moonlight (Mono Slverlight, Unix-like Oses ready)– MySQL– Windows Communication Foundation (WCF)

Page 6: NETWORKED COMMUNITY RELATION VISUALIZATION

Plan - Modified (actual)• Client Inputs:

– Mailman’s mailing list archive– PhpBB tables

• NCVR Input: XML-based messages (message is a thing which user have done in social network such as post , reply etc)

• Outputs: – General graph for all members in network – Detail graphs for each member.

• Technologies:– Silverlight 4.0+– C#– XML

• Tools– Visual Studio 2010– Expression Blend

Page 7: NETWORKED COMMUNITY RELATION VISUALIZATION

Plan - Milestone• Phase 1 (4-7-2010 to 22-8-2010):

– Decide the architecture designs and technologies– Create project skeleton and prototypes

• Phase 2 (23-8-2010 To 28-10-2010):– Implement modules

• Input data processing• Layout algorithm developing• Output displaying

– Finish prototype• Phase 3 (29-10-2010 đến 8-11-2010)

– Complete

Page 8: NETWORKED COMMUNITY RELATION VISUALIZATION

Overview – System Architecture

Page 9: NETWORKED COMMUNITY RELATION VISUALIZATION

Overview – License

• Ms – PL (Microsoft Public License)

• GPL (GNU General Public License)

Page 10: NETWORKED COMMUNITY RELATION VISUALIZATION

Overview - Algorithm

• Circular Algorithm – Display all members on a circle

• Rectangle Algorithm– Display all members in a square

• Kamada-Kawai Algorithm– Display key members in the center

• Fruchterman-ReignGold Algorithm– Display members in group, as few crossing edges as

possible

Page 11: NETWORKED COMMUNITY RELATION VISUALIZATION

Overview - Applications

• Allow online visualization of social network’s member relationships

• Integrate into social networks like Facebook, Twitter,…

• Help admins of social networks, forum… know which members are active and which is passive to have appropriate counter-measurements.

Page 12: NETWORKED COMMUNITY RELATION VISUALIZATION

License – Silverlight

• Ms-PL( Microsoft Public license)– One of Microsoft Shared Source Licenses– Initially titled Microsoft Permissive License, it was

renamed to Microsoft Public License while being reviewed for approval by the Open Source Initative (OSI)

– This license was approved by OSI on October 12, 2007

(http://en.wikipedia.org/wiki/Shared_source)

Page 13: NETWORKED COMMUNITY RELATION VISUALIZATION

License - Visifire

Free and open source software component that support creating visually stunning charts on Silverlight & WPF.

- Distributed under GPL-v3 license. That means, that it’s open source and free.

- Suport Desktop, Web and even Mobile phone development.

(http://www.visifire.com/blog/category/news/page/13/)

Page 14: NETWORKED COMMUNITY RELATION VISUALIZATION

Architecture – The Design

Page 15: NETWORKED COMMUNITY RELATION VISUALIZATION

Architecture - Scenario

1. User uploads an archive (client input)2. Server parses the input and export XML

based- message (NCRV input)3. Server transfers data to client (as XAP file).4. Run algorithm at client side5. Display graphs at client’s browser

1. Visualization results2. Statistics

Page 16: NETWORKED COMMUNITY RELATION VISUALIZATION

Architecture – Logical View

Page 17: NETWORKED COMMUNITY RELATION VISUALIZATION

Architecture - Physical View

Page 18: NETWORKED COMMUNITY RELATION VISUALIZATION

Architecture - Class Design

NCRVisual

• The main project, contains base classes for 2 modules: Data Analysis and Diagram

• Contain Helper class for dynamically loading module

Page 19: NETWORKED COMMUNITY RELATION VISUALIZATION

Architecture - Class Design (2)

DataInputAnalysis

• Project for analyzing data input (In this case, this is mailing list analyzing project)

•The actual controller that handles data analysis contained in the web project ( for server handling, DataInputController in the web folder)

•The control inherits from Base control from the main project

Page 20: NETWORKED COMMUNITY RELATION VISUALIZATION

Architecture - Class Design (3)

•The web project, contain:

Ashx handler file (Upload.ashx) for handling upload data from client

DataInputController analyzes the input and converts to XML

ASPX page contains Ncrvisual Silverlight object

NCRVisual.Web

Page 21: NETWORKED COMMUNITY RELATION VISUALIZATION

Architecture – Class Design (4)

RelationDiagram

Page 22: NETWORKED COMMUNITY RELATION VISUALIZATION

Architecture – Class Design (5)

• Relation Diagram project:– Read XML input and visualize into Relation Diagram form.– Contains 3 interfaces:

• IAlgorithm: define layout algorithm (graph)• IEntity: define Node (member)• IConnection: define edge (relation)

• Use a set of control: Edge Control, Entity Control, Block Control for visualizing the diagram.

• The DiagramController contains methods for parsing XML and loading algorithm.

Page 23: NETWORKED COMMUNITY RELATION VISUALIZATION

Architecture – Email header

Page 24: NETWORKED COMMUNITY RELATION VISUALIZATION

Architecture – PhPBB forum• PHPBB is the most widely used open source and free

forum. Commonly used in Joomla, Drupal and other PHP based CMS.

• The Database for PhpBB forum is quite complicated with more than 40 tables, but we only need to use data in “posts” and “users” table to create the connections betweens users in the forum:

Page 25: NETWORKED COMMUNITY RELATION VISUALIZATION

Architecture – PhPBB forum

Page 26: NETWORKED COMMUNITY RELATION VISUALIZATION

Architecture - XML• Reference DTD• XML format :

<relation>• <Vertex>• <UserId></UserId>• <Email></Email>• <Name></Name>• <Edge count="1">• <start></start>• <end></end>• <value></value>• <content count="1">• <date></date>• <subject></subject>• </content>• ..........• • </Edge>• .............• </Vertex>• ..............• </relation>

Page 27: NETWORKED COMMUNITY RELATION VISUALIZATION

Architecture - Extending

NCRV can be extended in two ways:• Extends input data (client input):

Extend controller to parse other data source (like facebook friend list, forum thread…) to XML format.

• Extends algorithm :Implement the IAlgorithm

Page 28: NETWORKED COMMUNITY RELATION VISUALIZATION

Algorithm – Spring Layout

If such a “physical graph” is allowed to move without restrictions, it will move to a configuration where the potential energy in the springs is minimized.

The general idea of spring-embedder or force-directed layout is to work on a physical model of the graph in which the nodes are represented by steel rings and the edges are springs attached to these rings.

Page 29: NETWORKED COMMUNITY RELATION VISUALIZATION

Algorithm – Energy Analysis

• Spring force

• Repulsive force (between all nodes):

• Attractive force(between incident nodes):

Page 30: NETWORKED COMMUNITY RELATION VISUALIZATION

Algorithm – Fruchterman-Rheingold

• The basic idea is to just calculate the attractive and repulsive forces at each node independently and to update all nodes iteratively.

• Constant k :

• Repulsive force:

• Attractive force:

Page 31: NETWORKED COMMUNITY RELATION VISUALIZATION

Algorithm - Fruchterman-RheingoldPseudo Code

Page 32: NETWORKED COMMUNITY RELATION VISUALIZATION

Algorithm – Fruchterman Example

Page 33: NETWORKED COMMUNITY RELATION VISUALIZATION

Algorithm – Kamada Kawai (KK)

• KK algorithm is also based on the idea of a balanced spring system and energy minimization.

• However, in difference to FR-Layout, KK-Layout attempts to utilize the derivatives of the force equations to achieve faster convergence.

• Equation:

Page 34: NETWORKED COMMUNITY RELATION VISUALIZATION

Algorithm – Kamada Kawai • Pseudo Code

Page 35: NETWORKED COMMUNITY RELATION VISUALIZATION

Algorithm – Kamada Kawai Example

Page 36: NETWORKED COMMUNITY RELATION VISUALIZATION

Future Aims

• Implement more algorithms• Develop more application for member graph• Develop this application to be able to run

under OSes such as Linux, Mac OS • Inter-act with mailing list, social network

system, forum to create graphs

Page 37: NETWORKED COMMUNITY RELATION VISUALIZATION

Difficulties

• Time constrains.• Limited experience.• OS-free support.• Size of input data (performance)• Social networks are not standardized. • Not all social networks are open.

Page 38: NETWORKED COMMUNITY RELATION VISUALIZATION

THANK YOU!

Page 39: NETWORKED COMMUNITY RELATION VISUALIZATION

Change LogNo Date Author Details Slides

1 2010-10-28 PhatVD Create new All slides

2 2010-10-28 Team Review All slides

3 2010-10-31 PhatVD Edit All slides

4 2010-11-07 Team Review All slides

5 2010-11-23 Team Review All slides