Home

 
Welcome to the personal website of David Paulius.

- For details on my research and publications, click here. -
 - For more information, you can contact me via details listed here. - 

Graph Theory 101

posted 3 Jun 2017, 15:48 by David Paulius   [ updated 3 Jun 2017, 15:59 ]

Computer science, in my eyes, is an interesting, applied discipline from which we learn about a variety of tools and models which can solve problems in other domains or in our own field. One set of these tools are what we call data structures, which are, as the name implies, ways of structuring or representing data. Another name for such structures are abstract data types (ADTs) because these structures have certain properties which are abstract in concept and it is up to the programmer to design and create these structures based on these properties. In this post, I will be talking a bit about one of the structures I use very frequently, and these are graphs (or sometimes called networks).

Figure 1: A simple, undirected graph. (Source: http://www.bogotobogo.com/python/images/Graph/graph_diagram.png)

A graph is a graphical (yes - pun intended) structure which is mainly used for representing the relationship between different concepts (people, entities, objects, cities, etc.). These concepts, which are often represented as circles or dots (such as in Figure 1), are known as nodes or vertices. Therefore, the set of all nodes/vertices in Figure 1 is {a, b, c, d, e, f}. As you can also see in the figure above, certain pair of nodes are connected by a line; these are called edges. The numbers by the edges describe weights which can be assigned to them, but let us disregard those for now. These edges can be directed or undirected, which can be looked at a relationship being uni-directional or bi-directional (one-way or two-way). In some cases, certain nodes may have self-loops, where it has edges with itself.

Figure 2: A simple graph can be decomposed into a matrix representation form - adjacency matrix. (Source: http://btechsmartclass.com/DS/images/Graph%20Adjacency%20Matrix%201.jpg)

Now that we have covered notation, we can look at one simple yet powerful way for representing a graph - adjacency matrices (NB - plural for matrix). If you are savvy in mathematics, you would be familiar with a matrix; if you are not, a simple way of looking at a matrix is if you are making a grid that is NxN (meaning N rows and N columns). For example, look at a pair of nodes A and B and note that there is an edge between them. In the matrix, we write a 1 in the B-row and A-column and A-row and B-column. If there is no edge between a set of nodes, we write a 0. Since this is an undirected graph, the adjacency matrix produced will be symmetrical. Pretty neat huh?

The reason for talking about these matrices is because they can be used for performing very useful calculations to uncover details about the relationship described by the graph. I will perhaps touch on that in a later posting. Check out the references for a more in-depth study to the science and theory of graphs. 

References:
Newman, M., Networks: an introduction. 2010. United Slates: Oxford University Press Inc., New York, pp.1-2.
Steen, M.V., 2010. Graph theory and complex networks.

A Brief Introduction to Affordances

posted 12 Apr 2017, 11:07 by David Paulius   [ updated 13 Apr 2017, 21:57 ]

What exactly are affordances? From the word, we can see the root word being 'afford', which describes the instance where something or someone provides or supplies an opportunity or facility. 
So within the context of my research, what does this mean?

The term 'affordance' was coined by psychologist Dr. James J. Gibson in his notable work The Theory of Affordances which he published in 1977 [1]. In his work, he described the relationship between objects and the actions which they afford, relating to what actions these objects innately provide for us to do with them. There has been an extensive number of studies [2-6] which followed which suggest that our brains relate objects to actions, as our brains fire signals when we perceive objects and any sort of manipulation of said objects. In another way, we can also imagine a variety of actions just by simply observing an object or anything in our environment. 

Even if we do not see the object, just simply observing the way the hands move or how we perform the action is enough of an indicator to what objects we may be using [7]! This fascinating study by H. B. Helbig shows the power of the human brain in inferring the objects that can be used in specific activities. To summarize this study, a set of volunteers were asked to watch videos where objects were hidden from a certain action demonstration, but the hands of the demonstrator were kept visible to the viewer. The volunteers were asked to indicate what object they think is being used in the videos from a list of objects which were things that were not in the video. However, there was always one item in that set which was similar to the one used in the video and that was the indicator that affordances play a key role in identifying objects! They did conclude and find that volunteers can relate certain motions to certain items.


(Source: http://www.doctordisruption.com/wp-content/uploads/2013/09/switches.png)

For example, we have come to associate buttons with the "pushing" action. Even though we may find buttons of all shapes, colours, and sizes, we already know in our minds that we can push them to make them work. Observing a knife already primes us in thinking about the "cutting" action because we can see how sharp it is and how it is usually used and manipulated by us humans. Just as in the picture above, there are a lot of examples of where these affordances are in our daily lives! It also explains why we may be able to relate certain actions to items we have never seen before just by associating features and actions we know about or those we have been previously exposed to.

As a result of these studies, researchers in robotics have been applying the theory of affordances in robot learning. If a robot is able to identify objects in its environment, then using affordances, we can already know what kind of actions we can perform with the item. This would however require that a knowledge system or model is developed which can be used as reference in manipulations. Our group has been working on a means of representing knowledge known as FOON which graphically describes activities in terms of the objects and the motion or action taking place, while noting the effects of these actions on these objects (if any). Many researchers have taken the approach of representing these effects through other means such as probabilistic models (Bayesian Networks, Markov Models, Conditional Random Fields, etc.) which pretty much learn about the most likely occurring association of objects, actions, and effects.

It is my hope to learn more about how these models work and to eventually come upon a means of building such models and executing meaningful robot manipulations with them.

References:
[1] - J.J. Gibson. The theory of affordances. In R. Shaw and J. Bransford, editors, Perceiving, Acting and Knowing. Hillsdale, NJ: Erlbaum, 1977.
[2] G. Rizzolatti and L. Craighero. The mirror neuron system. Ann. Rev. Neurosci., 27:169–192, 2004.
[3] G. Rizzolatti and Craighero L. Mirror neuron: A neurological approach to empathy. In Jean-Pierre Changeux, Antonio R. Damasio, Wolf Singer, and Yves Christen, editors, Neurobiology of Human Values. Springer, Berlin and Heidelberg, 2005.
[4] E. Oztop, M. Kawato, and M. Arbib. Mirror neurons and imitation: a computationally guided review. Epub Neural Networks, 19:254–271,2006.
[5] G. Di Pellegrino, L. Fadiga, L. Fogassi, V. Gallese, and G. Rizzolatti. Understanding motor events: A neurophysiological study. Exp Brain Res, 91:176–80, 1992.
[6] V. Gallese, L. Fogassi, L. Fadiga, and G. Rizzolatti. Action representation
and the inferior parietal lobule. In W. Prinz and B. Hommel, editors, Attention and Performance XIX. Common mechanisms in perception and action. Oxford University Press, Oxford, 2002.
[7] HB Helbig, J. Steinwender, M. Graf, and M. Kiefer. Action observation can prime visual object recognition. Exp Brain Res 200(3-4): 251–258, 2010.

My trip to South Korea!

posted 4 Nov 2016, 19:32 by David Paulius   [ updated 13 Mar 2017, 17:01 ]

My trip to the International Conference on Intelligent Robots and Systems (IROS) was a spectacular experience for me and anyone interested in the wide field of robotics. I made my presentation on our accepted paper entitled "Functional Object-Oriented Network for Manipulation Learning". It was a pleasure to present in front of peers who are also exploring similar or completely different avenues. 

The major part of the trip was exploring and experiencing the life and culture of South Korea, which is quite a beautiful country. I loved the sites and scenes that I was fortunate enough to see and I appreciate everyone that I met and spoke with there. You may find a collection of photos I took at the following link:



I would definitely love to visit South Korea again. Perhaps very soon, who knows? I think immersing myself in a new environment like that would be quite an eye-opening experience for me professionally.

IROS 2016 @ Daejeon!

posted 6 Oct 2016, 15:49 by David Paulius   [ updated 6 Oct 2016, 15:50 ]

I will be attending the IEEE International Conference on Intelligent Robots and Systems (IROS) which will be held in Daejeon, South Korea! Here I will be presenting our recently accepted paper entitled "Functional Object-Oriented Network for Manipulation Learning". I look forward to getting some well-appreciated feedback on our work as well as gaining some insight for our ongoing work.

WELCOME, WELCOME, WELCOME!

posted 16 Sep 2016, 20:23 by David Paulius   [ updated 16 Mar 2017, 09:43 ]

To the reader who stumbled upon my website, I thank you for your interest in getting to know a little bit about me. 

For those who know me, I am a young and aspiring computer scientist delving into the world of robotics and research.

For those who don't, here's a little summary about myself: I was born in Venezuela but for almost my entire life (since I was 2 months old) I have come to know and grow up in the small island federation of St. Kitts and Nevis (you should look us up on a map if you have never heard of us!).

(...I have saved you the trouble of finding it, so here it is below)
Here I completed my primary and secondary school education attending the St. Theresa's Convent High School, a private school attached to the Catholic Church I am a member of (now called the Immaculate Conception Catholic School or ICCS). Even though St. Kitts is my home, I frequently visit my maternal family in Venezuela for some summer holidays. My maternal family originated from Portugal and relocated to Venezuela but they have been returning to their mother land. My paternal family has roots in St. Kitts, Anguilla and St. Lucia. I have come to appreciate my multi-cultural background in terms of food, languages and lifestyle differences.

I have always had an interest in the way technologies work; it started from my fascinations of how airplanes work, to the idea of how handheld electronics and communications worked, and then evolving to other ideas such as how our bodies and habitats worked. It had been a challenge for me growing up in deciding on one single thing that I would want to do for the remainder of my life, and I still do not think that I have adopted that ideology. However, I have developed a fascination in computing and programming since my days at the Clarence Fitzroy Bryant College in St. Kitts, mainly from the excitement I got from logic and how programs are built and how they work.

From there, I went to the University of the Virgin Islands in St. Thomas as a transfer student majoring in Computer Science. It was during my time there that I fully understood that computer science is a very broad field! With my "indecisiveness", it made matters worse for me because there are now so many other things I want to try! However, thanks to some advice I have obtained from my REU experiences at the Brookhaven National Laboratory (BNL) as well as my course projects, I then narrowed down my interests to a prospective set of candidates to study in graduate school; in my head were algorithms (because I enjoyed that class), robotics (because it was new to me and I got motivation from a trip to Carnegie Mellon I made back in 2013), network security, software engineering, and artificial intelligence.  I then ended up at the University of South Florida where I was introduced to the world of robotics which I had no prior knowledge about. Despite that, I am enjoying my experience so far as a member of the Robot Perception and Action Lab (RPAL) working with Yu Sun, PhD. I hope that with the work I am doing in service robotics, I can make a meaningful contribution to society and humanity on a whole in some way. I envision myself working either in Europe (due to my Portuguese ancestry and family ties) or in the Caribbean to further the use of technology in solving every day problems.

1-5 of 5

Comments