Saya ingin menambahkan bagaimana memecahkan mengubah kendala menjadi bentuk yang dapat digunakan untuk pemrograman kuadratik, karena tidak semudah yang saya pikir. Ini tidak mungkin untuk menemukan matriks nyata A sehingga A w ≤ s ↔ Σ | w i | ≤ s .∑ | wsaya| ≤sSEBUAHA w ≤ s ↔ ¢ | wsaya| ≤s
Pendekatan yang saya gunakan adalah untuk membagi elemen dari vektor w menjadi w + i dan w - i , sehingga w i = w + i - w - i . Jika w i ≥ 0 , Anda memiliki w + i = w i dan w - i = 0 , selain itu Anda memiliki w - i = | w i | dan wwsayaww+sayaw-sayawsaya= w+saya- b-sayawsaya≥ 0w+saya= wsayaw-saya= 0w-saya= | wsaya|. Atau dalam istilah yang lebih matematis,w + i =| wi| +Wiw+saya= 0 danw - i =| wi| -wiw+saya= | wsaya| + wsaya2Baikw - i danw + i adalah angka non-negatif. Gagasan di balik pemisahan angka adalah bahwa Anda sekarang memiliki| wi| =w + i +w - i , secara efektif menghilangkan nilai absolut.w-saya= | wsaya| - bsaya2.w-sayaw+saya| wsaya| = w+saya+ w-saya
Fungsi untuk mengoptimalkan berubah menjadi: , tunduk pada
w + i +w - i ≤s,12( b+- b-)TQ (w+- b-) + cT( b+- b-)w+saya+w-saya≤ s ,w+saya,w-saya≥ 0
Di mana dan c diberikan seperti yang dinyatakan di atas oleh Glen_bQc
Ini perlu diubah menjadi bentuk yang dapat digunakan, yaitu kita perlu satu vektor. Ini dilakukan dengan cara berikut:
12[ w+w-]T[ Q- Q- QQ] [ w+w-] + [ cT- cT] [ w+w-]
tunduk pada
[ SayaD- saya2 DsayaD] [ w+w-] ≤ [ sD02 D]
Di mana adalah matriks unit D- dimensi, s D a D -vektor dimensi yang hanya terdiri dari nilai s dan 0 D a 2 ∗ D- dimensi nol vektor. Babak pertama memastikan | w i | = w + i + w - i ≤ s , w + i kedua , w - i ≥ 0 Sekarang sudah dalam bentuk yang dapat digunakan untuk menggunakan pemrograman kuadratik untuk mencarisayaDDsDDs0D2 ∗ D| wsaya| = w+saya+ w-saya≤ sw+saya, w-saya≥ 0 dan w - , diberikan s . Setelah selesai, parameter optimal Anda sehubungan dengan s adalah w = w + - w - .w+w-ssw = w+- b-
Sumber dan bacaan lebih lanjut: Memecahkan masalah pemrograman kuadratik dengan kendala linear yang mengandung nilai absolut