Это зависит от того, что вы подразумеваете под «точно», и что вы знаете заранее.Если вы знаете частоту w и что синусоида несмещена, у вас есть уравнение
a cos (w * x) + b sin (w * x)
с двумя (x,у) точки на разных значениях х вы можете найти а и б, а затем проверить сгенерированную кривую по всем остальным точкам.Выберите два значения x с наименьшим количеством y наблюдений и попробуйте это для всех y.Если есть смещение, т.е. ваше уравнение равно
a cos(w * x) + b sin(w * x) + c
Вам нужно взглянуть на три значения x.
Если вы не знаете частоту, вы можете попробовать ту же технику, к сожалению,решения могут быть не уникальными, может подходить более одного w.
Edit Насколько я понимаю, у вас есть реальное значение y для каждого x и куча неправильныхиз них.Вы хотите найти реальные ценности.Лучший способ сделать это - подогнать кривые через небольшое количество точек и проверить, соответствует ли кривая некоторому значению y в других наборах.
Если не все значения x имеют действительные значения y, тогдаприменяется та же техника, но вам нужно взглянуть на гораздо больший набор пар, троек или четверок (по существу, каждой пары, тройки или четверки точек с разными значениями y)
Если ваша проблема в чем-то другом, иЯ подозреваю, что это, пожалуйста, укажите это.
- Определите синусоиду.Большинство людей воспринимают это как функцию вида
a cos(w * x) + b sin(w * x) + c
.Если вы имеете в виду что-то другое, укажите это.
2 Укажите, как именно выглядит успех.Пример с скажем 10 баллов вместо 100 было бы неплохо.
Крайне непонятно, как это связано с комбинаторной оптимизацией.