Why would one need multiple instances of same Oracle database?
For availability (one instance goes down, another instance can continue to work), handling load between nodes (adding more nodes on as needed basis) and possibility to dynamically allocate resources based on needs. That is achieved by using Oracle RAC (Real Application Cluster) where instances are running on separate machines. 
In Oracle for version up to and including 11.2, one database can be used by one instance (basic setup) or more instances (Oracle RAC). 
 It's expected to see paradigm shift for instance vs database with soon-to-be-released Oracle 12c (having more databases inside one instance).