You can do something like:
max_processes=20
for ((i=0; i<$max_processes; i++))
do
/path/to/myprog arg1 arg2 > /tmp/myprog.${i}.log &
done
Or if the output of each one is command is relevant during execution, you can setup screen.
vi ~/.screenrc
screen -t inst1 1 /path/to/myprog arg1 arg2
screen -t inst2 2 /path/to/myprog arg1 arg2
screen -t inst3 3 /path/to/myprog arg1 arg2
screen -t inst4 4 /path/to/myprog arg1 arg2
The screen requires more manual work.