1) Bring a large pot of water to a boil over high heat, then salt it generously. Add the penne and cook, stirring occasionally, until al dente - tender but not mushy. Drain the pasta in a colander set in the sink. Transfer to a large bowl.
2) Meanwhile, heat 2 tablespoons of the oil in a large skillet over medium-high heat. Add the cauliflower, shallots, and garlic, and cook, stirring, until the cauliflower is well browned, about 8 minutes. Reduce the heat to medium. Add the remaining 2 tablespoons of oil, 2 tsp salt, water, vinegar, raisins, honey, capers, thyme, bay leaf, fennel seeds, if using, and season with black pepper. Bring to a simmer, cover, and cook until cauliflower is fork tender, about 7 to 8 minutes. Remove from the heat and add the pine nuts and parsley. Remove and discard the thyme and bay leaf.
3) Toss vegetables and pasta together along with the pecorino. Drizzle with additional olive oil, if desired. Serve immediately, passing more cheese at the table.