model-based control與data-driven control各自特點以及適用場合?


謝邀。 @dreamit

這個貼一下大牛Alessandro Astolfi書中對兩個方面的看法,個人比較贊同。

Numerous
theoretical control design methodologies for nonlinear systems have emerged
over the last two decades. When viewed from a conceptual standpoint, they can
be broadly classified into analytically-oriented
and computationally-oriented. (The qualifiers analytical and
computational are used to distinguish between symbolical analysis and numerical
computations.)

The former
approach, which is the one adopted in this book, proceeds from an analytical
model of the system, and the controller design is the outcome of a systematic
process that guarantees some specific behaviour. Since stability is a sine qua non condition, research following this approach
usually runs under the heading robust
stabilisation,
and it includes Lyapunov-based methods, gain-assignment methods, and classical
robust and adaptive tools.

Computationally-oriented
techniques, on the other hand, do not necessarily require an analytical model,
and they may be developed on the basis of a numerical model of the system to be
controlled—obtained, for instance, by collecting large amounts of data to
approximate its behaviour. Neural networks based control, fuzzy control and
intelligent control are the more conspicuous representatives of this school.
Recently, a second class of computationally-oriented techniques, that relies on
analytical models of the system, has gained some popularity. In an attempt to
mimic the developments of linear systems theory, piecewise linear (or linear
parameter-varying) models are proposed to capture nonlinear effects. Typically
some optimal control objective is formulated and the task of the controller
design is to prove that, for the given numerical values of the system model,
the optimisation is feasible, e.g., it
can be translated into linear matrix inequalities, and a control signal can be numerically
computed. The optimal control approach suffers
from two drawbacks. First, the solutions are fragile with respect to plant
uncertainty, e.g., lack of full state
measurement and parametric uncertainty, which is the prevailing concern in
many, if not all, practical applications. Second, computation of the optimal
control law is feasible only for low-dimensional systems, which puts a serious
question mark on the applicability of the method for nonlinear systems. In
addition there is not always a clear reason, besides mathematical convenience,
to express the desired behaviour of a dynamical system in terms of a scalar
criterion to be optimised.

In summary,
computationally-oriented approaches, while leveraging off a swiftly growing
computer technology, provide solutions to some specific problems, but do not
aim at explaining
why, how and when these solutions
indeed work. At a more philosophical level, it is the authors』 opinion that
controller design should not be reduced to the generation of numerical code
that implements a control law, without any attempt to try to understand the
underlying mechanism that makes it work. This information is encoded in the
nonlinear system dynamics and revealed through a full-fledged nonlinear
analysis.

—— Nonlinear and adaptive control with applications, Alessandro Astolfi, Dimitrios Karagiannis and Romeo Ortega.


做了幾年的數據驅動控制,有一點自己的體會,和題主分享一下。

我個人比較贊同是侯忠生老師的觀點,具體可以參考其所寫的綜述

1)From model-based
control to data-driven control: Survey, classification and perspective 2)數據驅動控制理論及方法的回顧和展望

在第一個文獻中給了基於模型(MBC)和數據驅動控制(DDC)之間的關係,個人覺得比較在理。侯忠生老師的觀點是兩者應該互為補充,而非對立的關係,並在下圖中給出了其各自的適用範圍。

Model-based
control
即控制器設計依賴模型,需要知曉被控對象的數學模型。典型的有最優控制,自適應控制,魯棒控制等。其發展時間長,分析工具成熟。當模型精確已知,就完全可以用已有基於模型的方法,這些控制方法已經在諸如航空航天領域證明了其強大的威力。但並非所有情況下這些方法都適用,因為某些情況下模型無法精確獲得。

Data-driven
control
即控制器設計不依賴系統的模型結構參數等信息,直接利用數據,得出控制律。典型的方法有近似動態規劃,無模型自適應控制,去偽控制,迭代學習控制等。

因為現實中有些複雜系統的模型是很難建立的,即使建立也非常不準。例如大型交通路網,雖然有類似S-F這樣的模型,但其適應範圍也一直存在爭議,在這種情況下,採用基於模型的演算法就很能發揮作用。在當今社會,系統的數據獲得已經不是一個問題,一個系統可能無法建模,但卻可以獲得很多的輸入輸出數據,這些數據包含了系統的各種信息,如果能直接有效地利用這些數據,從數據出發直接設計控制器,就能迴避很多基於模型控制演算法中的問題,從而實現對這類系統的控制。

現有常見數據驅動控制方法基本從上世紀90年代初開始發展,到現在也不過20多年,很多方法也依舊在發展中。有些朋友可能認為數據驅動控制不靠譜,但事實上最常用的PID控制就是一種數據驅動控制,因為它的控制輸入設計直接由誤差的反饋組成,不考慮模型信息,而PID到如今依舊是最普遍的控制演算法,也反映了數據驅動控制的有效性。

關於收斂性證明,因為所有的證明都要有假設,即使是那些基於模型的控制方法,其收斂性證明也是在假設被控系統完全符合模型的動力學描述情形下的。而現實中哪怕是一個單容水箱的特性也會隨著各個元器件的特性不同(例如感測器的時變非線性)而無法精確描述。所以這些收斂性的證明也是在某些前提下的。事實上,數據驅動控制在某些假設的前提下也是可以證明其穩定性的,而非直接所想的那樣通過無數組數據進行試湊。

因為不是學術回答,所以有些內容可能不準確,具體可以參考上述兩篇文獻。


跑題的答案。

二者孰好孰壞不知道,但看到 @PseudoCat 的答案,讓我想起了之前讀過的 Gerald M. Weinberg 的一段話(The Secrets of Consulting: A Guide to Giving and Getting Advice Successfully https://www.amazon.com/Secrets-Consulting-Giving-Getting-Successfully/dp/0932633013):

THE WEINBERG TEST

Consultants are downstream from nobody. This gives them a difficult responsibility when instituting change for their clients. Clients realize that consultants are protected from the consequences of their own recommendations, which is one reason consultants are often the butt of nervous jokes. These jokes put consultants in the same category as professors. Professors claim that if a student passes the test, it was a brilliant course. If the student fails, however, they claim it was a stupid student. Under those conditions, its never the fault of the professor, which makes it difficult to maintain an effective curriculum. Most universities solve this problem by prohibiting any measurement of their effectiveness.

Measuring Effectiveness

While attending a computer conference in Davos, I found myself listening to a panel of three professors who debated the subject of computer science education. After describing their three different approaches to curricula, the panelists solicited questions from the floor. Someone asked, "How do you measure the effectiveness of your curricula?"

Instead of a reply, there was much clearing of throats, hemming, mumbling, and hawing. The audience stirred in their seats and hooted remarks concerning the usefulness of colleges and the mental capacity of the professors. Finally, one of the panelists challenged the audience to propose their own measurements. When nobody else seemed willing to take the risk, I accepted the challenge."

Imagine," I said, "that this conference is finished and you have taken the train to Zurich to fly home. You have boarded your flight and the doors have been locked when you hear the following announcement blare over the loudspeaker in an artificial voice:

Fellow passengers: Today, you are participating in a historic event, the first fully automated commercial flight. From this moment on, until you arrive at the gate at your destination, this plane is under the complete control of a microcomputer. There is no human pilot or co-pilot, but you need not be concerned for your safety. The program that controls the plane was accepted as a thesis project for a doctorate in computer science at X University. Bon voyage! "

The true test of your curriculum," I continued, "is how you feel at that moment."

Apparently, the professors on the panel didnt think my test was helpful, but the audience broke into uncontrollable giggles. The moderator tried to restore order, but the audience seemed to have lost interest in what the panelists had to say, once the panel had labeled my test as ridiculous. I, myself, was feeling rather downhearted, for I had intended the test as a serious standard, the most serious standard I could imagine.

As the room cleared, I was approached by a short, white-haired man, sporting a goatee and wearing a three-piece gray suit. He addressed me in English with a German accent: "Professor Weinberg, I liked your test. Unlike the panel members, I believe it to be a serious test, and I wanted to tell you that it correctly measures my own curriculum."

I was delighted to have someone take me seriously, so I asked, "And how would you feel when you heard the announcement?"

His reply surprised me. "Oh, I wouldnt be worried at all. I would he completely confident of my safety."

"Really? Is your program that good?"

"Not at all," he answered, a twinkle in his eye. "But if one of our students wrote the system, it wouldnt even start the engines!"

Putting Your Money

Over the years, whenever anyone asks me how to measure risk, Ive recalled the goateed professor. Although there are many tests one might apply, The Weinberg Test seems to occupy a fundamental place in the hierarchy of all possible tests. In brief, The Weinberg Test asks,Would you place your own life in the hands of this system?

Not all systems need such a severe test, so I have constructed weaker versions of The Weinberg Test, such as,

Would you risk your right arm?

Would you risk your left hand?

Would you risk your lifes savings?

Would you risk a months salary?

Would you risk 10 dollar of your own money?

Ive used the 10 dollar test several hundred times with computer programmers who assert that their program is now bug-free. Ninety-five times out of a hundred, the programmer backs down and refuses to wager 10 dollar that I cant find a bug in a reasonable amount of time. The other five times out of a hundred, I win 10 dollar.

Its not hard to be confident with other peoples money. The essential element of The Weinberg Test is the requirement that the claimant risk something personal, rather than simply blabber some empty abstractions.

As consultants, were trying to apply Fords Fundamental Feedback Formula to ourselves, at least conceptually. In street language, The Weinberg Test is called "putting your money where your mouth is."

When we consultants propose changes, the first thing we should do is decide what level of Weinberg Test were designing for, then put our own feelings on the line. If human lives are at stake, then our own feeling of safety is the minimum goal. If money is at stake, then we have to personalize that money on a scale wed feel if it were our own money.

In the engineering disciplines, it took many deaths to provide the motivation for improving the state of the art. Ships sank, bridges collapsed, buildings burnt, airplanes crashed, steam engines exploded. How many human lives will we have to sacrifice before consultants learn how to do it right the first time?

I hope we wont have to sacrifice any. But what about other sacrifices—of time, of money, of human comfort? When life or death is not directly involved, we havent done so well at personalizing the outcome. Perhaps The Weinberg Test could save more than lives. Perhaps it could save our jobs, our reputations, and even our self-respect.

我想,這個不僅僅可以作為 model-based control 與 data-driven control 的 test。


謝題主邀請~

最近在新加坡實習,所以沒有太多的時間上知乎答題,答案有疏漏之處還望諒解。

題主的問題不是特別的難回答,因為具體的很多內容憑藉網路就可以解決。這裡拋磚引玉。

看到題主的文字提到了Model-based control 和 Data-driven control,題主的英文應該可以的吧,如果可以的話,這裡就直接給題主推薦幾篇Paper和一些資料,如果英文水平閱讀Paper有難度的話,可以評論告知我,我們再交流。

這裡向題主推薦的Paper有三篇:

然後就是題主問的有哪些具體的用途,Google一下或者用Bing就好:

嗯,大概就是這樣........

看到評論中有需要資料的,我把我的百度雲鏈接貼在下面,可以下載:

https://pan.baidu.com/s/1c1RjuMG


有兩架飛機,一架是用model based control設計的controller,嚴格數學證明了系統穩定性。另一架是用data driven control設計的controller,設計者跑了很多遍模擬和試驗已優化control parameters,發現performance越來越好。請問你會坐哪架飛機?


推薦閱讀:

TAG:自動控制 | 控制演算法 | 控制理論 |