How exactly do I 'see' the function I need to make for optimization? Optimization problems in Calculus seems to be my white whale. I always seem to struggle with it.
I know that once I find the function I need to manipulate with it's pretty much smooth sailing from there. find f'(x), Set to zero, solve, plug back into f(x). But I can't seem to know how to come up with the original function to create. I can write about an optimization problem concerning a bridge I'm currently working on, but I fear having answers simply given to me. (Given answers are no help at all.)
But how can you take information given from the problem to make your function? The more simplified optimization problems dealing with cut boxes or the relationship of two numbers are easy enough but when I get to higher forms of thought like sales or said bridge problem I get lost. 
 A: The basic way to structure optimization problems (and most problems, really) is to start with these things:


*

*What do I want to optimize?

*What do I know about the quantity to be optimized?

*What things are under my control to affect the quantity to be optimized?

*What functions, equations, or knowledge do I have that lets me describe the quantity I want to optimize in terms of what I can control? (We'll ignore noise variables for this)

*What limits or constraints do I have? How are they affected by the variables I can control?


For your problem, you know want to optimize some property of the bridge. Think about what makes that property of the bridge. If it's cost, then you might have to sum up the cost of all the materials. If it's strength, you might have to sum up amounts of material used in certain parts of the bridge. 
As you build relationships that map from various bridge features/properties to the one you want to optimize, think about which ones are under your control. For a bridge, you might be able to pick discrete things, like a material type. Or you might be able to pick a continuous thing, like the height of a truss.
Once you have an idea of the relationships in your problem, you can start building functions or models of those relationships to put into the computer (or to do it by hand). Those models and functions will depend on how much accuracy you want, what level of abstraction you're willing to accept, etc. For example, if you're making a covered bridge and you want to find the shape of the cover that minimizes an amount of paint needed for the cover, then you might be willing to ignore structural integrity for the time being.
As you build models/equations, don't be afraid to continue to break the problem into smaller and more manageable pieces. I wouldn't attempt to build a giant equation or model all in one go. Work on the pieces that you understand, and them assemble them in the end. Whenever you run into parts that you realize you don't understand, then go and do some research to try to understand them. See what other people have done and modify it for your needs.
Finally, you need to think about constraints. These can be some of the hardest parts, since you usually have to turn a phrase like "make sure the shape of the bridge opening can fit these vehicles" into an equation or model. In most cases, you'll just need to sit down, draw out any diagram or write any sentence you can that describes the constraint. Think about how you'd just normally decide if you met a constraint or not.
For the bridge cover shape example, if you are constrained by the shape of cars entering, you might go to a piece of paper and draw boxes that represent the biggest cars that can go through. Then just sketch a bridge cover shape over it. You might see how you can write limits for the smallest possible width and height of the cover, otherwise it would intersect the cars.
Some of it is practice, too. You need to get comfortable with the idea that you could represent constraints in many different ways, that you can represent your objective in many different ways (usually classwork just has one way, though), and that you just need to pick one that models what you care about to a level of accuracy/information that you are satisfied with.
When in doubt, just try something and see what you get. You can always edit a bad model, you can't edit spinning your wheels! The process of trying, looking at the results, and iterating will help teach you a lot. 
