added traveling salesman algorithm