個人的なメモを記していくためのページです。
マイベストCD などを作ったりするときには曲と曲のつながりなどを気に したりする。既存の音楽プレーヤーの曲順ならべ替え、機能お気にいり シャッフル には不満がある。そこで以下のような機能を考案した。
曲と曲のつながりに関する評価関数f(m,n) m,n= 曲番号 を設ける。 f(m,n)はユーザの操作に応じて変化し並べかえの際に参考にする。
今このような状態だったとする。 演奏順序: 1 2 3 4 5 6 7 8 9 曲番号: 1 2 3 4 5 6 7 8 9 ^演奏中 (1) ボタン操作により - 曲番号4の演奏を中止し演奏順序の次の曲番号5の演奏を開始する。 - f(3,4)のスコアを下げる - リストは次のように変更される 中止した曲番号4を削除し別の場所に挿入する。 演奏順序: 1 2 3 4 5 6 7 8 9 曲番号: 1 2 3 5 6 7 8 9 ^ ^ ^ ^ ^ 曲番号4の挿入場所候補 挿入場所候補は乱数によるか、あるいはf(m,4)が最大となるような曲 番号mの後に挿入される。 プレイリストおよびプレーヤの演奏状態は次のようになる。(例) 演奏順序: 1 2 3 4 5 6 7 8 9 曲番号: 1 2 3 5 6 4 7 8 9 ^演奏中 (2) ボタン操作により - f(3,4) のスコアを下げる。 - 曲番号4の演奏を中止し f(3,n) n = 5,6,7,8,9 の最大値を持つ 曲番号 n を演奏する。例としてf(3,8)が最大だとする。 - 中止した曲番号4を削除し別の場所に挿入する。 演奏順序: 1 2 3 4 5 6 7 8 9 曲番号: 1 2 3 8 5 6 7 9 ^ ^ ^ ^ ^ 曲番号4の挿入場所候補 挿入場所候補より乱数によるか、あるいは曲と曲の並びに関するスコ アで決定する。f(m,4) m= 5,6,7,8,9が最大となるような曲番号mの後 に挿入される。 プレイリストおよびプレーヤの演奏状態は次のようになる。(例) 演奏順序: 1 2 3 4 5 6 7 8 9 曲番号: 1 2 3 5 6 7 4 8 9 ^演奏中 (3)ボタン操により - f(3,4) のスコアを下げる。 - 曲番号4の演奏を中止し f(3,n) n = 1,2,3, 5,6,7,8,9 の最大値を持つ 曲番号 n を演奏する。例としてf(3,2)が最大だとする。 - 中止した曲番号4を削除し別の場所に挿入する。 演奏順序: 1 2 3 4 5 6 7 8 9 曲番号: 1 3 2 5 6 7 8 9 ^ ^ ^ ^ ^ ^ ^ ^ 曲番号4の挿入場所候補 挿入場所候補より乱数によるか、あるいは曲と曲の並びに関するスコ アで決定する。f(m,4) m= 5,6,7,8,9が最大となるような曲番号mの後 に挿入される。 プレイリストおよびプレーヤの演奏状態は次のようになる。(例) 演奏順序: 1 2 3 4 5 6 7 8 9 曲番号: 1 3 2 5 6 4 7 8 9 ^演奏中 (4) ボタン操作により - f(3,4) のスコアを上げる。以下次曲選択と挿入場所範囲の組み合わせのバリエーションは省略。
というのを誰か作ってくれないかしら
のようなアルバム全体の評価を元に次の曲、挿入場所を選んでもよいか。