KNOWLEDGE-BASED DESIGN LANGUAGE
SUPPORTING MASSIVE SIMULATIONS

GRANT REQUEST

to IBM's Shared University Research (SUR) Program


At CAD Lab, in the Dept of Informatica e Automazione (DIA) of the University Roma Tre, Italy, we do research on design languages, knowledge representation and progressive combination and visualization of distributed 3D data sets.

A book on "Geometric programming for computer aided design" [1] was recently published by J. Wiley, The book is based on the PLaSM design language [2,3,4], a opensource multiplatform geometric extension of the FL language developed by Backus' Functional programming group at IBM Research [5,6,7].

The present grant request is motivated by the assessment of a new Lab of Intelligent Computational Design at DIA, jointly with people from CAD, AI and DB groups, for about 30 mq, and by the possible starting of new courses on PLM applications and on distributed massive computing.

The Lab has strong links with people teaching computational and automation applications at Engineering School in Roma Tre (Prof. Di Carlo: Mechanics of solids, Dept. of Structures; Prof. Nicolo`: Production automation, Dept. of Informatica; Prof. Morino: Aeroelasticity, Dept. of Mechanical Engineering), and with US research groups (Prof. Bajaj, CCV, Univ. of Texas at Austin; Prof. Shapiro, Spatial Automation, Univ. of Wisconsin at Madison; Dr. Bernardini, Geometric & Visual Computing, IBM Res. Division at Yorktown, NY; Dr. Pascucci, Data Science Group, Livermore National Labs at Livermore, CA).

PROJECT AIMS

The new hardware/software infrastructure will contribute to pursue the research lines or issues described below, concerning the representation and handling of design knowledge through a powerfull design language, as well as new approaches to the integration of geometric and physics design in a strongly distributed computational environment. Furthermore, we aim to make available a local Grid Computing node based on a Linux cluster, to be used for numerical simulation and visualization in the Engineering School at Roma Tre, and as access point to computational resources worldwide.

RESEARCH LINES

(1) Plasm re-implementation in Ocaml.

Ocaml, developed at INRIA, is a dialect of ML and one of flagship products of French computer industry. It is a strict functional language with static type inference, and supports pattern matching, object-oriented programming and strong modularization. It is easily interfaced with other languages and external libraries. Interpreters, compilers, module systems, pseudocode machines are available. Ocaml may produce optimized code with performances comparable to C. For all these reasons, Ocaml is suited for robust language implementations. The AI Group (Prof. Cialdea and Prof. Limongelli) at Roma Tre [12,13,14], that collaborates to the representation of design knowledge with Plasm, has a deep knowledge of Ocaml [8,9] and relationships with developers at INRIA.

EXPECTED RESULTS: a new version of PLaSM, implemented in OCaml

(2) Interfacing Ocaml/Plasm and Catia.

Most CAD systems have an extension language based either on Scheme (when built over Acis) or on lisp (when built over Parasolid). We would like to provide Catia with a functional extension based on Ocaml and Plasm, since we believe it could provide an amazing descriptive power when dealing with knowledge. From our preliminary checks [1,2] we did not discover any existing similar interface. We hope Dassault could be interested, both because of the smart aspects of Ocaml and Plasm, and because most junior French graduate with good knowledge of Ocaml.

EXPECTED RESULTS: first prototype of the Foreign Function Interface between Catia and Ocaml

(3) Exporting design knowledge.

A main current research line concerns the exporting of both geometric and production knowledge using RDF (Resource Description Framework), a W3C standard that adopts XML as interchange syntax. The RDF description, actually a set of triples subject/predicate/object, is used for knowledge interchange on the web, and would interface ocaml/plasm/catia to an opensource reasoning engine (CLIPS, originally developed at NASA) for the implementation of expert design systems [15,16]. The database group at Roma Tre (Prof. Atzeni and Prof. Torlone) is currently investigating issues related to the representation of documents in various XML-based formats, including RDF, and on the support to the transformation from one to another, in the context model management [17,18]. Interestingly, the approach is related to the CLIO project, currently developed at the IBM Almaden Research Center.

EXPECTED RESULTS: Interface between PLaSM and CLIPS, based on XML and RDF

(4) Progressive geometric kernel

The CAD Group at DIA is also working (with Pascucci, CASC, Livermore Labs [19,20,21]) to the development of a new multidimensional geometric kernel [22], that is based on Progressive BSP (Binary Space Tree) and on the Split data structure (Bajaj & Pascucci) for complete representation of topology of weak multidimensional polyhedral complexes, like the ones induced by a BSP tree. This approach is very interesting, mainly from an architectural viewpoint, since a monolithic kernel is substituted by a set of pipelined distributed processes, producing further and further detailed representation of a geometric object, depending on the available resources (time, processors, memory, bandwidth). This approach is also consistent with the IBM strategic framework of autonomic computing.

EXPECTED RESULTS: A new geometric kernel based on Progressive BSP trees

(5) Geometry and physics integration

A further research direction is being explored concerning a specialized data structure called SBSP (Stokes BSP) and supporting the efficient computation of combinatorial coboundary [25], so allowing for combined design of both model shape and physics, via the integration of the appropriate differential forms on geometric models. A collaboration on this point is being carried on with the Spatial Automation Lab of Univ. of Wisconsin (Shapiro) and with the Continuum Physics Group of Roma Tre (Di Carlo). It has been shown [23,24] that combinatorial chains and cochains are useful in describing physical theories in a compact and elegant way, and a strong relation between cochains and the Stokes theorem. A possible integration of combinatorial topology methods with progressive BSP trees constitute the main goal of this research line.

EXPECTED RESULTS: Reports on the preliminary experiments.

RESOURCES

People

Hardware/Software

REFERENCES

  1. Paoluzzi, A. Geometric Programming for Computer Aided Design. John Wiley & Sons, Chichester, UK, pp. 798 (2003)
  2. Paoluzzi, A., Pascucci, V. and Vicentino, M., Geometric Programming: A Programming Approach to Geometric Design. ACM Transactions on Graphics, 14(3),266-306 (1995).
  3. Paoluzzi A, Bernardini F., Cattani C. and Ferrucci V. Dimension Independent Modeling with Simplicial Complexes. ACM Transactions on Graphics, 12 (1), 56-102 (1993).
  4. http://www.plasm.net
  5. Backus, J. Can programming be liberated from the Von Neuman's style? A functional style and its algebra of programs. Communications of the ACM, 21(8): 613--641 ACM Turing Award Lecture (1978)
  6. Backus, J., Williams, J.H., Wimmers, E.L., Lucas, P. and Aiken, A. FL Language Manual, Parts 1 and 2. Tech. Rep. RJ 7100, IBM Almaden Research Center, Almaden, CA (1989)
  7. Backus, J., Williams, J.H., Wimmers, E.L. An introduction to the programming language FL. In D.A. Turner, editor, Research Topics in Functional Programming, Chapter~9, pages 219--247. Addison-Wesley, Reading, MA, (1990)
  8. Wolfgang A. Gehrke. Advanced Functional Programming, Lectures for graduate students, Dip. Informatica e Automazione, Univ. Roma Tre, April-June, 2003, http://gehrke.dia.uniroma3.it/afp/
  9. Cialdea Mayer, M. and Limongelli, C. Introduzione alla Programmazione Funzionale. Progetto Leonardo. Societa` Editrice Esculapio, Bologna, pp. 310. In Italian (2002)
  10. Scorzelli, G. Integration of a functional language in a CAD system. Graduation thesis, Dip.Informatica e Automazione, Univ. Roma Tre, In Italian (2001)
  11. "OpenCascadeCore Team" certification, following the integration of the Scheme functional language (G. Scorzelli) within the C++ Open Cascade geometric engine by Matra Datavision (2000)
  12. Cialdea Mayer, M. Logica: linguaggio, ragionamento calcolo. Progetto Leonardo. Societa` Editrice Esculapio, Bologna, pp. 216. In Italian (2002)
  13. Cerrito, S., Cialdea Mayer, M., and Praud, S. First order linear temporal logic over finite time structures. In H. Ganzinger, D. McAllester, and A. Voronkov, editors, Proc. of the 6th Int. Conf. on Logic for Programming and Automated Reasoning, pages 62-76. LNAI 1705, Springer-Verlag, (1999).
  14. Cialdea Mayer, M. and Limongelli, C.. Linear Time Logic, Conditioned Models and Planning with Incomplete Knowledge. In U. Egly and C. G. Fermller (eds.), Automated Resoning with Analytic Tableaux and Related Methods. LNAI 2381, pages 70-84, Springer-Verlag (2002).
  15. Marzano, G. Knowledge-Based Geometric Design. Graduation thesis, Dip.Informatica e Automazione, Univ. Roma Tre, In Italian (2001)
  16. Cialdea Mayer, M., Marzano. G., Paoluzzi, A. and Portuesi, S. Representing and Exporting Design Knowledge, unpublished paper, (2003)
  17. Torlone, R. and Atzeni, P. Updating views over independent schemes. SIAM Journal on Computing, 28(3): 1112-1135 (1999).
  18. Atzeni, P., Mecca, G. and Merialdo, P. Managing Web-Based Data: Database Models and Transformations. IEEE Internet Computing 6(4): 33-37 (2002)
  19. Duchaineau, M., Pascucci, V., Senecal, J., and Joy, K. I. Compression and Indexing of Massive Scalar Fields: Dataflow from 3-D Parallel Simulations to Interactive Visualization Services, Chapter in: The Visualization Handbook. John Wiley & Sons. to appear.
  20. Pascucci, V. and Frank, R. J.. Hierarchical Indexing for Out-of-Core Access to Multi-Resolution Data, Chapter in: Hierarchical and Geometrical Methods in Scentific Visualization, pages 225-241. Mathematics and Visualization. Springer-Verlag, Berlin (2003).
  21. Pascucci, V., Laney, D. E., Frank, R., Scorzelli, G., Linsen, L., Hamann, B., and Gygi, F. Real-time monitoring of large scientific simulations. ACM Symposium on Applied Computing, pages 194-198, (2003).
  22. A. Paoluzzi, V. Pascucci, and G. Scorzelli, Progressive Framework for Dimension-Independent Solid Modeling, submitted to SIAM Conference on Computer Aided Geometric Design, Seattle, November 2003.
  23. J. A. Chard and V. Shapiro, Multivector Data Structure for Differential Forms and Equations, IMACS Transactions, Mathematics and Computers in Simulation, 54 (2000), pp. 33-64.
  24. J. A. Chard, The ABCs of an Interactive Physics System, Ph.D.Dissertation 2002, University of Wisconsin, (Advisor: V.Shapiro).
  25. Milicchio, F. Stokes BSP: a data structure to compute coboundary and differential forms. RT-DIA- 76-03, Dip. Informatica e Automazione, University Roma Tre, April 2003.
Rome, May 28, 2003
Alberto Paoluzzi
Dip. Informatica e Automazione, Universita' Roma Tre
Via della vasca Navale 79, I-00146 Rome, Italy
phone: +39-06-5517 3214, fax: +39-06-557 3030
paoluzzi@dia.uniroma3.it