Ce este programarea liniară în știința datelor: prezentare generală
Publicat: 2022-09-21Știința datelor a crescut ca un domeniu cu adevărat interdisciplinar care împrumută din informatică, matematică, analiză de date, statistici etc. Progresele sale au ajutat companiile din întreaga lume să ia decizii mult mai informate, bazate pe date. Drept urmare, astăzi, companiile realizează importanța datelor pe care le-au dobândit de-a lungul anilor.
Oamenii de știință de date folosesc instrumente avansate pentru a evalua scenariile actuale de afaceri folosind datele existente, pentru a deriva relații și pentru a găsi modele perspicace. Această metodă este cunoscută ca analiză descriptivă. În plus, oamenii de știință de date studiază și efectele și cauzele acestora, ținând cont de diverse variabile dependente și independente, cunoscute sub numele de Predictive Analytics.
Întrucât Predictive Analytics funcționează prin identificarea relațiilor cauza-efect, este benefic pentru luarea unor decizii profunde pentru viitor. Cu toate acestea, acest lucru nu este atât de simplu pe cât ar părea. Orice afacere are de rezolvat o mulțime de variabile – inclusiv perspective actuale, constrângeri și multe altele.
Consultați certificările noastre de știință a datelor pentru a vă îmbunătăți abilitățile.
Pentru a prezice cu acuratețe, trebuie să luați în considerare aceste variabile și să ajungeți la soluția optimă. Aici intervine programarea liniară. Programarea liniară este o tehnică importantă care funcționează algoritmic și îi ajută pe cercetătorii de date să găsească cea mai optimă soluție pentru diferite probleme. Programarea liniară ia în considerare toate variabilele esențiale, egalitățile și inegalitățile pentru a ajunge la soluția finală, ceea ce asigură că predicția este sigură.
În acest articol, să ne uităm la ce este programarea liniară, diferitele metode de programare liniară și un exemplu de problemă de programare liniară!
Explorați diplomele noastre populare în știința datelor
Program Executive Postuniversitar în Știința Datelor de la IIITB | Program de certificat profesional în știința datelor pentru luarea deciziilor de afaceri | Master în Știința Datelor de la Universitatea din Arizona |
Program de certificat avansat în știința datelor de la IIITB | Program de certificat profesional în știința datelor și analiză de afaceri de la Universitatea din Maryland | Grade în știința datelor |
Programarea liniară în analiza predictivă
Înainte de a începe cu aspectele tehnice, este esențial să rețineți că programarea în contextul programării liniare nu se referă la programarea computerului sau a software-ului. Pe de altă parte, programarea liniară este, în esență, o tehnică de optimizare (Optimizare liniară) utilă în găsirea celor mai bune rezultate din modelele matematice. Pentru a formula un program liniar, este important să înțelegeți elementele de bază ale programării liniare, care includ:
- Variabile de decizie: Se referă la variabilele pe care am dori să le determinăm, necunoscutele.
- Funcția obiectivă: se referă la funcția liniară care reprezintă cantitățile care trebuie minimizate sau maximizate.
- Constrângeri: Acesta este un set de inegalități sau egalități care reprezintă toate restricțiile asupra variabilei noastre de decizie.
- Restricții non-negative: se referă la un punct esențial de constrângere prin faptul că valorile variabilelor de decizie sunt nenegative.
Cu termenii de bază stabiliți, să ne uităm acum la ce abordări pot fi luate atunci când rezolvăm o problemă de programare liniară.
Top abilități esențiale de știință a datelor de învățat în 2022
SL. Nu | Cele mai bune abilități de știință a datelor de învățat în 2022 | |
1 | Certificari pentru analiza datelor | Certificate de Statistică Inferenţială |
2 | Certificari de testare a ipotezelor | Certificari de regresie logistica |
3 | Certificari de regresie liniara | Algebră liniară pentru certificări de analiză |
Rezolvarea programarii liniare
Putem urma acești patru pași pentru a rezolva cu succes o problemă de programare liniară:
- Identificarea variabilelor de decizie
- Dezvoltarea functiei obiectiv
- Specificarea constrângerilor
- Indicarea restricțiilor de non-negativitate
Ne vom aprofunda mai târziu în acești pași, când ne uităm la un exemplu rezolvat de programare liniară. Dar înainte de asta, să ne uităm la diferitele moduri în care puteți aborda o problemă de programare liniară. Există, în general, patru abordări din care să alegeți:
- Metoda grafică: Metoda grafică este cea mai de bază metodă folosită pentru a rezolva o problemă de programare liniară în două variabile. Este folosit mai ales atunci când există doar două variabile de decizie de luat în considerare. Metoda grafică presupune formarea unui set de inegalități liniare și supunerea acestora la condițiile sau constrângerile relevante. Apoi, ecuațiile sunt trasate pe planul XY, iar aria de intersecție formată prin reprezentarea tuturor ecuațiilor liniare este aria fezabilă. Această zonă indică valorile unui model și oferă soluția optimă.
- Metoda Simplex: Aceasta este o metodă puternică pentru rezolvarea problemelor de programare liniară și urmează o procedură iterativă pentru a ajunge la soluția optimă. În această abordare, variabilele esențiale sunt modificate până când valoarea maximă sau minimă (după cum este necesar) este atinsă pentru funcția obiectiv inițială.
- Metoda colțului de nord-vest și a costurilor minime: Acestea sunt tipuri specifice de metode utilizate în principal pentru probleme de transport pentru a determina cea mai bună modalitate de a transporta produse sau mărfuri. Ca rezultat, aceasta este o metodă de optimizare la îndemână pentru problemele de cerere și ofertă. Presupunerea pentru această metodă este că există un singur produs. Cu toate acestea, cererea pentru acest produs provine din diverse surse, care alcătuiesc cumulativ oferta totală. Prin urmare, această metodă urmărește reducerea la minimum a costurilor de transport.
- Rezolvarea folosind R: R este unul dintre cele mai utilizate instrumente pentru știința datelor și analiza datelor. R facilitează realizarea optimizării în doar câteva linii de cod folosind pachetul IpSolve.
- Rezolvarea utilizând instrumente open-source: ultima metodă utilizează unul dintre multele instrumente open-source disponibile pentru probleme de optimizare. Un exemplu de instrument open-source este OpenSolve, un optimizator liniar pentru Excel și funcționează fără probleme pentru până la 100 de variabile. În afară de asta, CPLEX, MATLAB, Gurobi etc., sunt câteva alte instrumente open-source utile.
Citiți articolele noastre populare despre știința datelor
Calea de carieră în știința datelor: un ghid cuprinzător de carieră | Creșterea carierei în știința datelor: viitorul muncii este aici | De ce este importantă știința datelor? 8 moduri în care știința datelor aduce valoare afacerii |
Relevanța științei datelor pentru manageri | Ultima fișă pentru știința datelor pe care ar trebui să o aibă fiecare cercetător de date | Top 6 motive pentru care ar trebui să devii un Data Scientist |
O zi în viața omului de știință a datelor: ce fac ei? | Mitul distrus: Știința datelor nu are nevoie de codare | Business Intelligence vs Data Science: Care sunt diferențele? |
Exemplu de rezolvare grafică a programării liniare
În timpul sezonului festiv anual, o companie ia în considerare doi factori – X și Y – pentru a crea un pachet de utilizatori. Greutatea pachetului total trebuie să fie de 5 kg – și nu trebuie să existe mai mult de 4 kg de Y, iar cel puțin 2 kg de X. X și Y contribuie la întregul profit după cum urmează – Rs. 5/kg pentru X și 6/kg pentru Y.
Să încercăm să rezolvăm această problemă de programare liniară pentru a ajunge la cea mai bună combinație care are ca rezultat cele mai mari profituri pentru companie.
1. Lucrul cu funcția noastră principală
Scopul de optimizare al problemei noastre este maximizarea profitului. Contribuția la profit a lui X și Y ne este dată în enunțul problemei. Acum,
- Fie un kg de X
- Fie b kg de Y
- Funcția noastră obiectiv devine atunci -> c = 5*a + 6*b și trebuie să maximizăm c.
Avem a, b ca variabile de decizie, în timp ce c este funcția noastră necesară.
2. Dezvoltarea constrângerilor din problemă
Ni se dau următoarele constrângeri în problemă:
- Greutatea pachetului cadou trebuie să fie de 5 kg => a + b = 5
- Mai puțin de 4kg de Y și cel puțin 2kg de X => x>=2; y<=4
3. Constrângeri nenegative
Mărimile pentru X și Y ar trebui să fie pozitive => a, b>0
Acum, haideți să rezumam rapid întreaga problemă așa cum am expus-o până acum:
Trebuie să optimizăm c = 5a+6b în următoarele două condiții:
- a+b=5
- a>=2
- b<=4
Folosim metoda grafică pentru a rezolva această problemă, așa că haideți să luăm în considerare un grafic cu 2 dimensiuni cu axa XY și să încercăm să trasăm ecuațiile și inecuațiile. Vom avea cu noi următoarele lucruri:
- a + b = 5 este o linie dreaptă care taie axa x la (5,0) și axa y în punctul (0,5). Deoarece avem un semn de egalitate în expresia noastră, suntem siguri că regiunea noastră fezabilă se află în zona de intersecție a acestor linii.
- a >= 2 este o linie dreaptă care taie axa x ca (2,0). Deoarece expresia noastră are o constrângere mai mare decât, regiunea noastră fezabilă se încadrează în RHS-ul liniei noastre.
- b <= 4 este o linie dreaptă care taie axa y la (0,4). Deoarece avem o constrângere mai mică, regiunea noastră fezabilă este zona de sub linie.
- În cele din urmă, deoarece a și b sunt ambele valori pozitive, domeniul nostru de preocupare este primul cadran.
Dacă ați trasat aceste linii și constrângeri pe o foaie grafică, veți avea regiunea finală care îndeplinește toate condițiile cerute. Cele două puncte care se află la cea mai extremă a acestei linii sunt considerații posibile pentru maximizarea profitului. Acestea sunt punctele (2,3) și (5,0). Pentru a afla care dintre aceste două oferă profituri mai bune, putem pur și simplu să punem punctele în funcția noastră obiectiv și să vedem care dă cel mai bun rezultat:
- c = 5a + 6b ⬄ c = (5*2) +(6*3) = 28
- c = 5a + 6b ⬄ z = (5*5) +(6*0) = 25
După cum puteți vedea, obținem o valoare a profitului mai mare pentru opțiunea A. Deci, soluția noastră care oferă cele mai bune profituri este următoarea => 2 kg de factor X și 3 kg de factor Y!
In concluzie
Problemele de optimizare nu se termină – mai ales când vorbim într-un context de afaceri. Companiile se confruntă cu provocări de optimizare mai des decât și-ar dori. Ca urmare, doar metoda grafică nu este suficientă pentru a rezolva mai multe probleme tehnice de optimizare.
Trebuie să înțelegeți instrumente sau limbaje de programare importante pentru a realiza optimizarea liniară a problemelor multivariabile cu succes. Dar vestea bună este că nu este atât de dificil să te apuci să lucrezi cu instrumente relevante sau limbaje de programare. Întregul domeniu al științei datelor este foarte primitor, ceea ce face mai ușor pentru oameni din orice mediu să își construiască o carieră în știința datelor, dacă au un interes.
La upGrad, am îndrumat studenți din întreaga lume cu medii diverse și i-am ajutat să dezvolte cunoștințele teoretice relevante și expertiza practică necesare pentru a reuși în știința datelor. Consultați programul nostru executiv de studii postuniversitare în știința datelor pentru mai multe informații despre structura cursurilor, programul nostru și avantajul upGrad!
1. Este programarea liniară legată de programarea computerelor?
Nu, programarea liniară se referă la realizarea optimizărilor sub constrângeri. Nu are legătură cu programarea computerelor în sensul tradițional al cuvântului.
2. Când este cea mai necesară programarea liniară?
Aveți nevoie de programare liniară atunci când optimizați unele variabile de decizie sub diferite constrângeri. Este util în timpul analizei predictive și ajută companiile să facă predicții mai bune.
3. Programarea liniară trebuie făcută manual?
Nu, există diverse instrumente - atât open-source, cât și altele - care vă pot ajuta să efectuați programarea liniară.