如何以编程方式猜测数学函数?

时间:2019-09-13 14:38:44

标签: algorithm math brute-force

我在二维数组中有一些数学函数的输入和输出,像这样:

    import { ImagePicker } from '@ionic-native/image-picker';


    constructor(private imagePicker: ImagePicker) { }

export class YourPage {
   pickImages(){
     this.imagePicker.getPictures(options).then((results) => {
       for (var i = 0; i < results.length; i++) {
          console.log('Image URI: ' + results[i]);
          this.imageUpload(results[i])
      }
    }, (err) => { });
}

    // Upload Image function. 

    imageUpload(path) {
      const fileTransfer: FileTransferObject = this.transfer.create();
      let options: FileUploadOptions = {
          fileKey: 'image',
          fileName: '.png',
          chunkedMode: false,
          //mimeType: "image/jpeg",
        }

        fileTransfer.upload(path, 'https://api.com/image-upload', options)
          .then((data) => {
          console.log(data+" Uploaded Successfully");
          let res = JSON.parse(data.response);
          if (res.success == true) {

          }
          this.loader.dismiss();

        }, (err) => {
          console.log(err);

        });
    }
}

我想了解这个功能是什么。它肯定会对输入进行一些算术运算,因此我可以执行类似(此处为伪代码:)

的操作。
. . . . .
[[  3,  2, -2,  3, -2 ],  5]
[[  0,  0,  1, -1, -1 ],  1]
[[  2,  2,  1,  2, -3 ],  1]
[[ -1,  0,  2,  2,  1 ],  3]
. . . . .

但这对我来说似乎是蛮力,所以我不确定我应该采用这种方法。还有什么其他更明智的方法?

1 个答案:

答案 0 :(得分:1)

在范例中具有足够的灵活性特异性,这是可以解决的。

对于初学者,您可以用总度数不超过N的多项式来拟合N点的任何集;您可以摆弄方程式参数以达到每个变量的期望程度。最熟悉的示例是N变量中的N方程,通常可以通过简单的线性矩阵运算来求解(没有等价或不一致的线性方程),并产生度数为1的每个N变量。

我建议您使用自己喜欢的语言寻找简单的方程求解器;其中大多数都可以让您指定所需的方程式。