{"id":524452,"date":"2022-06-08T12:28:21","date_gmt":"2022-06-08T16:28:21","guid":{"rendered":"https:\/\/www.rochester.edu\/newscenter\/?p=524452"},"modified":"2026-03-05T12:04:03","modified_gmt":"2026-03-05T17:04:03","slug":"play-a-bach-using-artificial-intelligence-524452","status":"publish","type":"post","link":"https:\/\/www.rochester.edu\/newscenter\/play-a-bach-using-artificial-intelligence-524452\/","title":{"rendered":"Play a Bach duet with an AI counterpoint"},"content":{"rendered":"<figure id=\"attachment_524512\" aria-describedby=\"caption-attachment-524512\" style=\"width: 1000px\" class=\"wp-caption aligncenter\"><img loading=\"lazy\" decoding=\"async\" class=\"size-full wp-image-524512\" src=\"https:\/\/www.rochester.edu\/newscenter\/wp-content\/uploads\/2022\/06\/Comp-2_1.gif\" alt=\"moving image of robotic hands playing on piano keyboard.\" width=\"1000\" height=\"600\" \/><figcaption id=\"caption-attachment-524512\" class=\"wp-caption-text\">Researchers at the University of Rochester have developed a web-based system called BachDuet that allows users to improvise duets with an artificial intelligence (AI) counterpart in real time. By visiting the BachDuet website, users can play duets with the AI agent using a computer keyboard, mouse, touchscreen, or MIDI keyboard.<\/figcaption><\/figure>\n<h2>A new program developed by\u00a0Rochester researchers uses machine learning to allow users to improvise duets with an artificial intelligence partner.<\/h2>\n<p>To play a duet with German composer Johann Sebastian Bach, you don\u2019t have to travel back to the 18th century; thanks to a new program developed by researchers at the University of Rochester, you only need a computer.<\/p>\n<p>The web-based program, called <a href=\"https:\/\/bachduet.com\/\">BachDuet<\/a>, was developed by <a href=\"https:\/\/www.hajim.rochester.edu\/ece\/people\/faculty\/duan_zhiyao\/index.html\">Zhiyao Duan<\/a>, an associate professor of electrical and computer engineering and of computer science, and members of his lab, including Yongyi Zang \u201923 and PhD student Christodoulos Benetatos. BachDuet allows a person to improvise duets in the style of Bach with an artificial intelligence (AI) counterpoint in real time. By visiting the BachDuet website, a user can play duets with the AI agent using a computer keyboard, mouse, touchscreen, or MIDI keyboard.<\/p>\n<div class=\"pullquote\">Duan foresees the program could have applications in music education, entertainment, and music therapy.<\/div>\n<p>In BachDuet, the AI agent will either follow the human musician, lead the improvisation, or \u201cjust goof around,\u201d Duan says.<\/p>\n<p>But the researchers foresee the program could have applications in music education, entertainment, and music therapy. For instance, says Duan, \u201cmost of the existing musical therapies are listening-based, but in recent years we have seen some playing-based music therapies that have been shown to help improve cognitive functions.\u201d<\/p>\n<p>BachDuet is part of <a href=\"https:\/\/www.rochester.edu\/newscenter\/career-awards-spur-junior-researchers-along-varied-paths-373232\/\">Duan\u2019s research project<\/a>, funded by a National Science Foundation Faculty Early Career Development (CAREER) award, to develop algorithms and systems that allow humans to work with machines to harmonize pitch, coordinate musical timing, and convey expression in music.<\/p>\n<p>His lab uses signal processing, artificial intelligence, and machine learning algorithms, which can empower machines with music perception skills, more expressive performance, and deeper \u201cunderstanding\u201d of music theory and composition. For this project, the team input hundreds of Bach\u2019s compositions and used machine learning techniques to allow the program to \u201cstudy\u201d the music. During improvisation, the program assumes a 4\/4 time signature and makes a decision about which note to trigger or sustain.<\/p>\n<p>\u201cThe goal of our project is to develop tools that allow humans to play music with computer systems in a way similar to human musicians collaborating with each other,\u201d Duan says. \u201cWith BachDuet, we wanted to develop a tool that allows musicians and novices alike to practice counterpoint improvisation.\u201d<\/p>\n<p>\u201cAnd,\u201d he adds, \u201cto have fun.\u201d<\/p>\n<p>&nbsp;<\/p>\n","protected":false},"excerpt":{"rendered":"<p>BachDuet, developed by\u00a0University of Rochester researchers, allows users to improvise duets with an artificial intelligence partner.<\/p>\n","protected":false},"author":912,"featured_media":524492,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":true,"footnotes":""},"categories":[116],"tags":[24292,18802,19382,18632,30532],"class_list":["post-524452","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-sci-tech","tag-artificial-intelligence","tag-department-of-computer-science","tag-department-of-electrical-and-computer-engineering","tag-hajim-school-of-engineering-and-applied-sciences","tag-zhiyao-duan"],"acf":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v27.3 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>Play a Bach duet with an AI counterpoint<\/title>\n<meta name=\"description\" content=\"BachDuet, developed by\u00a0Zhiyao Duan and students in his lab, allows users to improvise duets with an artificial intelligence partner.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.rochester.edu\/newscenter\/play-a-bach-using-artificial-intelligence-524452\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Play a Bach duet with an AI counterpoint\" \/>\n<meta property=\"og:description\" content=\"BachDuet, developed by\u00a0Zhiyao Duan and students in his lab, allows users to improvise duets with an artificial intelligence partner.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.rochester.edu\/newscenter\/play-a-bach-using-artificial-intelligence-524452\/\" \/>\n<meta property=\"og:site_name\" content=\"News Center\" \/>\n<meta property=\"article:published_time\" content=\"2022-06-08T16:28:21+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2026-03-05T17:04:03+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/www.rochester.edu\/newscenter\/wp-content\/uploads\/2022\/06\/fea-bach-artificial-intelligence.jpg\" \/>\n\t<meta property=\"og:image:width\" content=\"1000\" \/>\n\t<meta property=\"og:image:height\" content=\"600\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/jpeg\" \/>\n<meta name=\"author\" content=\"Lindsey Valich\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Lindsey Valich\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"3 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\\\/\\\/www.rochester.edu\\\/newscenter\\\/play-a-bach-using-artificial-intelligence-524452\\\/#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.rochester.edu\\\/newscenter\\\/play-a-bach-using-artificial-intelligence-524452\\\/\"},\"author\":{\"name\":\"Lindsey Valich\",\"@id\":\"https:\\\/\\\/www.rochester.edu\\\/newscenter\\\/#\\\/schema\\\/person\\\/fcd7d29a5b8e855924bf73b764dcd827\"},\"headline\":\"Play a Bach duet with an AI counterpoint\",\"datePublished\":\"2022-06-08T16:28:21+00:00\",\"dateModified\":\"2026-03-05T17:04:03+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/www.rochester.edu\\\/newscenter\\\/play-a-bach-using-artificial-intelligence-524452\\\/\"},\"wordCount\":458,\"image\":{\"@id\":\"https:\\\/\\\/www.rochester.edu\\\/newscenter\\\/play-a-bach-using-artificial-intelligence-524452\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/www.rochester.edu\\\/newscenter\\\/wp-content\\\/uploads\\\/2022\\\/06\\\/fea-bach-artificial-intelligence.jpg\",\"keywords\":[\"artificial intelligence\",\"Department of Computer Science\",\"Department of Electrical and Computer Engineering\",\"Hajim School of Engineering and Applied Sciences\",\"Zhiyao Duan\"],\"articleSection\":[\"Science &amp; Technology\"],\"inLanguage\":\"en-US\"},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/www.rochester.edu\\\/newscenter\\\/play-a-bach-using-artificial-intelligence-524452\\\/\",\"url\":\"https:\\\/\\\/www.rochester.edu\\\/newscenter\\\/play-a-bach-using-artificial-intelligence-524452\\\/\",\"name\":\"Play a Bach duet with an AI counterpoint\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.rochester.edu\\\/newscenter\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/www.rochester.edu\\\/newscenter\\\/play-a-bach-using-artificial-intelligence-524452\\\/#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/www.rochester.edu\\\/newscenter\\\/play-a-bach-using-artificial-intelligence-524452\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/www.rochester.edu\\\/newscenter\\\/wp-content\\\/uploads\\\/2022\\\/06\\\/fea-bach-artificial-intelligence.jpg\",\"datePublished\":\"2022-06-08T16:28:21+00:00\",\"dateModified\":\"2026-03-05T17:04:03+00:00\",\"author\":{\"@id\":\"https:\\\/\\\/www.rochester.edu\\\/newscenter\\\/#\\\/schema\\\/person\\\/fcd7d29a5b8e855924bf73b764dcd827\"},\"description\":\"BachDuet, developed by\u00a0Zhiyao Duan and students in his lab, allows users to improvise duets with an artificial intelligence partner.\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/www.rochester.edu\\\/newscenter\\\/play-a-bach-using-artificial-intelligence-524452\\\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/www.rochester.edu\\\/newscenter\\\/play-a-bach-using-artificial-intelligence-524452\\\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/www.rochester.edu\\\/newscenter\\\/play-a-bach-using-artificial-intelligence-524452\\\/#primaryimage\",\"url\":\"https:\\\/\\\/www.rochester.edu\\\/newscenter\\\/wp-content\\\/uploads\\\/2022\\\/06\\\/fea-bach-artificial-intelligence.jpg\",\"contentUrl\":\"https:\\\/\\\/www.rochester.edu\\\/newscenter\\\/wp-content\\\/uploads\\\/2022\\\/06\\\/fea-bach-artificial-intelligence.jpg\",\"width\":1000,\"height\":600,\"caption\":\"robot hands playing notes on piano keyboard.\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/www.rochester.edu\\\/newscenter\\\/play-a-bach-using-artificial-intelligence-524452\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/www.rochester.edu\\\/newscenter\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Play a Bach duet with an AI counterpoint\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/www.rochester.edu\\\/newscenter\\\/#website\",\"url\":\"https:\\\/\\\/www.rochester.edu\\\/newscenter\\\/\",\"name\":\"News Center\",\"description\":\"University of Rochester\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/www.rochester.edu\\\/newscenter\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Person\",\"@id\":\"https:\\\/\\\/www.rochester.edu\\\/newscenter\\\/#\\\/schema\\\/person\\\/fcd7d29a5b8e855924bf73b764dcd827\",\"name\":\"Lindsey Valich\",\"url\":\"https:\\\/\\\/www.rochester.edu\\\/newscenter\\\/author\\\/lvalich\\\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Play a Bach duet with an AI counterpoint","description":"BachDuet, developed by\u00a0Zhiyao Duan and students in his lab, allows users to improvise duets with an artificial intelligence partner.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/www.rochester.edu\/newscenter\/play-a-bach-using-artificial-intelligence-524452\/","og_locale":"en_US","og_type":"article","og_title":"Play a Bach duet with an AI counterpoint","og_description":"BachDuet, developed by\u00a0Zhiyao Duan and students in his lab, allows users to improvise duets with an artificial intelligence partner.","og_url":"https:\/\/www.rochester.edu\/newscenter\/play-a-bach-using-artificial-intelligence-524452\/","og_site_name":"News Center","article_published_time":"2022-06-08T16:28:21+00:00","article_modified_time":"2026-03-05T17:04:03+00:00","og_image":[{"url":"https:\/\/www.rochester.edu\/newscenter\/wp-content\/uploads\/2022\/06\/fea-bach-artificial-intelligence.jpg","width":1000,"height":600,"type":"image\/jpeg"}],"author":"Lindsey Valich","twitter_card":"summary_large_image","twitter_misc":{"Written by":"Lindsey Valich","Est. reading time":"3 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/www.rochester.edu\/newscenter\/play-a-bach-using-artificial-intelligence-524452\/#article","isPartOf":{"@id":"https:\/\/www.rochester.edu\/newscenter\/play-a-bach-using-artificial-intelligence-524452\/"},"author":{"name":"Lindsey Valich","@id":"https:\/\/www.rochester.edu\/newscenter\/#\/schema\/person\/fcd7d29a5b8e855924bf73b764dcd827"},"headline":"Play a Bach duet with an AI counterpoint","datePublished":"2022-06-08T16:28:21+00:00","dateModified":"2026-03-05T17:04:03+00:00","mainEntityOfPage":{"@id":"https:\/\/www.rochester.edu\/newscenter\/play-a-bach-using-artificial-intelligence-524452\/"},"wordCount":458,"image":{"@id":"https:\/\/www.rochester.edu\/newscenter\/play-a-bach-using-artificial-intelligence-524452\/#primaryimage"},"thumbnailUrl":"https:\/\/www.rochester.edu\/newscenter\/wp-content\/uploads\/2022\/06\/fea-bach-artificial-intelligence.jpg","keywords":["artificial intelligence","Department of Computer Science","Department of Electrical and Computer Engineering","Hajim School of Engineering and Applied Sciences","Zhiyao Duan"],"articleSection":["Science &amp; Technology"],"inLanguage":"en-US"},{"@type":"WebPage","@id":"https:\/\/www.rochester.edu\/newscenter\/play-a-bach-using-artificial-intelligence-524452\/","url":"https:\/\/www.rochester.edu\/newscenter\/play-a-bach-using-artificial-intelligence-524452\/","name":"Play a Bach duet with an AI counterpoint","isPartOf":{"@id":"https:\/\/www.rochester.edu\/newscenter\/#website"},"primaryImageOfPage":{"@id":"https:\/\/www.rochester.edu\/newscenter\/play-a-bach-using-artificial-intelligence-524452\/#primaryimage"},"image":{"@id":"https:\/\/www.rochester.edu\/newscenter\/play-a-bach-using-artificial-intelligence-524452\/#primaryimage"},"thumbnailUrl":"https:\/\/www.rochester.edu\/newscenter\/wp-content\/uploads\/2022\/06\/fea-bach-artificial-intelligence.jpg","datePublished":"2022-06-08T16:28:21+00:00","dateModified":"2026-03-05T17:04:03+00:00","author":{"@id":"https:\/\/www.rochester.edu\/newscenter\/#\/schema\/person\/fcd7d29a5b8e855924bf73b764dcd827"},"description":"BachDuet, developed by\u00a0Zhiyao Duan and students in his lab, allows users to improvise duets with an artificial intelligence partner.","breadcrumb":{"@id":"https:\/\/www.rochester.edu\/newscenter\/play-a-bach-using-artificial-intelligence-524452\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.rochester.edu\/newscenter\/play-a-bach-using-artificial-intelligence-524452\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.rochester.edu\/newscenter\/play-a-bach-using-artificial-intelligence-524452\/#primaryimage","url":"https:\/\/www.rochester.edu\/newscenter\/wp-content\/uploads\/2022\/06\/fea-bach-artificial-intelligence.jpg","contentUrl":"https:\/\/www.rochester.edu\/newscenter\/wp-content\/uploads\/2022\/06\/fea-bach-artificial-intelligence.jpg","width":1000,"height":600,"caption":"robot hands playing notes on piano keyboard."},{"@type":"BreadcrumbList","@id":"https:\/\/www.rochester.edu\/newscenter\/play-a-bach-using-artificial-intelligence-524452\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.rochester.edu\/newscenter\/"},{"@type":"ListItem","position":2,"name":"Play a Bach duet with an AI counterpoint"}]},{"@type":"WebSite","@id":"https:\/\/www.rochester.edu\/newscenter\/#website","url":"https:\/\/www.rochester.edu\/newscenter\/","name":"News Center","description":"University of Rochester","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.rochester.edu\/newscenter\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Person","@id":"https:\/\/www.rochester.edu\/newscenter\/#\/schema\/person\/fcd7d29a5b8e855924bf73b764dcd827","name":"Lindsey Valich","url":"https:\/\/www.rochester.edu\/newscenter\/author\/lvalich\/"}]}},"_links":{"self":[{"href":"https:\/\/www.rochester.edu\/newscenter\/wp-json\/wp\/v2\/posts\/524452","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.rochester.edu\/newscenter\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.rochester.edu\/newscenter\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.rochester.edu\/newscenter\/wp-json\/wp\/v2\/users\/912"}],"replies":[{"embeddable":true,"href":"https:\/\/www.rochester.edu\/newscenter\/wp-json\/wp\/v2\/comments?post=524452"}],"version-history":[{"count":15,"href":"https:\/\/www.rochester.edu\/newscenter\/wp-json\/wp\/v2\/posts\/524452\/revisions"}],"predecessor-version":[{"id":696252,"href":"https:\/\/www.rochester.edu\/newscenter\/wp-json\/wp\/v2\/posts\/524452\/revisions\/696252"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.rochester.edu\/newscenter\/wp-json\/wp\/v2\/media\/524492"}],"wp:attachment":[{"href":"https:\/\/www.rochester.edu\/newscenter\/wp-json\/wp\/v2\/media?parent=524452"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.rochester.edu\/newscenter\/wp-json\/wp\/v2\/categories?post=524452"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.rochester.edu\/newscenter\/wp-json\/wp\/v2\/tags?post=524452"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}