Papers by Michael Gleicher
Proceedings of the AAAI Symposium Series, Jan 21, 2024
We argue for the use of Petri nets as a modeling language for the iterative development process o... more We argue for the use of Petri nets as a modeling language for the iterative development process of interactive robotic systems. Petri nets, particularly Timed Colored Petri nets (TCPNs), have the potential to unify various phases of the development process -design, specification, simulation, validation, implementation, and deployment. We additionally discuss future directions for creating a domain-specific variant of TCPNs tailored specifically for HRI systems development.
In this paper we consider detecting collisions between characters whose motion is specified by mo... more In this paper we consider detecting collisions between characters whose motion is specified by motion capture data. We consider rough collisions, modeling the characters as a disk in the floor plane. To provide efficient collision detection, we introduce a hierarchical bounding volume, the Motion Oriented Bounding Box tree (MOBB tree). A MOBBtree stores space-time bounds of a motion clip. In crowd animation tests, MOBB trees performance improvements ranging between two and an order of magnitude.
IEEE Transactions on Visualization and Computer Graphics, Aug 1, 2022
Fig. 1: The embComp system on the example of Section 3.3. The (A) configuration drawer allows use... more Fig. 1: The embComp system on the example of Section 3.3. The (A) configuration drawer allows users to configure the desktop, select datasets and manage selections. On the right, the desktop contains five views: (B) neighborhood overlap view, (C) neighborhood spread view, (D) selection list view, (E) neighborhood wall view, and (F) neighborhood sequence view. In this screenshot, the user has selected a bin in the overlap view on the bottom right (marked by the arrow), adding the objects it contains to the selection set. Other views highlight bins that contain selected objects (non-transparent bins with dark outlines in B and C), or show a representation of each selected object (D and E).

Computer Graphics Forum, Jun 1, 2019
Figure : The proposed EMA visual analytics workflow for discovery and generation of machine learn... more Figure : The proposed EMA visual analytics workflow for discovery and generation of machine learning models. In step 1, the system uses interactive visualizations (such as histograms or graphs) to provide an initial data overview. The system then generates a number of possible modeling problems based on analyzing the data set (step 2) from which the user analyzes and selects one to try (step 3). Next, (step 4) an automated ML system trains and generates candidate models based on the data set and given problem. In step 5, the system shows comparisons of the generated prediction models through interactive visualizations of their predictions on a holdout set. Lastly, in step 6, users can select a number of preferable models, which are then exported by the system during step 7 for predictions on unseen test data. At any time, users can return to step 3 and try different modeling problems on the same dataset.

Computer Graphics Forum, Sep 1, 2004
Crowd simulation for virtual environments offers many challenges centered on the trade-offs betwe... more Crowd simulation for virtual environments offers many challenges centered on the trade-offs between rich behavior, control and computational cost. In this paper we present a new approach to controlling the behavior of agents in a crowd. Our method is scalable in the sense that increasingly complex crowd behaviors can be created without a corresponding increase in the complexity of the agents. Our approach is also more authorable; users can dynamically specify which crowd behaviors happen in various parts of an environment. Finally, the character motion produced by our system is visually convincing. We achieve our aims with a situation-based control structure. Basic agents have very limited behaviors. As they enter new situations, additional, situation-specific behaviors are composed on the fly to enable agents to respond appropriately. The composition is done using a probabilistic mechanism. We demonstrate our system with three environments including a city street and a theater.

IEEE robotics and automation letters, Apr 1, 2022
Recently, there has been a wealth of development in motion planning for robotic manipulation-new ... more Recently, there has been a wealth of development in motion planning for robotic manipulation-new motion planners are continuously proposed, each with their own unique strengths and weaknesses. However, evaluating new planners is challenging and researchers often create their own ad-hoc problems for benchmarking, which is time-consuming, prone to bias, and does not directly compare against other state-of-the-art planners. We present MOTIONBENCHMAKER, an open-source tool to generate benchmarking datasets for realistic robot manipulation problems. MOTIONBENCHMAKER is designed to be an extensible, easyto-use tool that allows users to both generate datasets and benchmark them by comparing motion planning algorithms. Empirically, we show the benefit of using MOTIONBENCHMAKER as a tool to procedurally generate datasets which helps in the fair evaluation of planners. We also present a suite of 40 prefabricated datasets, with 5 different commonly used robots in 8 environments, to serve as a common ground to accelerate motion planning research.
We consider the comparison of Epistemic Frames as an example of a visual comparison problem. Epis... more We consider the comparison of Epistemic Frames as an example of a visual comparison problem. Epistemic Frames (also known as Epistemic Networks) are a representation used by Learning Scientists to encode the state of one's knowledge about a domain. The data consist of association strengths between a set of concepts, which can be thought of as edge weights of an undirected graph. The important tasks involve comparing networks or their trajectories. We describe the nature of the data and the tasks and some of our initial efforts to create visualizations of the data including using the problem as a design challenge in a class. We also discuss how this problem is indicative of the general class of visual comparison problems.

Many computer applications depend on the visual realism of virtual human character motion. Unfort... more Many computer applications depend on the visual realism of virtual human character motion. Unfortunately, it is difficult to describe what makes a motion look real yet easy to recognize when a motion looks fake. These characteristics make synthesizing motions for a virtual human character a difficult challenge. A potentially useful approach is to synthesize high-quality, nuanced motions from a database of example motions. Unfortunately, none of the existing example-based synthesis techniques has been able to supply the quality, flexibility, efficiency and control needed for interactive applications, or applications where a user directs a virtual human character through an environment. At runtime, interactive applications, such as training simulations and video games, must be able to synthesize motions that not only look realistic but also quickly and accurately respond to a user's request. This dissertation shows how motion parameter decoupling and highly structured control mechanisms can be used to synthesize high-quality motions for interactive applications using an example-based approach. The main technical contributions include three example-based motion synthesis algorithms that directly address existing interactive motion synthesis problems: a method for splicing upper-body actions with lower-body locomotion, a method for controlling character gaze using a biologically and psychologically inspired model, and a method for using a new data structure called a parametric motion graph to synthesize accurate, quality motion streams in realtime.

arXiv (Cornell University), Oct 4, 2018
Point sets in 2D with multiple classes are a common type of data. A canonical visualization desig... more Point sets in 2D with multiple classes are a common type of data. A canonical visualization design for them are scatterplots, which do not scale to large collections of points. For these larger data sets, binned aggregation (or binning) is often used to summarize the data, with many possible design alternatives for creating effective visual representations of these summaries. There are a wide range of designs to show summaries of 2D multi-class point data, each capable of supporting different analysis tasks. In this paper, we explore the space of visual designs for such data, and provide design guidelines for different analysis scenarios. To support these guidelines, we compile a set of abstract tasks and ground them in concrete examples using multiple sample datasets. We then assess designs, and survey a range of design decisions, considering their appropriateness to the tasks. In addition, we provide a web-based implementation to experiment with design choices, supporting the validation of designs based on task needs.

arXiv (Cornell University), Sep 27, 2018
Figure : The proposed EMA visual analytics workflow for discovery and generation of machine learn... more Figure : The proposed EMA visual analytics workflow for discovery and generation of machine learning models. In step 1, the system uses interactive visualizations (such as histograms or graphs) to provide an initial data overview. The system then generates a number of possible modeling problems based on analyzing the data set (step 2) from which the user analyzes and selects one to try (step 3). Next, (step 4) an automated ML system trains and generates candidate models based on the data set and given problem. In step 5, the system shows comparisons of the generated prediction models through interactive visualizations of their predictions on a holdout set. Lastly, in step 6, users can select a number of preferable models, which are then exported by the system during step 7 for predictions on unseen test data. At any time, users can return to step 3 and try different modeling problems on the same dataset.
In this paper we present a novel method for creating realistic, controllable motion. Given a corp... more In this paper we present a novel method for creating realistic, controllable motion. Given a corpus of motion capture data, we automatically construct a directed graph called a motion graph that encapsulates connections among the database. The motion graph consists both of pieces of original motion and automatically generated transitions. Motion can be generated simply by building walks on the graph. We present a general framework for extracting particular graph walks that meet a user's specifications. We then show how this framework can be applied to the specific problem of generating different styles of locomotion along arbitrary paths.
IEEE Transactions on Visualization and Computer Graphics, Feb 1, 2021
Fig. 1. The CAVA system allows a user to augment a tabular dataset with additional attributes gat... more Fig. 1. The CAVA system allows a user to augment a tabular dataset with additional attributes gathered from a knowledge graph. This figure illustrates the process of gathering three additional attributes corresponding for a single row of the data.
Computer Supported Cooperative Work and Social Computing
Figure 1: We demonstrate Periscope, a robotic camera system that is designed to support two indiv... more Figure 1: We demonstrate Periscope, a robotic camera system that is designed to support two individuals (a worker and a helper) working synchronously and collaboratively on a physical task, while being located in different spaces.
Computer Graphics Forum, Jun 1, 2016
Figure 1: TextDNA allows people to compare word usage patterns across large text corpora. Here, c... more Figure 1: TextDNA allows people to compare word usage patterns across large text corpora. Here, configurable colorfields provide an overview of the 5,000 most commonly used words per decade over the last 350 years (one decade per row). Ordering words according to the sets of decades in which they are common (left are common in all, right in one) and coloring by a word's commonality within each decade reveals temporal correspondences between decades (c.f. §6.1.2
IEEE Transactions on Visualization and Computer Graphics, Aug 1, 2018
Many visualizations, including word clouds, cartographic labels, and word trees, encode data with... more Many visualizations, including word clouds, cartographic labels, and word trees, encode data within the sizes of fonts. While font size can be an intuitive dimension for the viewer, using it as an encoding can introduce factors that may bias the perception of the underlying values. Viewers might conflate the size of a word's font with a word's length, the number of letters it contains, or with the larger or smaller heights of particular characters ('o' vs. 'p' vs. 'b'). We present a collection of empirical studies showing that such factors-which are irrelevant to the encoded values-can indeed influence comparative judgements of font size, though less than conventional wisdom might suggest. We highlight the largest potential biases, and describe a strategy to mitigate them.

Computer Graphics Forum, Jun 1, 2018
Word vector embeddings are an emerging tool for natural language processing. They have proven ben... more Word vector embeddings are an emerging tool for natural language processing. They have proven beneficial for a wide variety of language processing tasks. Their utility stems from the ability to encode word relationships within the vector space. Applications range from components in natural language processing systems to tools for linguistic analysis in the study of language and literature. In many of these applications, interpreting embeddings and understanding the encoded grammatical and semantic relations between words is useful, but challenging. Visualization can aid in such interpretation of embeddings. In this paper, we examine the role for visualization in working with word vector embeddings. We provide a literature survey to catalogue the range of tasks where the embeddings are employed across a broad range of applications. Based on this survey, we identify key tasks and their characteristics. Then, we present visual interactive designs that address many of these tasks. The designs integrate into an exploration and analysis environment for embeddings. Finally, we provide example use cases for them and discuss domain user feedback.

arXiv (Cornell University), Feb 27, 2023
Generating feasible robot motions in real-time requires achieving multiple tasks (i.e., kinematic... more Generating feasible robot motions in real-time requires achieving multiple tasks (i.e., kinematic requirements) simultaneously. These tasks can have a specific goal, a range of equally valid goals, or a range of acceptable goals with a preference toward a specific goal. To satisfy multiple and potentially competing tasks simultaneously, it is important to exploit the flexibility afforded by tasks with a range of goals. In this paper, we propose a real-time motion generation method that accommodates all three categories of tasks within a single, unified framework and leverages the flexibility of tasks with a range of goals to accommodate other tasks. Our method incorporates tasks in a weighted-sum multiple-objective optimization structure and uses barrier methods with novel loss functions to encode the valid range of a task. We demonstrate the effectiveness of our method through a simulation experiment that compares it to state-of-the-art alternative approaches, and by demonstrating it on a physical camera-in-hand robot that shows that our method enables the robot to achieve smooth and feasible camera motions.

arXiv (Cornell University), Oct 29, 2020
Many physical tasks such as pulling out a drawer or wiping a table can be modeled with geometric ... more Many physical tasks such as pulling out a drawer or wiping a table can be modeled with geometric constraints. These geometric constraints are characterized by restrictions on kinematic trajectories and reaction wrenches (forces and moments) of objects under the influence of the constraint. This paper presents a method to infer geometric constraints involving unmodeled objects in human demonstrations using both kinematic and wrench measurements. Our approach takes a recording of a human demonstration and determines what constraints are present, when they occur, and their parameters (e.g. positions). By using both kinematic and wrench information, our methods are able to reliably identify a variety of constraint types, even if the constraints only exist for short durations within the demonstration. We present a systematic approach to fitting arbitrary scleronomic constraint models to kinematic and wrench measurements. Reaction forces are estimated from measurements by removing friction. Position, orientation, force, and moment error metrics are developed to provide systematic comparison between constraint models. By conducting a user study, we show that our methods can reliably identify constraints in realistic situations and confirm the value of including forces and moments in the model regression and selection process.
Motion graphs
ACM Transactions on Graphics, Jul 1, 2002
In this paper we present a novel method for creating realistic, controllable motion. Given a corp... more In this paper we present a novel method for creating realistic, controllable motion. Given a corpus of motion capture data, we automatically construct a directed graph called a motion graph that encapsulates connections among the database. The motion graph consists both of pieces of original motion and automatically generated transitions. Motion can be generated simply by building walks on the graph. We present a general framework for extracting particular graph walks that meet a user's specifications. We then show how this framework can be applied to the specific problem of generating different styles of locomotion along arbitrary paths.
arXiv (Cornell University), Mar 10, 2023
Visualization researchers and visualization professionals seek appropriate abstractions of visual... more Visualization researchers and visualization professionals seek appropriate abstractions of visualization requirements that permit considering visualization solutions independently from specific problems. Abstractions can help us design, analyze, organize, and evaluate the things we create. The literature has many task structures (taxonomies, typologies, etc.), design spaces, and related "frameworks" that provide abstractions of the problems a visualization is meant to address. In this viewpoint, we introduce a different one, a problem space that complements existing frameworks by focusing on the needs that a visualization is meant to solve. We believe it provides a valuable conceptual tool for designing and discussing visualizations. *
Uploads
Papers by Michael Gleicher