Это должно работать,
$route['tags/(:any)'] = 'tags/index/$1';
$route['tags/(:any)'] = 'tags/view/$1';
$route['tags/(:any)/(:num)'] = 'tags/index/$1/$2';
$route['tags/(:any)/(:num)'] = 'tags/view/$1/$2';
и аргументы метода должны иметь
public function index($type, $id='')
public function view($type, $id='')
Убедитесь, что в противном случае возникнет ошибка.
Вы добавили $1
в ключ маршрутов, которые CI
не примет.