Title: Teaching the NAO Robot to Play a Human-Robot Interactive Game
This paper presents the background and methodologies used in programming and teaching the humanoid robot NAO to play the game of "Simon Says" with human players. Choreographe programming was used to provide the overall game logic and incorporate NAO's sensory capabilities. OpenPose pose detection and OpenCV APIs were used to develop the image processing components to convert the raw images captured by NAO for pose classification, and the Keras APIs were used to build the Convolutional Neural Network to classify and recognize the player poses. more »« less
Kim, Boyoung; Wen, Ruchen; de Visser, Ewart J.; Zhu, Qin; Williams, Tom; Phillips, Elizabeth
(, TSAR Workshop at ROMAN 2021)
null
(Ed.)
We examined whether a robot that proactively offers moral advice promoting the norm of honesty can discourage people from cheating. Participants were presented with an opportunity to cheat in a die-rolling game. Prior to playing the game, participants received from either a NAO robot or a human, a piece of moral advice grounded in either deontological, virtue, or Confucian role ethics, or did not receive any advice. We found that moral advice grounded in Confucian role ethics could reduce cheating when the advice was delivered by a human. No advice was effective when a robot delivered moral advice. These findings highlight challenges in building robots that can possibly guide people to follow moral norms.
Oliveira, Daniela; Lin, Tian; Rahman, Muhammad Sajidur; Akefirad, Rad; Ellis, Donovan; Perez, Eliany; Bobhate, Rahul; DeLong, Lois; Cappos, Justin; Brun, Yuriy; et al
(, Proceedings of the Fourteenth Symposium on Usable Privacy and Security)
Despite the best efforts of the security community, security vulnerabilities in software are still prevalent, with new vulnerabilities reported daily and older ones stubbornly repeating themselves. One potential source of these vulnerabilities is shortcomings in the used language and library APIs. Developers tend to trust APIs, but can misunderstand or misuse them, introducing vulnerabilities. We call the causes of such misuse blindspots. In this paper, we study API blindspots from the developers' perspective to: (1) determine the extent to which developers can detect API blindspots in code and (2) examine the extent to which developer characteristics (i.e., perception of code correctness, familiarity with code, confidence, professional experience, cognitive function, and personality) affect this capability. We conducted a study with 109 developers from four countries solving programming puzzles that involve Java APIs known to contain blindspots. We find that (1) The presence of blindspots correlated negatively with the developers' accuracy in answering implicit security questions and the developers' ability to identify potential security concerns in the code. This effect was more pronounced for I/O-related APIs and for puzzles with higher cyclomatic complexity. (2) Higher cognitive functioning and more programming experience did not predict better ability to detect API blindspots. (3) Developers exhibiting greater openness as a personality trait were more likely to detect API blindspots. This study has the potential to advance API security in (1) design, implementation, and testing of new APIs; (2) addressing blindspots in legacy APIs; (3) development of novel methods for developer recruitment and training based on cognitive and personality assessments; and (4) improvement of software development processes (e.g., establishment of security and functionality teams).
Solmaz Salehian, Jiawen Liu
(, Parallel and Distributed Processing Symposium Workshops (IPDPSW), 2017 IEEE International)
In this paper, we provide comparison of language features and runtime systems of commonly used threading parallel programming models for high performance computing, including OpenMP, Intel Cilk Plus, Intel TBB, OpenACC, Nvidia CUDA, OpenCL, C++11 and PThreads. We then report our performance comparison of OpenMP, Cilk Plus and C++11 for data and task parallelism on CPU using benchmarks. The results show that the performance varies with respect to factors such as runtime scheduling strategies, overhead of enabling parallelism and synchronization, load balancing and uniformity of task workload among threads in applications. Our study summarizes and categorizes the latest development of threading programming APIs for supporting existing and emerging computer architectures, and provides tables that compare all features of different APIs. It could be used as a guide for users to choose the APIs for their applications according to their features, interface and performance reported.
Um, Sungyong; Zhang, Bin; Wattal, Sunil; Yoo, Youngjin
(, Information Systems Research)
Software components such as application programming interfaces (APIs) provided by external developers are vital to online digital platforms. Although APIs generally increase the variety of products according to anecdote, the precise relationship between the categories of APIs and product variety is not yet known. We find that APIs, regarding their use frequency, are categorized into three groups. The core is a group of frequently used APIs, whereas the periphery is a group of sparsely used APIs. In a large and mature platform ecosystem, an additional group of APIs, the regular core, mainly provided by third-party developers, emerges. APIs in the regular core are the main driver of product variety. However, we also find that the strength of this effect diminishes in a newly created product category when most of the new products are built by duplicating the usage of APIs from other products. A platform owner can stimulate developers’ creativity by acting as a bridge between digital product providers and third-party developers. It can collect functional needs from third-party developers and then share them with product providers. Therefore, the latter can build APIs that developers need.
Shah, Aamira; Kondaurova, Maria V.; Pennington, Robert; Welch, Karla C.; Kuravackel, Grace M.; Zheng, Qi
(, The Journal of the Acoustical Society of America)
Robot-mediated interventions have been investigated for the treatment of social skill deficits amongst children with Autism Spectrum Disorder (ASD). Does the use of a Nao robot as a mediator increase vocal interaction between children with ASD? The present study examined the vocalization and turn-taking rate in six children with ASD (mean age = 11.4 years, SD = 0.86 years) interacting with and without a Nao robot for 10 sessions, order counterbalanced. Each session lasted nine minutes. In the Robot condition, the robot provided vocal prompts; in the No Robot condition, children interacted freely. Child vocalization and turn-taking rate defined as the number of utterances/turns per second were measured. Results demonstrated that three children produced higher vocalization and turn-taking rates when a robot was present, and two when it was absent. One participant produced higher vocalization rates when the robot was not present, but more conversational turns when the robot was present. The findings suggest that the use of a Nao robot as a social mediator increases vocalization and turn-taking rates among children with ASD, but large individual variability is observed. The effect of the robot as a mediator on lexical diversity of child speech will also be investigated.
Li, Cen, Imeokparia, Ebosehon, Ketzner, Michael, and Tsahai, Tsega. Teaching the NAO Robot to Play a Human-Robot Interactive Game. Retrieved from https://par.nsf.gov/biblio/10209917. 2019 International Conference on Computational Science and Computational Intelligence (CSCI) . Web. doi:10.1109/CSCI49370.2019.00134.
Li, Cen, Imeokparia, Ebosehon, Ketzner, Michael, & Tsahai, Tsega. Teaching the NAO Robot to Play a Human-Robot Interactive Game. 2019 International Conference on Computational Science and Computational Intelligence (CSCI), (). Retrieved from https://par.nsf.gov/biblio/10209917. https://doi.org/10.1109/CSCI49370.2019.00134
Li, Cen, Imeokparia, Ebosehon, Ketzner, Michael, and Tsahai, Tsega.
"Teaching the NAO Robot to Play a Human-Robot Interactive Game". 2019 International Conference on Computational Science and Computational Intelligence (CSCI) (). Country unknown/Code not available. https://doi.org/10.1109/CSCI49370.2019.00134.https://par.nsf.gov/biblio/10209917.
@article{osti_10209917,
place = {Country unknown/Code not available},
title = {Teaching the NAO Robot to Play a Human-Robot Interactive Game},
url = {https://par.nsf.gov/biblio/10209917},
DOI = {10.1109/CSCI49370.2019.00134},
abstractNote = {This paper presents the background and methodologies used in programming and teaching the humanoid robot NAO to play the game of "Simon Says" with human players. Choreographe programming was used to provide the overall game logic and incorporate NAO's sensory capabilities. OpenPose pose detection and OpenCV APIs were used to develop the image processing components to convert the raw images captured by NAO for pose classification, and the Keras APIs were used to build the Convolutional Neural Network to classify and recognize the player poses.},
journal = {2019 International Conference on Computational Science and Computational Intelligence (CSCI)},
author = {Li, Cen and Imeokparia, Ebosehon and Ketzner, Michael and Tsahai, Tsega},
editor = {null}
}
Warning: Leaving National Science Foundation Website
You are now leaving the National Science Foundation website to go to a non-government website.
Website:
NSF takes no responsibility for and exercises no control over the views expressed or the accuracy of
the information contained on this site. Also be aware that NSF's privacy policy does not apply to this site.