I am also working on something similar. In my case, I used a "If, else code block" in Field calculator after combine operation.
for ex:
expression = "lc_change(!lc_1992!, !lc_2011!)"
codeblock = """def lc_change(lc_1992, lc_2011):
# For water (11) in 1992
if lc_1992 == 11 and lc_2011 == 11:
return 11
if lc_1992 == 11 and lc_2011 == 21:
return 21
................................
else:
return 0
This will give you a field with new values. Then, you can do a Lookup operation or reclass to create a new raster with the values assigned in the new field. This is what I am doing. If you have any other method, please post in here.
It may more efficient if there is a way to read a reclassifying matrix table directly and assign new values.