January 13, 2018

Using PowerPoint for Simple 3-D Rendering

I've recently become acquainted with a feature in Power Point that allows you to build 3-D worlds within a normal slideshow. Microsoft has been developing these modeling capabilities not only natively in Power Point but also in Paint 3D [1]. As an alternative to breaking free from PowerPoint, I want to briefly show how this can be used for everyday scientific exposition and communication.

Tutorial for creating 3-D in a PowerPoint presentation using Paint 3D
(from Microsoft and LinkedIn Learning).

Having a integrated platform is particularly useful for scientific and engineering presentations where a simple display is desired with minimal training and digital bandwidth requirements. Although PowerPoint is not an open source platform, packages such as Open Office Impress does many of the same things I will show you here. To create your own image, you will have to become proficient in "working with shapes". Create a 2-D shape, and overlay/join multiple 2-D shapes [2] if you prefer. Right-clicking on the shape allows you to recolor, extrude, and rotate the shape as desired.

An cross-organizational advertisement for Google Summer of Code offerings. This example demonstrates a background plus a variety of composite shapes (more on these later).

A project advertisement for the DevoWorm group. This example demonstrates surface definitions and object embedding. 

We will begin our discussion with a few simple examples that I created in a short period of time. These types of objects can be used symbolically, decoratively, or as a labelled object. While joined objects can be rotated and sized (as in something like Blender), composite objects are a bit trickier to work with.

Simple "doo-dad" in stationary 3-D. Components not joined.

Architectural feature in stationary 3-D. Components not joined.

In both examples (particularly the latter), multiple shapes are combined to produce a 3-D geometry. In the first example, four circles and an oval are used to build a mechanical "doo-dad". In the second example, 15 cubes are layered and rotated to form three isometric rows. These are joined at the row ends by two flat rectangles layered so as to achieve the visual illusion of continuity. To achieve the desired visual effect, the shapes were not physically joined. They do, however, create an appropriate visual effect.

Creating a donut shape in PowerPoint from a circle.

One way to see the advantage of using extruded objects to achieve 3-D is to discuss the concept of stereoscopy. Shown below is an elaborate design that appears to have depth cues, but is actually the same pattern that overlaps at a narrow visual angle. While a series of offset cubes provide the illusion of depth, overlapping squares does not produce very rich depth and orientational cues. We can also use extruded shapes, which are also not very perceptually rich.

Four overlapping squares (left) vs. a cube with four segments (right).

Another alternative is to use isometric shapes joined together in a scene. In the following example, we have 12 cubes joined together in pairs with one end removed. These long cubes are then stacked in a tiered arrangement. While this example is largely decorative, this structure could also be made to be interactive.

This structure forms an isometric lattice (a type of axonometric projection) that provides the illusion of a 3-D scene without fully representing the third dimension [3]. To accomplish this, a full isometric lattice is projected at a 120 degree angle, with three prominent sides of a projected object (in this case, a cube) displayed at a 60 degree angle. Isometric geometries have been used in video game design for many years, including games such as Zaxxon, Q*Bert, and classic Sim City. We can also use them to create objects and projections for representing datasets and their structure. The latter will be the subject of a future post.

Isometric "hive" of square pipes in stationary 3-D.

[1] for a more detailed demonstration and discussion of Paint 3D, watch "3D Tools in Powerpoint" from the Presentation Guild, featuring Stephanie Horn from Microsoft.

[2] this is done using the Insert Shapes function on the Format toolbar. You must place a shape on the slide, then Format will appear in the Drawing Tools.

[3] Krikke, J. (2000). Axonometry: a matter of perspective. IEEE Computer Graphics and Applications, 20(4), 7-11.

December 22, 2017

Fault-tolerant Christmas Trees (not the live kind)

It's an interconnected Christmas scene, but that's not a Christmas Tree! (?) COURTESY: Andrew P. Wheeler.

This year's holiday season post brings a bit of graph-theoretic cheer. That's right, there is a type of network called a Christmas tree [1,2]! It is a class of fault-tolerant Hamiltonian graph [2,3]. So far, Christmas trees have been applied to computer and communications networks, but may be found to have a wider range of applications, particularly as we move into the New Year.

An example of a Christmas Tree directed graph as shown in [2]. The top two graphs are slim trees of order 3 (left) and 4 (right). A Christmas tree (bottom) includes selected long-range connections (longer than the immediate connection to mother, daughter, or sister nodes).

This tree could have used a bit more fault-tolerance!

[1] Hsu, L-H and Lin, C-K (2008). Graph Theory and Interconnection Networks. CRC Press, New York.

[2] Hung, C-N, Hsu, L-H, and Sung, T-Y (1999). Christmas tree: A versatile 1-fault-tolerant design for token rings. Information Processing Letters, 72(1–2), 55-63.

[3] Wang, J-J, Hung, C-N, Tan, J.J-N, Hsu, L-H, and Sung, T-Y (2000). Construction schemes for fault-tolerant Hamiltonian graphs. Networks, 35(3), 233-245.

December 15, 2017

Work With Me, the Orthogonal Laboratory, and the OpenWorm Foundation This Summer!

The Google Summer of Code (GSoC) is once again accepting applications from students to work on a range of programming-oriented projects over the Summer of 2018. Orthogonal Laboratory and the OpenWorm Foundation have contributed a number of projects to the list. Here are links to the project descriptions (login required):

Orthogonal Laboratory:

DevoWorm Group:

OpenWorm Foundation:

I am the contact person for the Orthogonal Laboratory and DevoWorm Group projects, and Matteo Cantarelli is the contact person for the other projects. If you have any questions about the application process or want to have be review your application before submission, please feel free do so. The deadline for application submission is tentatively in late March/early April. Stay tuned!

Join us on "The Road to GSoC"!

December 1, 2017

Coherence and Relevance in Scientific Communities

          During the past year, Synthetic Daisies featured a series of posts on relevance theory and intellectual coherence within research communities [1]. In this post, I would like to use a set of small datasets to demonstrate how relevance plays a role in shaping scientific practice [2]. We are using a syntactic approach (or word frequency) to infer changes over time in specific scientific fields. 

          This is done using a list of words extracted from titles of accepted papers at the NIPS (Neural Information Processing Systems) conference from various years past. The NIPS conference (annual) represents a set of fields (Neural Modeling, Artificial Intelligence, Machine Learning) that has experienced rapid innovation and vast methodological change over the past 20 years [3]. To get a handle on patterns that represent a more stable field, data from GECCO (Genetic and Evolutionary Computation Conference). While there is plenty of innovation in this area of CS research, the short-term wholesale turnover of methods is much less prominent.

          Our approach involves ranking words used in paper titles in terms of frequency, and then comparing these rankings between different time intervals. Title words are in many ways more precise than keywords in that titles tend to be descriptive of specific methods and approaches. Each list has the top 15 results for each year listed. Changes in rank are represented by lines between their location in each pairwise list, and words that newly appear or disappear from the list project to a black dot underneath the ranked lists. 

          The working hypothesis is that periods of rapid change are characterized by very little carry-over between two neighboring time-points. Basic descriptive terms specific to the field should remain, but all other terms in the earlier list will be replaced a new set of terms. 

NIPS Conference Accepted Papers for 10-year intervals.

          The first graph shows the change in top terms (relevance) across 10-year intervals. As expected for such a fast-moving field, the terms exhibit an almost complete turnover for each interval (4/15 terms are continuous between 1994 and 2007, and 5/15 terms are continuous between 2007 and 2016). The only three terms that are present in both 1994 and 2016 are "learning", "model", and "neural". These are consistent with the basic descriptive terms in our working hypothesis.

NIPS Conference Accepted Papers for 3-year intervals.

          The second graph demonstrates changes in top terms (relevance) between 2010 and 2016, using intervals of three years. As expected, there is more continuity between terms (8/15 terms are continuous between 2010 and 2013, and 11/15 terms are continuous between 2013 and 2016). The 2013-2016 interval is interesting in that two of the terms new to the 2016 list ("optimal" and "gradient") are descriptors of a word that was lost from the 2013 list ("algorithm"). This suggests that there was much coherence in research topics within this interval as compared the 2010-2013 intervals.

GECCO Conference Accepted Papers for 1-year intervals.

          For both one-year intervals, 11/15 terms are preserved from one interval to the next. The terms that exhibit this continuity are consistent with the idea of basic descriptive terms. This might be seen as the signature of stability within communities, as it matches what is observed between 2013 and 2016 for the NIPS data.

          In keeping with the idea of scientific revolutions [4], we might adjust our view of paradigm shifts as revolutions in relevance. This serves as an alternative to the "big person" view of history, where luminaries such as Newton or Einstein singularly make big discoveries that change the course of their field and upend prevailing views. In this case, revolutions occur when communities shift their discourse, sometimes quite rapidly, to new sets of topics. This seems to be the case with various samplings of the NIPS data.

          For papers presented at NIPS and GECCO, what is relevant in a particular year is made salient to the audience of people who attend the conference. Whether or not this results in a closed feedback loop (people perpetually revisiting a focused set of topics) is dependent on other social dynamics.

UPDATE (12/7):
A preprint is now available! Check it out here: How to find a scientific revolution: intellectual field formation and the analysis of terms. Psyarxiv, doi:10.17605/OSF.IO/RHS9G (2017).

[1] For more information, please see the following posts: Excellence vs. Relevance. July 2 AND Breaking Out From the Tyranny of the PPT, April 17 AND Loose Ends Tied, Interdisciplinarity, and Consilience. June 18.

[2] Lenoir, R. (2006). Scientific Habitus: Pierre Bourdieu and the Collective Individual. Theory, Culture, and Society, 23(6), 25-43.

[3] For more about the experience and history of NIPS, please see: Surmenok, P. (2017). NIPS 2016 Reviews. Medium.

[4] Kuhn, T.S. (1962). The Structure of Scientific Revolutions. University of Chicago Press, Chicago, IL.

November 18, 2017

New Badges (Microcredentials) for Fall 2017

I have some new badges to advertise, one set from the OpenWorm Badge System, and one set from the Orthogonal Lab Badge System. As discussed previously on this blog, badges are microcredentials we are using to encourage participation in our research ecosystems at an introductory level.

An education-centric sketch of the OpenWorm and Orthogoanl Laboratory research ecosystems.

The first new badge series is an introduction to what is going on in the DevoWorm group, but also gives biologists and computationalists unfamiliar with Caenorhabditis elegans developmental biology a chance to get their feet wet by taking a multidisciplinary approach to the topic.

Worm Development I focuses on embryonic development and associated pattern formation. Worm Development I is a prerequisite to II, so be sure to try this one first.

Worm Development II focuses on larval development, including the postembryonic lineage tree and what characterizes each life-history stage.

The second badge series is hosted on the Orthogonal Lab Badge System, and provides an overview of Peer Review issues and techniques. This series is meant to give young scholars a working familiarity with the process of peer review. It is notable that Publons Academy now offers a course on Peer Review, to which this badge might serve as an abbreviated complement.

Peer Review I covers the history of peer review and the basics of pre-publication peer review. Be aware that Peer Review I is a prerequisite for Peer Review II (but not Peer Review for Data).

Peer Review II delves into how to decompose an article for purposes of peer review. An evaluation strategy for post-publication peer review is also covered.

Peer Review for Data contains a brief how-to for conducting peer review for open datasets.