Schema: CREATE TABLE table_name_22 (constructor VARCHAR, driver VARCHAR, time_retired VARCHAR, grid VARCHAR)
Question: Which constructor had a Time/Retired of collision, where the grid number was less than 18 and Nick Heidfeld was the driver?
SQL: SELECT constructor FROM table_name_22 WHERE time_retired = "collision" AND grid < 18 AND driver = "nick heidfeld"