2010-05-13, 16:00
  #1
Medlem
Ockletts avatar
Jag skulle vilja veta hur man skapar en formel från en lista med tal i.
Hur ska man gå till väga om man ska göra om denna lista till en formel: f(x) = ?
  1. 6
  2. 23
  3. 27
  4. 25
  5. 22
  6. 35
  7. 30
  8. 9
  9. 5
  10. 4
Citera
2010-05-13, 16:04
  #2
Medlem
NettoThomass avatar
Det finns ganska många sätt. Vet du om du vill ha t.ex. ett polynom eller en trigonometrisk?
Citera
2010-05-13, 16:19
  #3
Medlem
Ockletts avatar
Citat:
Ursprungligen postat av NettoThomas
Det finns ganska många sätt. Vet du om du vill ha t.ex. ett polynom eller en trigonometrisk?
Nej men du kan gärna visa båda varianterna om du vill.
Citera
2010-05-13, 16:39
  #4
Medlem
NettoThomass avatar
Ok, eftersom det är väldigt många punkter så blir detta väldigt jobbigt att anpassa exakt för hand. Har du en räknare som kan hantera listor? t.ex. en TI-84 eller liknande? Annars finns det matematikprogram som kan ta fram det på ett bra sätt. Matlab är ett sånt program.
Hur du än gör så måste du i alla fall gör en del räkningar. Hur mycket matte har du läst?
Citera
2010-05-13, 16:42
  #5
Medlem
Ockletts avatar
Citat:
Ursprungligen postat av NettoThomas
Ok, eftersom det är väldigt många punkter så blir detta väldigt jobbigt att anpassa exakt för hand. Har du en räknare som kan hantera listor? t.ex. en TI-84 eller liknande? Annars finns det matematikprogram som kan ta fram det på ett bra sätt. Matlab är ett sånt program.
Hur du än gör så måste du i alla fall gör en del räkningar. Hur mycket matte har du läst?
Allt jag behöver kunna är teorin och eftersom min lärare är lite vag och okunnig i sin beskrivning så vet jag inte hur jag ska gå tillväga. Ska göra ett eget program som är lite precisare än min TI-84 räknare. Men som ni ser behöver jag er hjälp och ni får gärna säga allt som man bör tänka på när man skapar en formel så blir jag glad.
Citera
2010-05-13, 16:48
  #6
Medlem
NettoThomass avatar
Citat:
Ursprungligen postat av Ocklett
Allt jag behöver kunna är teorin och eftersom min lärare är lite vag och okunnig i sin beskrivning så vet jag inte hur jag ska gå tillväga. Ska göra ett eget program som är lite precisare än min TI-84 räknare. Men som ni ser behöver jag er hjälp och ni får gärna säga allt som man bör tänka på när man skapar en formel så blir jag glad.

Har du fått i uppgift alltså att anpassa punkter exakt till en funktion eller ska ni göra en ungefärlig? Jag håller på att läsa om sånt här just nu på högskolan men jag får inte uppfattningen som att uppgiften kommer därifrån. Eller har jag helt fel?
För att få fram en funktion så kan du lägga in alla punktvärden i en lista. Har för mig att man trycker på stat sedan edit eller liknande. Du kan någonstans hitta att anpassa punkterna efter en viss slags funktion. Jag ska se om jag hittar min gamla räknare och kan ge mer info ifall det är detta du är ute efter?
Citera
2010-05-13, 16:53
  #7
Medlem
Ockletts avatar
Citat:
Ursprungligen postat av NettoThomas
Har du fått i uppgift alltså att anpassa punkter exakt till en funktion eller ska ni göra en ungefärlig? Jag håller på att läsa om sånt här just nu på högskolan men jag får inte uppfattningen som att uppgiften kommer därifrån. Eller har jag helt fel?
För att få fram en funktion så kan du lägga in alla punktvärden i en lista. Har för mig att man trycker på stat sedan edit eller liknande. Du kan någonstans hitta att anpassa punkterna efter en viss slags funktion. Jag ska se om jag hittar min gamla räknare och kan ge mer info ifall det är detta du är ute efter?
Det är ett eget projekt och har inget direkt med skolan att göra trots att man kan använda det där också. Jag ska försöka anpassa en formel till en lista så noggrant som möjligt. Och jag behöver bara teorin inom området för att kunna lösa problemet. Du kanske kan få programet när jag är klar med det, om du nu ger mig den information jag behöver. Jag vet hur man hittar formel för en lista på miniräknaren men resultaten av det är kanske inte det mest optimala.
Citera
2010-05-13, 16:58
  #8
Medlem
NettoThomass avatar
Citat:
Ursprungligen postat av Ocklett
Det är ett eget projekt och har inget direkt med skolan att göra trots att man kan använda det där också. Jag ska försöka anpassa en formel till en lista så noggrant som möjligt. Och jag behöver bara teorin inom området för att kunna lösa problemet. Du kanske kan få programet när jag är klar med det, om du nu ger mig den information jag behöver. Jag vet hur man hittar formel för en lista på miniräknaren men resultaten av det är kanske inte det mest optimala.

Ok, det kan bli lite problem. Jag hade använt mig av något som kallas minsta-kvadratmetoden för att göra en polynomfunktion så nogrannt som möjligt. Din funktion beter sig på ett väldigt jobbigt sätt och det finns därför ingen mirakelkur för att få fram en viss funktion.

Jag menade att TI-84 har inbyggda funktioner för att ta fram en funktioner till punkter så nära som möjligt. Allmänt för att få fram ett perfekt polynom för n antal punkter så måste polynomet vara av grad n-1.
Citera
2010-05-13, 17:15
  #9
Medlem
Ockletts avatar
Citat:
Ursprungligen postat av NettoThomas
Ok, det kan bli lite problem. Jag hade använt mig av något som kallas minsta-kvadratmetoden för att göra en polynomfunktion så nogrannt som möjligt. Din funktion beter sig på ett väldigt jobbigt sätt och det finns därför ingen mirakelkur för att få fram en viss funktion.

Jag menade att TI-84 har inbyggda funktioner för att ta fram en funktioner till punkter så nära som möjligt. Allmänt för att få fram ett perfekt polynom för n antal punkter så måste polynomet vara av grad n-1.
Alltså ska man ta till hänsyn till antal max - och minpunkter? vad y är när x är noll? derivata, osv? Jag går 2:a året i gymnasiet och ligger inte kunskapsmässigt lika långt fram som du. Skulle du kunna lära mig vad jag ska ta till hänsyn till när jag programmerar ett program som ger formler från listor? Inget annat
Citera
2010-05-13, 17:24
  #10
Medlem
NettoThomass avatar
Citat:
Ursprungligen postat av Ocklett
Alltså ska man ta till hänsyn till antal max - och minpunkter? vad y är när x är noll? derivata, osv? Jag går 2:a året i gymnasiet och ligger inte kunskapsmässigt lika långt fram som du. Skulle du kunna lära mig vad jag ska ta till hänsyn till när jag programmerar ett program som ger formler från listor? Inget annat

Max och minpunkter, derivator osv kommer efterhand som polynomet är klart. (Jag har antagit att det är ett polynom du vill ha). Jag kan inte ge dig en enkel formel för hur man tar fram en funktion från en lista av tal, använd redan klar programvara för detta. Det är en bit över din kunskapsnivå att ta fram detta effektiv. Hur du skulle kunnna göra är att göra ett väldigt stort ekvationssystem som du sedan löser, men detta finns som sagt redan inbyggt. Du kan ju även själv skissa en bild av alla punkterna och säga vad hur du tycker funktionen ser ut ungefär.
Citera
2010-05-13, 17:33
  #11
Medlem
maitos avatar
Det verkar som att du inte vet hur svårt det du frågar efter är egentligen. Jag skulle gissa att det kräver åtminstone månader av studier innan du ens kan börja programmera.
För att din uppgift inte ska bli allt för svår rekommenderar jag dig att att göra grava inskränkningar på mängden problem ditt program kan lösa. Gör till exempel ett program som anpassar en kvadratisk funktion (högsta gradtalet 2) till en mängd datapunkter borde inte vara så svårt. Alternativt ett program som frågar hur högt gradtal polynomet ska vara och sen räknar ut det.
Att göra ett program som av sig själv approximerar en godtycklig funktion ( alltså själv väljer om det ska anpassa ett polynom, trigonometrisk, exponentiell etc. funktion) på bästa sätt tror jag inte ens är möjligt.

Börja med att läsa här http://en.wikipedia.org/wiki/Least_squares
Citera
2010-05-13, 22:14
  #12
Medlem
pausonKhands avatar
Citat:
Ursprungligen postat av maito
Att göra ett program som av sig själv approximerar en godtycklig funktion ( alltså själv väljer om det ska anpassa ett polynom, trigonometrisk, exponentiell etc. funktion) på bästa sätt tror jag inte ens är möjligt.

Det är inte möjligt. Ett sådant program kan inte existera eftersom indata kan vara en enda punkt. Då måste du i förväg definiera en prioritetslista på vilka funktioner som har företräde framför en annan.
Citera
  • 1
  • 2

Skapa ett konto eller logga in för att kommentera

Du måste vara medlem för att kunna kommentera

Skapa ett konto

Det är enkelt att registrera ett nytt konto

Bli medlem

Logga in

Har du redan ett konto? Logga in här

Logga in