Prof. Dr. Thomas Schwotzer
                   Computer Science / Mobile Applications
                       thomas.schwotz...
TOC

• Knowledge
• Knowledge Exchange
• A model of Knowledge Exchange Process
  (Shark)
• A knowledge exchanging software ...
Boring....
• Some of your might know Shark
   – 2001 – 2006 TU Berlin:
      • How to apply Semantics to Mobile World
    ...
Message

• Shark Framework will be finished
• Will be maintained
    – at least in the next 28 years
•   This isn't and wo...
Knowledge

• AI / Knowledge Representation:
  – An ontology is / contains / comprises
    knowledge
  – A Topic Map is kno...
Knowledge (2)

• Knowledge Management
  – Knowledge is something that helps people to
    perform a task / to solve a prob...
Knowledge (3)

• Implications:
  – A document can be knowledge for person A
    but just (electronic) paper for B , e.g.
 ...
Knowledge (4)

• Is a document D knowledge?
   – If it helps a person A in a given situation – yes
      D is knowledge fo...
Knowledge in Topic Maps

• Information resources can be knowledge
   – Can contain descriptions that help
• An association...
Is knowledge true?

• With given definition – it's impossible to
  decide
• No objective independent instance which
  coul...
Knowledge – a picture


        Context
                           Person




      Information



Statement
             ...
Knowledge Exchange - Example

        2 „That's what I mean“            „1… that's interesting“

3 „I have some documents ...
Steps

• Negotiation
  – Who has information about what topics
  – Who is interested and allowed to send/receive
    infor...
Different to Knowledge Retrieval

• Simple query doesn't produce knowledge
• Full text search on e.g. “music”
• semantic s...
Knowledge Exchange Process
         potential sender                                                                   pot...
Extraction / Assimilation

• Extraction
  – Process creates a knowledge
  – wants receiver to integrate this knowledge
  –...
Knowledge Exchange Protocol (KEP)

• Interest
   – exposes topics of which knowledge is welcome
• Offer
   – exposes topic...
KEP Example 1

Peer   Musik / *                                              Musik / *   Peer
 S                          ...
KEP Example 2 (mobile leaflet)

Peer   Musik / *                                             Musik / *   Peer
 S          ...
KEP Example 3 (hide interests)

Peer   Musik / *                                            Musik / *   Peer
 S           ...
Shark Data Model (in UML, sketch)


      Topic       1..*                  Peer

                                    1

 ...
Shark Data Model (as TM)

                    Type               Peer          Peer
           Topic1                     ...
Shark Peer

• Software
• Implements extraction and assimilation
• Implements KEP
• Manages Knowledge Ports which store
  i...
Autonomy

• Exchanges knowledge only based on rules
  described in KPs
• Rules can be changed locally – no
  interaction w...
Flow of knowledge
Alice                                     Bruce
                                I agree
                ...
Collaboration
                                        M-TM-P

       M-TM-P   M-TM-P       M-TM-P



                     ...
Knowledge Flow Management
                                        M-TM-P
                                                 ...
Implicit ontology expansion

                Music/*/*                    Music/*/*
   Music


       HipHop
             ...
Individuals KB = patchwork




M-?-P
Architecture


                       Knowledge Ports / KEP

                     Network
Knowledge Base                  ...
Some classes

  Environment           KnowledgeBase          Peer




SimpleEnvironment                          Knowledge...
Code sample

KnowledgeBase = new tinyTIM.KnowledgeBase();
Environment env = new SimpleEnvironment();
Peer myPeer = new Pee...
Code sample - result

   myPeer
             */*/*




                 single threaded
tinyTIM            TCP based
     ...
Mobile Communities



                      Mobile




               Find peers/people with
               similar intere...
Location Based Services




   Mobile
                                  Mobile




                        Hotspot


Send ...
Collaboration / Semantic Grid


                                     PC


   Mobile




                              PC

...
Work in progress

• Implementation started April, 2008
• Shark-FW-Core exists
• KEP exists, used exchange format
   – comp...
Next steps / priority list

• Applications
  – Collaboration platform
  – Mobile Community Application
• Knowledge Base
  ...
Distributed evolutionary Ontologies

• Knowledge can be
  – Information resources
  – Topics and Associations
• A P2P Know...
Summary

• Shark model describes the process of
  knowledge exchange
• Shark Framework implements this model
• basis for n...
Upcoming SlideShare
Loading in …5
×

Building Context Aware P2P Systems with the Shark Framework

1,830 views

Published on

Shark Framework is framework supporting implementation of context aware P2P systems. Shark is an acronym and stand for Shared Knowledge. There is already a theory on context aware P2P systems which is implemented by the Shark framework.
Target platforms are in the first step J2SE, J2ME and Android. In next steps iPhone and Microsoft based mobile devices will be supported.
Shark FW supports the Knowledge Exchange Protocol (KEP) which is a stateless P2P protocol. Currently KEP has been ported to UDP and TCP. A Bluetooth L2CAP implementation will be available in October. This paper (briefly) explains core concepts of the framework. Sample code illustrates usage of Shark. It is illustrated that just two lines of code are sufficient to set up a peer that exchanges knowledge. This paper is also a call for participation. Shark is an open source project and is open to developers and users. Join us!

Published in: Technology, Education, Business
1 Comment
0 Likes
Statistics
Notes
  • Be the first to like this

No Downloads
Views
Total views
1,830
On SlideShare
0
From Embeds
0
Number of Embeds
8
Actions
Shares
0
Downloads
32
Comments
1
Likes
0
Embeds 0
No embeds

No notes for slide

Building Context Aware P2P Systems with the Shark Framework

  1. 1. Prof. Dr. Thomas Schwotzer Computer Science / Mobile Applications thomas.schwotzer@fhtw-berlin.de Shark Framework (Building Context Aware P2P Applications) work in progress
  2. 2. TOC • Knowledge • Knowledge Exchange • A model of Knowledge Exchange Process (Shark) • A knowledge exchanging software engine (Shark Engine / Shark Framework) • Examples • Status • Summary
  3. 3. Boring.... • Some of your might know Shark – 2001 – 2006 TU Berlin: • How to apply Semantics to Mobile World • Mobile Shared Knowledge • 1st paper 2002, several technology studies, some open source projects started • 2006 PhD • work stopped • Other scientists know such situations :-( • Since April 2008 relaunch – still an issue – ocean of time, enthusiastic people/students
  4. 4. Message • Shark Framework will be finished • Will be maintained – at least in the next 28 years • This isn't and won't be my project • Shark stands for Shared Knowledge • Let's share it • Open Source with LGPL (sourceforge) • www.sharksystem.net
  5. 5. Knowledge • AI / Knowledge Representation: – An ontology is / contains / comprises knowledge – A Topic Map is knowledge – Knowledge can be stored in a Topic Map – set of facts (e.g. represented by PROLOG) • Definition by structure
  6. 6. Knowledge (2) • Knowledge Management – Knowledge is something that helps people to perform a task / to solve a problem – Process oriented view on knowledge – BTW: subject isn't anything! • Somebody must be interested in it! No intelligent life -no subjects. • Implications: – A document can be knowledge for person A but just (electronic) paper for B , e.g. • due to lack of background knowledge • can't read the format no PDF reader available
  7. 7. Knowledge (3) • Implications: – A document can be knowledge for person A but just (electronic) paper for B , e.g. • due to lack of background knowledge • can't read the format no PDF reader available • can't understand the spoken, programming, description or whatever language
  8. 8. Knowledge (4) • Is a document D knowledge? – If it helps a person A in a given situation – yes D is knowledge for A in this situation – If not: D is no knowledge • It depends on the context – issuer, receiver, current situation (in its broadest possible sense)
  9. 9. Knowledge in Topic Maps • Information resources can be knowledge – Can contain descriptions that help • An association of Topics can be knowledge – Can help to find relations or IR • Topics – Can be knowledge if representing subjects that help – Can be context and help to find knowledge
  10. 10. Is knowledge true? • With given definition – it's impossible to decide • No objective independent instance which could decide • Semantic networks (e.g. Topic Maps) represent meanings / statements of the authors • Known concept: Reification
  11. 11. Knowledge – a picture Context Person Information Statement Knowledge Particle = Statement + Issuer
  12. 12. Knowledge Exchange - Example 2 „That's what I mean“ „1… that's interesting“ 3 „I have some documents about it. W ant to have look?“ 4 „Please.“ Mobile Person Mobile Person 5 „Sounds good. Thanks! “
  13. 13. Steps • Negotiation – Who has information about what topics – Who is interested and allowed to send/receive information – Implicitly: take context into account – Leads to an exchange context • Knowledge Exchange
  14. 14. Different to Knowledge Retrieval • Simple query doesn't produce knowledge • Full text search on e.g. “music” • semantic search (e.g. by TMQL) not fundamentally better • Context is not described explicitly – Background knowledge – Situation – ...
  15. 15. Knowledge Exchange Process potential sender potential receiver KB KB remote identity remote identity + + remote interests Assimilation remote interests + Extraction + sending interests receiving interests + + Knowledge environment = environment Particle (eavesdropping, ..) (eavesdropping, ..) * I confess: The term assimilation is stolen from the Borg in Star Trek. Hope they'll never find out.
  16. 16. Extraction / Assimilation • Extraction – Process creates a knowledge – wants receiver to integrate this knowledge – A sender can • lie • isn't an expert • Assimilation – Process that integrates (parts) of received knowledge
  17. 17. Knowledge Exchange Protocol (KEP) • Interest – exposes topics of which knowledge is welcome • Offer – exposes topics of which knowledge can be sent • Accept – sent from a receiver to a dedicated sender – sents a number of topics • Insert – sent from a sender to a dedicated receiver – Knowledge particle
  18. 18. KEP Example 1 Peer Musik / * Musik / * Peer S R Establish connection / Identifying interest(musik) offer(musik) accept(musik) extract(R, Musik); insert(KnowledgeParticle kp) assimilate(S, kp);
  19. 19. KEP Example 2 (mobile leaflet) Peer Musik / * Musik / * Peer S R Establish connection / Identifying interest(musik) extract(R, Musik); insert(KnowledgeParticle kp) assimilate(S, kp);
  20. 20. KEP Example 3 (hide interests) Peer Musik / * Musik / * Peer S R Establish connection / Identifying accept(*) extract(R, Musik); insert(KnowledgeParticle kp) assimilate(S, kp);
  21. 21. Shark Data Model (in UML, sketch) Topic 1..* Peer 1 1..* * Information Interest
  22. 22. Shark Data Model (as TM) Type Peer Peer Topic1 A B Type Remote Peer Topic2 Peer Topic Anonymous Sending Receiving Interest T represents a special interest
  23. 23. Shark Peer • Software • Implements extraction and assimilation • Implements KEP • Manages Knowledge Ports which store interests • Process – Observes environment – If remote peer is detected: – run KEP (in defined flavour)
  24. 24. Autonomy • Exchanges knowledge only based on rules described in KPs • Rules can be changed locally – no interaction with any server required
  25. 25. Flow of knowledge Alice Bruce I agree new idea I think Alice I think Bruce author author Alice Externalization
  26. 26. Collaboration M-TM-P M-TM-P M-TM-P M-TM-P M-TM-P company / institute working (trusts its TM experts) Topic Maps expert member / employees
  27. 27. Knowledge Flow Management M-TM-P TM M-TM-P M-TM-P M-TM-P TM TM M-TM-P company / institute working TM (trusts its TM experts) Topic Maps expert member / employees
  28. 28. Implicit ontology expansion Music/*/* Music/*/* Music HipHop Music MP3 HipHop File MP3 File
  29. 29. Individuals KB = patchwork M-?-P
  30. 30. Architecture Knowledge Ports / KEP Network Knowledge Base Protocol Environment Sensors TM Service BT FS TM Security TCP UDP J2ME Mng L2CAP
  31. 31. Some classes Environment KnowledgeBase Peer SimpleEnvironment KnowledgePort fs.KnowledgeBase // single thread inMemo. KnowledgeBase tinyTIM. KnowledgeBase
  32. 32. Code sample KnowledgeBase = new tinyTIM.KnowledgeBase(); Environment env = new SimpleEnvironment(); Peer myPeer = new Peer(kb, env); Context any = new Context(Context.ANY); RemotePeer rPeer = new RemotePeer(RemotePeer.ANONYMOUS) myPeer.createIKP(any, any, rPeer);
  33. 33. Code sample - result myPeer */*/* single threaded tinyTIM TCP based environment
  34. 34. Mobile Communities Mobile Find peers/people with similar interests and exchange knowledge/information Mobile Phone
  35. 35. Location Based Services Mobile Mobile Hotspot Send information to passer-by Mobile
  36. 36. Collaboration / Semantic Grid PC Mobile PC Exchange documents, rumours, links
  37. 37. Work in progress • Implementation started April, 2008 • Shark-FW-Core exists • KEP exists, used exchange format – compressed proprietary format – Topic Maps • Protocols – TCP, UDP work – BT Prototyp • Knowledge Bases – Filesystem – Prototyp – tinyTIM – implementation has begun
  38. 38. Next steps / priority list • Applications – Collaboration platform – Mobile Community Application • Knowledge Base – J2ME (revive the TM4J2ME project (sourceforge) – Jena-FW (RDF) (I'll be a traitor, sorry!!) • Protocols – Stable Bluetooth implementation – HTTP
  39. 39. Distributed evolutionary Ontologies • Knowledge can be – Information resources – Topics and Associations • A P2P Knowledge Exchange can lead to changes in Topic Maps • Kind of evolutionary process – Any receiver can accept or drop changes – “survival of the fittest concepts” – Might lead to a drift and groups of peers sharing same / similar ontologies
  40. 40. Summary • Shark model describes the process of knowledge exchange • Shark Framework implements this model • basis for number of applications • Buzzwords for Shark Applications – Semantic Grid Applications more specific mobile Topic Grid Apps – context aware P2P Apps

×