First off, if you ever need to see how to use a function here is a good place to look. Not sure if you have seen this or not, but there is a small explanation of all of the functions here.
http://game-editor.com/docs/script_reference.htm
To do random movement, it depends on what you will be using it for... The problems are what defines smooth, where the movement is confined to, and how random is random. There are many ways to accomplish this, but it all depends on what you want it for. Some methods are to constantly alter the xy velocity variables, or just the xy values. You would either have this happen all the time, or once a second, depends on the level of smoothness. You would either set them with a rand, or alter them, altering would allow for a higher sense of smoothness. You could also use a variable that determines what type of movement the actor should be doing at the time, and set that with a switch... The list can go on, but it would help to know what you want it for to be able to give you a really good answer.
As far as timers go, they are pretty basic. You can create a timer event, and after the given time, it will trigger the event for a specific actor. So if I create a timer for the actor test set at 500ms, 500ms from then test will receive an event. This does not much matter, unless test has a timer event. The timer event is made by adding an event, Timer, and then you pick which timer you want to trigger the event... Not sure if that made sense, I can make a demo of it if you want, though there might be some already on the forums.