I have a bit of a problem.

I have been playing guitar about 2 years now, and I love it. I can play fast I suppose, shred if you will.

I can run DOWN scales quite ok, but running UP is hard. It just seems that I cant get a smooth change from string.

Hell i can sweep better than run up (Serrana anyone??!!).......I need some advive. Cheers guys.
Go slow...very slow at first if need be. Dont rush it. Also make sure that every time you go up a string your not just picking up...make sure its a solid down, up, down, up, down, up.
My Gear:

Ibanez Prestige 1570L
LH Fender Standard Stratocaster Arctic White
Ibanez Gax 70L
Roland Cube 30X
Vox V847 Wah
Boss BD-2 Blues Driver Pedal

RedSox are better than you.
Practice, practice, practice. The 4,3,2,1 exercise from the high E to low E string is good to work those upstrokes. Make sure you use a metronome to be consistent on your timing.
Besides being a guitar player, I'm a big fan of the guitar. I love that damn instrument. Steve Vai

Kramer Striker FR422SM
Roland Microcube
Digitech Bad Monkey
Dunlop Tortex 1.14mm picks

To really practice your alt picking, do runs with odd numbers of notes per string (i.e. 3 note runs on each string) to really make you focus on staying consistant with your up-down-up-down movement.
hi. I had the same problem and to fix it i would play loads of different patterns even if they dont sound good up a chromatic scale.
Yeah, all you gotta do to get good at most things in guitar is do them SLOW! Start off slow trying to make it 100% accurate, then if you can do that, progress! It REALLY helps to play with a metronome too. I have John Petrucci's rock discipline book, and on one of the exercises, he uses a metronome at 66 BPM, and ascends, and then descends, an A Major scale on the 1st position. Then after you get that 100% at 66 BPM, and you start doing it at the same BPM, but start doing things like 8th notes, and then 16th notes.
When going up and its an even number of hits I start on up instead of down. Say it's a sextuplet and you go down-up-down-up-down-up...you would have to skip over the original string to get to the next one. However, if you did that going down you would be ready to hit the string above it...
That was the problem I had going up anyways...