PRE2019 3 Group15: Difference between revisions

From Control Systems Technology Group
Jump to navigation Jump to search
No edit summary
No edit summary
Line 18: Line 18:


=Problem Statement and Objectives=
=Problem Statement and Objectives=
==Problem Statement==
How to develop an autonomous system/robot DJ which enables the user to easily use it as a substitute for a human DJ. This robot DJ should perform as well as, or even better than an average human DJ.  
How to develop an autonomous system/robot DJ which enables the user to easily use it as a substitute for a human DJ.  
==Objectives==
This robot DJ should perform as well as, or even better than an average human DJ.  


=Users=
=Users=

Revision as of 16:30, 9 February 2020

Group Members

Name Study Student ID
Mats Erdkamp Industrial Design 1342665
Sjoerd Leemrijse Psychology & Technology 1009082
Daan Versteeg Electrical Engineering 1325213
Yvonne Vullers Electrical Engineering 1304577
Teun Wittenbols Industrial Design 1300148

Problem Statement and Objectives

How to develop an autonomous system/robot DJ which enables the user to easily use it as a substitute for a human DJ. This robot DJ should perform as well as, or even better than an average human DJ.

Users

Primary users

  • Dance industry: this is the overarching organization that will possess most of the robots.
  • Organizer of a music event: this is the user that will rent or buy the robot to play at their event.
  • Owner of a discotheque or club: the robot can be an artificial alternative for hiring a DJ every night.

Primary user needs

  • The DJ-robot is a smart, lucrative investment.
  • The user interface is easy to understand, no experts needed.
  • The DJ-robot is easy to transport.
  • The DJ-robot is autonomous, no human in the loop.
  • The DJ-robot is at least as valued as a human substitute.

Secondary users

  • Attenders of a music event: these people enjoy the music and lighting show that the robot makes.
  • Human DJ's: likely to "cooperate" with a DJ-robot to make their show more attractive.
  • Human lighting experts: can also "cooperate" with the robot to improve their aspect of the show.

Secondary user needs

  • The DJ-robot selects popular tracks that are valued by the audience.
  • The DJ-robot selects appropriate tracks regarding genre.
  • The DJ-robot does not fall silent in between tracks.
  • The DJ-robot creates an attractive lighting show.
  • The according lighting show fits the beat.
  • The according lighting show fits the genre of music.
  • Attending a set should be something extraordinary and special.
  • The music set played is structured and progressive.
  • The DJ-robot is able to handle requests from the audience.
  • The DJ-robot takes the audience reaction into account in track selection.
  • The transition between tracks is smooth.


Approach, Milestones, and Deliverables

Approach

The goal of the project is to create a robot that functions as a DJ and provides entertainment to a crowd. In order to reach the goal, first a literature study will be executed to find out the current state of the art regarding the problem. After enough information has been collected, an objective will be defined.

Then, the USE and technical aspects of the problem will be researched. The technical aspect-research will be implemented in a design for the robot. Based on this design a prototype will be built and programmed that is able to meet the requirements of the goal.

Milestones

In order to complete the project and meet the objective, milestones have been determined. These milestones include:

  • A clear problem and goal have been determined
  • The literature research is finished
  • The research on how to create design and prototype is finished
  • A design is created
  • A working prototype is constructed
  • The wiki is finished and contains all information about the project

Deliverables

The deliverables for this project are:

  • A product design (?)
  • A working prototype
  • The wiki-page
  • The final presentation in week 8


Who's Doing What?

Personal Goals

The following section describes the main roles of the teammates within the design process. Each team member has chosen an objective that fits their personal development goals.

Name Personal Goal
Mats Erdkamp Play a role in the development of the artificial intelligence systems.
Sjoerd Leemrijse Gain knowledge in recommender systems and pattern recognition algorithms in music.
Daan Versteeg
Yvonne Vullers Play a role in creating the prototype/artificial intelligence
Teun Wittenbols

Weekly Planning

Based on the approach and the milestones, a planning has been made. This planning is not definite and will be updated regularly, however it will be guideline for the coming weeks.

Week 1 Week 2 Week 3 Week 4 Week 5 Week 6 Week 7 Week 8
Goal Do literature research, define problem, make a plan Determine USE aspects, start research into design and prototype Continue research, start on prototype Finish first design, continue on prototype Finalize design Finish prototype, do testing Finalize prototype Finish wiki, presentation
Mats Work on SotA and evaluate design options
Sjoerd Work on defining "users" and "user requirements"
Daan
Yvonne Work on approach, milestones, and deliverables, and make concept planning
Teun Develop problem statement, search and analyze relevant research.
Everyone Think about subject, do literature research and summarize

SotA (Summary of related research)

Yoshii, K., Nakadai, K., Torii, T., Hasegawa, Y., Tsujino, H., Komatani, K., ... & Okuno, H. G. (2007, October). A biped robot that keeps steps in time with musical beats while listening to music with its own ears. In 2007 IEEE/RSJ International Conference on Intelligent Robots and Systems (pp. 1743-1750). IEEE.

This research presents a robot that is able to move according to the beat of the music and is also able to predict the beats in real time. The results show that the robot can adjust its steps in time with the beat times as the tempo changes.


Kashino, K., Nakadai, K., Kinoshita, T., & Tanaka, H. (1995). Application of Bayesian probability network to music scene analysis. Computational auditory scene analysis, 1(998), 1-15.

In this paper a music scene analysis system is developed that can recognize rhythm, chords and source-separated musical notes from incoming music using a Bayesian probability network. Even though 1995 is not particularly state-of-the-art, these kinds of technology could be used in our robot to work with music.


Huron, D. (2002). Music information processing using the Humdrum toolkit: Concepts, examples, and lessons. Computer Music Journal, 26(2), 11-26.

This article introduces Humdrum, which is software with a variety of applications in music. One can also look at humdrum.org. Humdrum is a set of command-line tools that facilitates musical analysis. It is used often in for example Pyhton or Cpp scripts to generate interesting programs with applications in music. Therefore, this program might be of interest to our project.


Choi, K., Fazekas, G., Cho, K., & Sandler, M. (2017). A tutorial on deep learning for music information retrieval. arXiv preprint arXiv:1709.04396.

This paper is meant for beginners in the field of deep learning for MIR (Music Information Retrieval). This is a very useful technique in our project to let the robot gain musical knowledge and insight in order to play an enjoyable set of music.


Pérez-Marcos, J., & Batista, V. L. (2017, June). Recommender system based on collaborative filtering for spotify’s users. In International Conference on Practical Applications of Agents and Multi-Agent Systems (pp. 214-220). Springer, Cham.

This paper takes a mathematical approach in recommending new songs to a person, based on similarity with the previously listened and rated songs. These kinds of algorithms are very common in music systems like Spotify and of utter use in a DJ-robot. The DJ-robot has to know which songs fit its current set and it therefore needs these algorithms for track selection.


Jannach, D., Kamehkhosh, I., & Lerche, L. (2017, April). Leveraging multi-dimensional user models for personalized next-track music recommendation. In Proceedings of the Symposium on Applied Computing (pp. 1635-1642).

This article focuses on next-track recommendation. While most systems base this recommendation only on the previously listened songs, this paper takes a multi-dimensional (for example long-term user preferences) approach in order to make a better recommendation for the next track to be played.


Eric J. Humphrey, Simon Durand, Brian McFee. “OpenMIC-2018: An open dataset for multiple instrument recognition”, 19th International Society for Music Information Retrieval Conference, Paris, France, 2018.

Describes the creation of a data set to be used by artificial intelligence systems in an effort to learn instrument recognition.


Keunwoo Choi, Kyunghyun Cho. “Deep Unsupervised Drum Transcription”, 20th International Society for Music Information Retrieval Conference, Delft, The Netherlands, 2019.

Describes a system that transcribes drums in a song. Could be used as input for the DJ-robot (light controls for example).


Hoffman, G., & Weinberg, G. (2010). Interactive Jamming with Shimon: A Social Robotic Musician. Proceedings of the 28th of the International Conference Extended Abstracts on Human Factors in Computing Systems, 3097–3102.

This article explains the workings of the musical robot Shimon. Shimon is a robot that plays the marimba and chooses what to play based on an analysis of musical input (beat, pitch, etc.). The creating of pieces is not necessarily relevant for our problem, however choosing the next piece of music is of importance. Also, Shimon has a social-interactive component, by which it can play together with humans.


Hamel, P., & Eck, D. (2010, August). Learning features from music audio with deep belief networks. In ISMIR (Vol. 10, pp. 339-344).

This describes the methods to learn features of music by using deep belief networks. It uses the extraction of low level acoustic features for music information retrieval (MIR). It can then find out e.g. of what genre the the musical piece was. The goal of the article is to find a system that can do this automatically.


De León, P. J. P., & Inesta, J. M. (2007). Pattern recognition approach for music style identification using shallow statistical descriptors. IEEE Transactions on Systems, Man, and Cybernetics, Part C (Applications and Reviews), 37(2), 248-257.

This article describes different ways on how to automatically detect a pattern in music with which it can be decided what genre the music is of. By finding the genre of the music that is played, it becomes easier to know whether the music will fit the previously played music.


Shmulevich, I., & Povel, D. J. (1998, December). Rhythm complexity measures for music pattern recognition. In 1998 IEEE Second Workshop on Multimedia Signal Processing (Cat. No. 98EX175) (pp. 167-172). IEEE.

This paper describes the difficulty of matching two musical pieces because of the complexity of rhythm patterns. Then a procedure is determined for minimizing the error in the matching of the rhythm. This article is not very recent, but it is very relevant to our problem.


Wen, R., Chen, K., Xu, K., Zhang, Y., & Wu, J. (2019, July). Music Main Melody Extraction by An Interval Pattern Recognition Algorithm. In 2019 Chinese Control Conference (CCC) (pp. 7728-7733). IEEE.

In this article, the author states that the main melody in a piece of music is a significant feature for music style analysis. It proposes an algorithm that can be used to extract the melody from a piece and the post-processing that is needed to extract the music style.


Johnson, D. (n.a.) Robot DJ Used By Nightclub Replaces Resident DJs retrieved on 09-02-2020 from http://www.edmnightlife.com/robot-dj-used-by-nightclub-replaces-resident-djs/

In this interview with a developer of the robot DJ system POTPAL, some interesting possibilities for a robot system are mentioned. For example, the use of existing top 40 lists, 'beat matching' and 'key matching' techniques, monitoring of the crowd to improve the music choice and to influence people's beverage consumption and more. Also, a humanoid robot is mentioned which would simulate a human DJ.