Survey
* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
CS 345 Spring 2009 Projects Avg 90.8, Stdev 7.5 20 18 16 Number of Students 14 12 10 8 6 4 2 0 60 65 70 75 80 85 90 95 100 Percentage Dr. Philip Cannata 1 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 2 Parallel Computing Abstract: 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 3 Parallel Computing From http://www.macs.hw.ac.uk/~dsg/gph/docs/4.06/users_guide/concurrent-and-parallel.html 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) Dr. Philip Cannata 4 Parallel Computing 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 Dr. Philip Cannata 5 Semantic Web Dr. Philip Cannata 6 Dr. Philip Cannata 7 Semantic Web - caBIG 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/ Dr. Philip Cannata 8 Semantic Web - caBIG Dr. Philip Cannata 9 Semantic Web Click here for PDF Dr. Philip Cannata 10 Semantic Web – RDF and SPARQL Dr. Philip Cannata 11 Semantic Web – RDF Dr. Philip Cannata 12 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')); Click here to see all “Triples” – Appendix 1 -- John is the father of Matt. Like Prolog? 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')); Dr. Philip Cannata 13 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')); Click here to see all complete RDF database INSERT INTO mdsys.rdfr_family_rb VALUES( Like Prolog? 'grandparent_rule', '(?x :parentOf ?y) (?y :parentOf ?z)', NULL, '(?x :grandParentOf ?z)', SDO_RDF_Aliases(SDO_RDF_Alias('','http://www.example.org/family/'))); Dr. Philip Cannata 14 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 grandChild FROM 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/John http://www.example.org/family/Cindy http://www.example.org/family/John http://www.example.org/family/Tom http://www.example.org/family/John http://www.example.org/family/Cathy http://www.example.org/family/John Like Prolog? Dr. Philip Cannata 15 Semantic Web – RDF Namespace goes here Like Prolog? Dr. Philip Cannata 16 Semantic Web – Namespaces or Vocabularies or Ontologies or Semantics Click here for full namespace Like Prolog? Dr. Philip Cannata 17 Semantic Web – RDFS and OWL Namespaces or Vocabularies or Ontologies or Semantics Dr. Philip Cannata 18 Semantic Web – RDF and RDFS Example Like Prolog? Dr. Philip Cannata 19 Semantic Web – RDFS and OWL Example Like Prolog? Dr. Philip Cannata 20 Semantic Web – SQL Type Query Like Prolog? Dr. Philip Cannata 21 Semantic Web – SPARQL Like Prolog? Dr. Philip Cannata 22 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 Technologies Primarily in New England Development Center The vision of Tim Berners Lee, the father of the World Wide Web, is a Web that becomes continually 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 and interpreter of knowledge. The so-called semantic Web will evolve over years and decades, and the process has just begun. Languages and technologies, such as RDF, RDFS, OWL, and SPARQL, 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. The database 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-like language embedded within SQL. An RDF knowledge store now inherits the scalability, robustness, and reliability of a database system. Additionally, enterprise databases will now accept 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, data provenance, analytic tools, visualization of knowledge, better performance for all features, integration of external systems, and many more areas. By combining the power and capabilities of the Oracle database system with the most advanced semantic tools and technologies available elsewhere, we hope to create a system that hastens the advancement and acceptance of the semantic Web. For development of semantic technologies, we seek developers with familiarity in World Wide Web technologies, as well as an understanding of description logic, inferencing, and knowledge extraction, representation and visualization. Development takes place primarily in the New England Development Center. -Danilo Poccia Senior Systems Engineer Sun Microsystems Italia S.p.A. Via G. Romagnosi, 4 Roma 00196 ITALY Phone +39 06 36708 022 Mobile +39 335 6983999 Fax +39 06 3221969 Email [email protected] Blog http://blogs.sun.com/danilop Dr. Philip Cannata 23 Dr. Philip Cannata 24 Semantic Web in Austin: http://www.semanticwebaustin.org/ http://juansequeda.blogspot.com/ Juan Sequeda, Ph.D Student Research Assistant Dept. of Computer Sciences The University of Texas at Austin http://www.cs.utexas.edu/~jsequeda [email protected] http://www.juansequeda.com/ Dr. Philip Cannata 25 http://www.w3.org/People/Ivan/CorePresentations/SWTutorial/Slides.pdf Dr. Philip Cannata 26 http://www.w3.org/2007/Talks/0202-Gijon-IH/Slides.pdf Dr. Philip Cannata 27 Potential Research Project WEB DATABASE (WDB): A JAVA SEMANTIC DATABASE by Bo Li A thesis submitted in partial fulfillment of the requirements for the degree of Bachelor of Science In Computer Sciences: Turing Scholars Honors University of Texas at Austin Spring, 2006 javacc Complete and Expand 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 IS spouse; children "Person's children (optional)" : Person, MV (DISTINCT), INVERSE IS parents; parents "Person's parents (optional)" : Person, MV (DISTINCT, MAX 2), INVERSE IS children; ); Dr. Philip Cannata java View Thesis This will enable SIM and SPARQL queries against the data – possibly great for Semantic Data Integration Replace this with RDF Triple Store 28