My Math Disability and Learning Calculus for Procedural Generation and Artificial Intelligence

Started by
8 comments, last by alvaro 5 years, 4 months ago

I have a diagnosed math disability and I really struggled with PreCalculus this semester. I know I won't be doing much with Calculus as software engineer because I don't want to be involved professionally with a game company. I think I have the ability to pass the course, but it takes me a very long time to study and resultingly leaves me very little time to study for my other classes. This makes it very difficult for me to keep up my GPA. I tend to only get "passing" grades in Math subjects regardless. Also, I have to attend full-time because of the requirements for the Financial Aid I need to have to pay for college. Computer Science majors need to attend both Calculus 1 and Calculus 2. The Computer Science Department in my college doesn't allow us to make our own custom degrees.

However, I do want to continue making games as a hobby. I want to be able to learn how to do fairly "fancy" things like create procedurally-generated worlds, and I want to have at least some ability to create AI for monsters and such.

My question is, knowing this, should I see if I can get a waiver for Calculus 1 and 2?

Advertisement

Disclaimer: I don't have any experience with people with math disabilities.

With that out of the way, if it makes sense for your academic career to get that waiver, do it. Whatever you don't learn by not taking calculus you can always learn when you need it. Actually, most people will learn math better if they have a motivating problem they are trying to solve.

I'm curious if you can follow the explanations in these videos:

https://www.youtube.com/playlist?list=PLZHQObOWTQDMsr9K-rj53DwVRMYO3t5Yr

 

 

On 12/11/2018 at 1:46 PM, alvaro said:

Disclaimer: I don't have any experience with people with math disabilities.

With that out of the way, if it makes sense for your academic career to get that waiver, do it. Whatever you don't learn by not taking calculus you can always learn when you need it. Actually, most people will learn math better if they have a motivating problem they are trying to solve.

I'm curious if you can follow the explanations in these videos:

https://www.youtube.com/playlist?list=PLZHQObOWTQDMsr9K-rj53DwVRMYO3t5Yr

 

 

Thank you for the reasoned response. I think I can follow the video fairly well. That video seems very well done, and explains things a lot better than what I am used to from my my math teachers/professors. 

I didn't watch the whole series, but my problem mostly stems from being unable to remember a bunch of different formulas, identities, types of notation, and other such things very well. I can do it, but it takes more repetition, and I still have to think for awhile to remember them, and figure out what tools go with which problem.

I am worried that if I skip Calculus I won't have the foundational knowledge necessary to learn procedural generation and artificial intelligence. 

If the explanations in those videos make sense to you, there is a good chance you can do calculus just fine. The key test is whether you can learn to solve problems.

Math really is about solving problems. Knowing formulas and arithmetic facts is not very important. I do math for a living, and I remember very few formulas myself. But if I understand the concepts well, I can usually make a little diagram of the situation and derive whatever formulas I need.

It sounds like in your math classes so far things have been framed as "here's a type of problem we may ask you about, here's a formula where you can plug in some numbers to solve that type of problem." That's not at all what real mathematics feels like.

Good luck to you, whatever you end up doing.

 

Don't forget that Wolfram Alpha is there to help you calculate derivatives and integrals, if you find yourself stuck:

https://www.wolframalpha.com/input/?i=derivative+of+cos(x)

You can also unlock the step-by-step mode for an inexpensive price. This shows you how to calculate derivatives and integrals step-by-step:

https://www.wolframalpha.com/pro/pricing/students/

 

 

On 12/13/2018 at 10:17 AM, alvaro said:

If the explanations in those videos make sense to you, there is a good chance you can do calculus just fine. The key test is whether you can learn to solve problems.

Math really is about solving problems. Knowing formulas and arithmetic facts is not very important. I do math for a living, and I remember very few formulas myself. But if I understand the concepts well, I can usually make a little diagram of the situation and derive whatever formulas I need.

It sounds like in your math classes so far things have been framed as "here's a type of problem we may ask you about, here's a formula where you can plug in some numbers to solve that type of problem." That's not at all what real mathematics feels like.

Good luck to you, whatever you end up doing.

 

Thank you! I'm not sure if this is just because I have a math disability, but I sometimes hear people talk about how real mathematics is about logic, not memorization. I'm sure that's true.

The problem is, on an exam, I don't have the time to figure out how [1 + cos(2x)] / 2  = cos^2(x), I have it memorized, or I get it wrong.

Your answers have been really helpful for me. I will definitely think about what you said. It's not like I don't understand the problems conceptually, I just have a lot of trouble memorizing all the related stuff. Would you please tell me whether calculus is necessary to understand procedural generation and artificial intelligence? This is primarily why I feel like I may want to take Calculus 1 and 2.

Also, sorry I can't get the MATH notation here to work.

On 12/13/2018 at 12:14 PM, cowcow said:

Don't forget that Wolfram Alpha is there to help you calculate derivatives and integrals, if you find yourself stuck:

https://www.wolframalpha.com/input/?i=derivative+of+cos(x)

You can also unlock the step-by-step mode for an inexpensive price. This shows you how to calculate derivatives and integrals step-by-step:

https://www.wolframalpha.com/pro/pricing/students/

 

 

I've recently found out about that too. I wish I had known it beforehand. This will really help me, thank you.

Here's how I'd figure out the relation between cos(2x) and cos(x) (which I actually don't remember). One of the very few formulas I do remember is:

exp(i*x) = cos(x) + i*sin(x)

Even for this formula, what I really remember is that exp(i*x) is a point in the unit circle at an angle x, and the rest I can write down from there.

Computing the square of that, I get

exp(i*2*x) = (cos(x) + i*sin(x))^2

But we also have

exp(i*2x) = cos(2x) + i*sin(2x)

If I look at the real part of those two expressions, I think I'll get the identity I want:

cos(x)^2 - sin(x)^2 = cos(2x)

I can get rid of the sin(x)^2 because I know that cos(x)^2+sin(x)^2=1. Again, this is not something I remember, it's just the fact that cos(x) and sin(x) are the coordinates of a point on the unit circle.

cos(x)^2 - (1 - cos(x)^2) = cos(2x)

2*cos(x)^2 - 1 = cos(2x)

cos(x)^2 = (cos(2x)+1)/2

 

There you have it. With a little bit of practice, this process doesn't take much time at all. If I have been doing trigonometry problems recently, I might remember the formula for a little while, but in the long term, I know I'll be able to derive it when I need it.


 

 

2 hours ago, RidiculousName said:

[...] Would you please tell me whether calculus is necessary to understand procedural generation and artificial intelligence? This is primarily why I feel like I may want to take Calculus 1 and 2.

Oh, sorry I missed that question at first. Calculus is necessary to understand the world, so I recommend taking it in general.

I don't know how necessary it is specifically in procedural generation. Perhaps to understand Perlin noise it's a good idea to know some calculus. But you can probably just treat it as a black box, use it to make some pictures and never bother with the fine details.

For AI, the only place where you absolutely need it is for computing the gradient of a loss function in machine learning ("backpropagation"). And again, these days there are many libraries that do the dirty work for you, so you can probably get away with very little understanding of the details.

 

This topic is closed to new replies.

Advertisement