28
Dr. Philip Cannata C S 345 Spring 2009 Projects A vg 90.8, S tdev 7.5 0 2 4 6 8 10 12 14 16 18 20 60 65 70 75 80 85 90 95 100 Percentage N um ber ofS tud en t

Dr. Philip Cannata 1. Dr. Philip Cannata 2 Programming Languages Project Presentation –Flite by Nirav Savjani and Vladimir Chernis Possible Futures –Parallel

Embed Size (px)

Citation preview

Dr. Philip Cannata 1

CS 345 Spring 2009 ProjectsAvg 90.8, Stdev 7.5

0

2

4

6

8

10

12

14

16

18

20

60 65 70 75 80 85 90 95 100

Percentage

Nu

mb

er

of

Stu

den

ts

Dr. Philip Cannata 2

Programming Languages

Project Presentation– Flite by Nirav Savjani and Vladimir Chernis

Possible Futures– Parallel Computing

• Austin Mcgookey video

• Orc demo by Nathan Wetzler

– Propositional Induction

• ACL2 demo by Nathan Wetzler

– Semantic Web

Dr. Philip Cannata 3

Parallel ComputingAbstract: In December 2006 we published a broad survey of the issues for the whole field concerning the multicore/manycore sea change (see view.eecs.berkeley.edu). We view the ultimate goal as being able to productively create efficient, correct and portable software that smoothly scales when the number of cores per chip doubles biennially. This talk covers the specific research agenda that a large group of us at Berkeley are going to follow (see parlab.eecs.berkeley.edu) as part of a center funded for five years by Intel and Microsoft.

To take a fresh approach to the longstanding parallel computing problem, our research agenda will be driven by compelling applications developed by domain experts in personal health, image retrieval, music, speech understanding and browsers. The development of parallel software is divided into two layers: an efficiency layer that aims at low overhead for 10 percent of the best programmers, and a productivity layer for the rest of the programming community-including domain experts-that reuses the parallel software developed at the efficiency layer. Key to this approach is a layer of libraries and programming frameworks centered around the 13 design patterns that we identified in the Berkeley View report. We rely on autotuning to map the software efficiently to a particular parallel computer. The role of the operating systems and the architecture in this project is to support software and applications in achieving the ultimate goal. Examples include primitives like thin hypervisors and libraries for the operating system and hardware support for partitioning and fast barrier synchronization. We will prototype the hardware of the future using field programmable gate arrays (FPGAs) on a common hardware platform being developed by a consortium of universities and companies

(see http://ramp.eecs.berkeley.edu/ ).

Dr. Philip Cannata 4

Parallel Computing

import Parallel

nfib :: Int -> Int

nfib n | n <= 1 = 1

| otherwise = par n1 (seq n2 (n1 + n2 + 1))

where n1 = nfib (n-1)

n2 = nfib (n-2)

From http://www.macs.hw.ac.uk/~dsg/gph/docs/4.06/users_guide/concurrent-and-parallel.html

Dr. Philip Cannata 5

The same code as the GPH fibonacci in ORC.

def nfib(n) = if (n <= 1) then 1 else nfib(n-2) + n1 <n1< nfib(n-1)

From the ORC documentation: "The pruning combinator, written F <x< G, allows us to block a computation waiting for a result, or terminate a computation. The execution of F <x< G starts by executing F and G in parallel. Whenever F publishes a value, that value is published by the entire execution. When G publishes its first value, that value is bound to x in F, and then the execution of G is immediately terminated. A terminated expression cannot call any sites or publish any values."

So the way this works is that the n-2 branch is spawned in parallel with the n-1 branch and then the result is not returned until both branches have been processed.  You can try this out on their website by entering the line above as well as something like "nfib(5)".

http://orc.csres.utexas.edu/tryorc.shtml

Parallel Computing

Dr. Philip Cannata 6

Semantic Web

Dr. Philip Cannata 7

Dr. Philip Cannata 8

Abstract: 21st century biomedical research is driven by massive amounts of data: automated technologies generate hundreds of gigabytes of DNA sequence information, terabytes of high resolution medical images, and massive arrays of gene expression information on thousands of genes tested in hundreds of independent experiments. Clinical research data is no different: each clinical trial may potentially generate hundreds of data points of thousands of patients over the course of the trial.

This influx of data has enabled a new understanding of disease on its fundamental, molecular basis. Many diseases are now understood as complex interactions between an individual's genes, environment and lifestyle. To harness this new understanding, research and clinical care capabilities (traditionally undertaken as isolated functions) must be bridged to seamlessly integrate laboratory data, biospecimens, medical images and other clinical data. This collaboration between researchers and clinicians will create a continuum between the bench and the bedside-speeding the delivery of new diagnostics and therapies, tailored to specific patients, ultimately improving clinical outcomes.

To realize the promises of this new paradigm of personalized medicine, healthcare and drug discovery organizations must evolve their core processes and IT capabilities to enable broader interoperability among data resources, tools, and infrastructure-both within and across institutions. Answers to these challenges are enabled by the cancer Biomedical Informatics GridT (caBIGT) initiative, overseen by the National Cancer Institute Center for Biomedical Informatics and Information Technology (NCI-CBIIT). caBIGT is a collection of interoperable software tools, standards, databases, and grid-enabled computing infrastructure founded on four central principles: . Open access; anyone-with appropriate permission-may access caBIGT the tools and data. Open development; the entire research community participates in the development, testing, and validation of the tools. Open source; all the tools are available for use and modification. Federation; resources can be controlled locally, or integrated across multiple sites

caBIGT is designed to connect researchers, clinicians, and patients across the continuum of biomedical research-allowing seamless data flow between electronic health records and data sources including genomic, proteomic, imaging, biospecimen, pathology and clinical information, facilitating collaboration across the entire biomedical enterprise.

caBIGT technologies are widely applicable beyond cancer and may be freely adopted, adapted or integrated with other standards-based tools and systems. Guidelines, tools and support infrastructure are in place to facilitate broad integration of caBIGT tools, which are currently being deployed at more than 60 academic medical centers around the United States and are being integrated in the Nationwide Health Information Network as well. For more information on caBIGT, visit http://cabig.cancer.gov/

Semantic Web - caBIG

Dr. Philip Cannata 9

Semantic Web - caBIG

Dr. Philip Cannata 10

Semantic Web

Click here for PDF

Dr. Philip Cannata 11

Semantic Web – RDF and SPARQL

Dr. Philip Cannata 12

Semantic Web – RDF

Dr. Philip Cannata 13

Semantic Web – Oracle RDF Example – Create Triples

-- John is the father of Suzie.INSERT INTO family_rdf_data VALUES (1,SDO_RDF_TRIPLE_S('family', 'http://www.example.org/family/John','http://www.example.org/family/fatherOf', 'http://www.example.org/family/Suzie'));

-- John is the father of Matt.INSERT INTO family_rdf_data VALUES (2,SDO_RDF_TRIPLE_S('family', 'http://www.example.org/family/John','http://www.example.org/family/fatherOf', 'http://www.example.org/family/Matt'));

Click here to see all “Triples” – Appendix 1

Like Prolog?

Dr. Philip Cannata 14

Semantic Web – Oracle RDF Example – Create Rules

Rules:-- A father is male.INSERT INTO family_rdf_data VALUES (28,SDO_RDF_TRIPLE_S('family', 'http://www.example.org/family/fatherOf','http://www.w3.org/2000/01/rdf-schema#domain','http://www.example.org/family/Male'));

INSERT INTO mdsys.rdfr_family_rb VALUES('grandparent_rule','(?x :parentOf ?y) (?y :parentOf ?z)',NULL,'(?x :grandParentOf ?z)',SDO_RDF_Aliases(SDO_RDF_Alias('','http://www.example.org/family/')));

Click here to see all complete RDF database

Like Prolog?

Dr. Philip Cannata 15

Semantic Web – Oracle RDF Example – Query

-- Select all grandfathers and their grandchildren from the family model.-- Use inferencing from both the RDFS and family_rb rulebases.SELECT x grandParent, y grandChildFROM TABLE(SDO_RDF_MATCH('(?x :grandParentOf ?y) (?x rdf:type :Male)',SDO_RDF_Models('family'),SDO_RDF_Rulebases('RDFS','family_rb'),SDO_RDF_Aliases(SDO_RDF_Alias('','http://www.example.org/family/')),null));

http://www.example.org/family/Johnhttp://www.example.org/family/Cindyhttp://www.example.org/family/Johnhttp://www.example.org/family/Tomhttp://www.example.org/family/Johnhttp://www.example.org/family/Cathyhttp://www.example.org/family/John

Like Prolog?

Dr. Philip Cannata 16

Semantic Web – RDF

Namespace goes here

Like Prolog?

Dr. Philip Cannata 17

Semantic Web – Namespaces or Vocabularies or Ontologies or Semantics

Click here for full namespace

Like Prolog?

Dr. Philip Cannata 18

Semantic Web – RDFS and OWL Namespaces or Vocabularies or Ontologies or Semantics

Dr. Philip Cannata 19

Like Prolog?

Semantic Web – RDF and RDFS Example

Dr. Philip Cannata 20

Like Prolog?

Semantic Web – RDFS and OWL Example

Dr. Philip Cannata 21

Semantic Web – SQL Type Query

Like Prolog?

Dr. Philip Cannata 22

Semantic Web – SPARQL

Like Prolog?

Dr. Philip Cannata 23

Good to know!

Probably in the (short?) future the standard query interface for applications will move from a standard "relational" view to a more complex but less theoretical "semantic" view: from SQL to SPARQL, with all the RDF/RDFS/OWL metadata of top of the raw data.

And to follow the vision of a "semantic web", the applications and the data will not be bound together as we are used now, but will  both live in the Internet cloud.

Regards,Danilo.

Bernard Horan ha scritto:(Taken from Oracle's publicly-available project list)

Semantic Web Database TechnologiesPrimarily in New England Development CenterThe vision of Tim Berners Lee, the father of the World Wide Web, is a Web that becomescontinually smarter. It begins to understand the meaning of the content inside Web pages,both individually and in the aggregate. In essence, the Web becomes the repository andinterpreter of knowledge. The so-called semantic Web will evolve over years and decades, andthe process has just begun. Languages and technologies, such as RDF, RDFS, OWL, andSPARQL, have been introduced to standardize the vocabulary and representation of knowledge.The Oracle database is now imbued with the fi rst traces of this semantic Web vision. Thedatabase can be treated as a repository of knowledge, with native support for RDF triples,RDFS/OWL rules, user-defi ned rules, native inferencing, and querying with a SPARQL-likelanguage embedded within SQL. An RDF knowledge store now inherits the scalability,robustness, and reliability of a database system. Additionally, enterprise databases will nowaccept requests that rely on the interpretation of ontologies to fully understand a query.

This is just the beginning. We need to work on dynamic inferencing, security, dataprovenance, analytic tools, visualization of knowledge, better performance for all features,integration of external systems, and many more areas. By combining the power andcapabilities of the Oracle database system with the most advanced semantic tools andtechnologies available elsewhere, we hope to create a system that hastens the advancementand acceptance of the semantic Web.For development of semantic technologies, we seek developers with familiarity in WorldWide Web technologies, as well as an understanding of description logic, inferencing, andknowledge extraction, representation and visualization. Development takes place primarilyin the New England Development Center.-- Danilo PocciaSenior Systems EngineerSun Microsystems Italia S.p.A.Via G. Romagnosi, 4Roma 00196 ITALYPhone +39 06 36708 022Mobile +39 335 6983999Fax +39 06 3221969Email [email protected] http://blogs.sun.com/danilop

Dr. Philip Cannata 24

Dr. Philip Cannata 25

Semantic Web in Austin: http://www.semanticwebaustin.org/ http://juansequeda.blogspot.com/

Juan Sequeda, Ph.D StudentResearch Assistant

Dept. of Computer SciencesThe University of Texas at Austinhttp://www.cs.utexas.edu/~jsequeda

[email protected]://www.juansequeda.com/

Dr. Philip Cannata 26

http://www.w3.org/People/Ivan/CorePresentations/SWTutorial/Slides.pdf

Dr. Philip Cannata 27

http://www.w3.org/2007/Talks/0202-Gijon-IH/Slides.pdf

Dr. Philip Cannata 28

Potential Research Project

View Thesis

javacc

java

Replace this with RDF Triple Store

Complete and Expand

This will enable SIM and SPARQL

queries against the data –

possibly great for Semantic

Data Integration

SIM

CLASS Person "Persons related to the company”(person-id : INTEGER, REQUIRED;first-name : STRING, REQUIRED;last-name : STRING, REQUIRED;home_address : STRING;zipcode : INTEGER;home-phone "Home phone number (optional)" : INTEGER;us-citizen "U.S. citizenship status" : BOOLEAN, REQUIRED;spouse "Person's spouse if married" : Person, INVERSE ISspouse;children "Person's children (optional)" : Person, MV(DISTINCT), INVERSE IS parents;parents "Person's parents (optional)" : Person, MV (DISTINCT,MAX 2), INVERSE IS children;);

WEB DATABASE (WDB):A JAVA SEMANTIC DATABASE

byBo Li

A thesis submitted in partial fulfillment of therequirements for the degree of

Bachelor of Science In Computer Sciences: TuringScholars Honors

University of Texas at AustinSpring, 2006