Materials For Instructor`s Online
Download
Report
Transcript Materials For Instructor`s Online
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