A blackboard system is an artificial intelligence approach based on the blackboard architectural model,[1][2][3][4] where a common knowledge base, the "blackboard", is iteratively updated by a diverse group of specialist knowledge sources, starting with a problem specification and ending with a solution. Each knowledge source updates the blackboard with a partial solution when its internal constraints match the blackboard state. In this way, the specialists work together to solve the problem. The blackboard model was originally designed as a way to handle complex, ill-defined problems, where the solution is the sum of its parts.
Metaphor
The following scenario provides a simple metaphor that gives some insight into how a blackboard functions:
A group of specialists are seated in a room with a large blackboard. They work as a team to brainstorm a solution to a problem, using the blackboard as the workplace for cooperatively developing the solution.
The session begins when the problem specifications are written onto the blackboard. The specialists all watch the blackboard, looking for an opportunity to apply their expertise to the developing solution. When someone writes something on the blackboard that allows another specialist to apply their expertise, the second specialist records their contribution on the blackboard, hopefully enabling other specialists to then apply their expertise. This process of adding contributions to the blackboard continues until the problem has been solved.
Components
A blackboard-system application consists of three major components
The software specialist modules, which are called knowledge sources (KSs). Like the human experts at a blackboard, each knowledge source provides specific expertise needed by the application.
The blackboard, a shared repository of problems, partial solutions, suggestions, and contributed information. The blackboard can be thought of as a dynamic "library" of contributions to the current problem that have been recently "published" by other knowledge sources.
The control shell, which controls the flow of problem-solving activity in the system. Just as the eager human specialists need a moderator to prevent them from trampling each other in a mad dash to grab the chalk, KSs need a mechanism to organize their use in the most effective and coherent fashion. In a blackboard system, this is provided by the control shell.
Here is a small example: A human user is executing a workflow in a computer game. The user presses some buttons and interacts with the game engine. While the user interacts with the game, a plan trace is created. That means the user's actions are stored in a logfile. The logfile gets transformed into a machine readable notation which is enriched by semantic attributes. The result is a textfile in the LTML syntax which is put on the blackboard. Agents (software programs in the blackboard system) are able to parse the LTML syntax.
Implementations
We start by discussing two well known early blackboard systems, BB1 and GBB, below and then discuss more recent implementations and applications.
The BB1 blackboard architecture[10] was originally inspired by studies of how humans plan to perform multiple tasks in a trip, used task-planning as a simplified example of tactical planning for the Office of Naval Research.[11] Hayes-Roth & Hayes-Roth found that human planning was more closely modeled as an opportunistic process, in contrast to the primarily top-down planners used at the time:
While not incompatible with successive-refinement models, our view of planning is somewhat different. We share the assumption that planning processes operate in a two-dimensional planning space defined on time and abstraction dimensions. However, we assume that people's planning activity is largely opportunistic. That is, at each point in the process, the planner's current decisions and observations suggest various opportunities for plan development. The planner's subsequent decisions follow up on selected opportunities. Sometimes, these decision-sequences follow an orderly path and produce a neat top-down expansion as described above. However, some decisions and observations might also suggest less orderly opportunities for plan development. [12]
A key innovation of BB1 was that it applied this opportunistic planning model to its own control, using the same blackboard model of incremental, opportunistic, problem-solving that was applied to solve domain problems. Meta-level reasoning with control knowledge sources could then monitor whether planning and problem-solving were proceeding as expected or stalled. If stalled, BB1 could switch from one strategy to another as conditions – such as the goals being considered or the time remaining – changed. BB1 was applied in multiple domains: construction site planning,[13] inferring 3-D protein structures from X-ray crystallography,[14] intelligent tutoring systems,[15] and real-time patient monitoring.[16]
BB1 also allowed domain-general language frameworks to be designed for wide classes of problems. For example, the ACCORD [17] language framework defined a particular approach to solving configuration problems. The problem-solving approach was to incrementally assemble a solution by adding objects and constraints, one at a time. Actions in the ACCORD language framework appear as short English-like commands or sentences for specifying preferred actions, events to trigger KSes, preconditions to run a KS action, and obviation conditions to discard a KS action that is no longer relevant.
GBB [18] focused on efficiency, in contrast to BB1, which focused more on sophisticated reasoning and opportunistic planning. GBB improves efficiency by allowing blackboards to be multi-dimensional, where dimensions can be either ordered or not, and then by increasing the efficiency of pattern matching. GBB1,[19] one of GBB's control shells implements BB1's style of control while adding efficiency improvements.
Some more recent examples of deployed real-world applications include:
The PLAN component of the Mission Control System for RADARSAT-1,[20] an Earth observation satellite developed by Canada to monitor environmental changes and Earth's natural resources.
The GTXImage CAD software by GTX Corporation was developed in the early 1990s using a set of rulebases and neural networks as specialists operating on a blackboard system.[citation needed]
Adobe Acrobat Capture (now discontinued), as it used a blackboard system to decompose and recognize image pages to understand the objects, text, and fonts on the page. This function is currently built into the retail version of Adobe Acrobat as "OCR Text Recognition". Details of a similar OCR blackboard for Farsi text are in the public domain.[21]
Blackboard systems are used routinely in many military C4ISTAR systems for detecting and tracking objects. Another example of current use is in Game AI, where they are considered a standard AI tool to help with adding AI to video games.[22][23]
Recent developments
Blackboard-like systems have been constructed within modern Bayesianmachine learning settings, using agents to add and remove Bayesian network nodes. In these 'Bayesian Blackboard' systems, the heuristics can acquire more rigorous probabilistic meanings as proposal and acceptances in Metropolis Hastings sampling though the space of possible structures.[24][25][26] Conversely, using these mappings, existing Metropolis-Hastings samplers over structural spaces may now thus be viewed as forms of blackboard systems even when not named as such by the authors. Such samplers are commonly found in musical transcription algorithms for example.[27]
Blackboard systems have also been used to build large-scale intelligent systems for the annotation of media content, automating parts of traditional social science research. In this domain, the problem of integrating various AI algorithms into a single intelligent system arises spontaneously, with blackboards providing a way for a collection of distributed, modular natural language processing algorithms to each annotate the data in a central space, without needing to coordinate their behavior.[28]
^Erman, L. D.; Hayes-Roth, F.; Lesser, V. R.; Reddy, D. R. (1980). "The Hearsay-II Speech-Understanding System: Integrating Knowledge to Resolve Uncertainty". ACM Computing Surveys. 12 (2): 213. doi:10.1145/356810.356816. S2CID118556.
^Corkill, Daniel D. (September 1991). "Blackboard Systems"(PDF). AI Expert. 6 (9): 40–47.
^* Nii, H. Penny (1986). Blackboard Systems(PDF) (Technical report). Department of Computer Science, Stanford University. STAN-CS-86-1123. Retrieved 2013-04-12.
^Goldman, Robert P and Maraist, John (2010). Shopper: A System for Executing and Simulating Expressive Plans. ICAPS. pp. 230–233.{{cite conference}}: CS1 maint: multiple names: authors list (link)
^Pechoucek, Michal (2010). Agent-Based Computing in Distributed Adversarial Planning (Technical report). Czech Technical Univ Prague.
^Burstein, Mark and Brinn, Marshall and Cox, Mike and Hussain, Talib and Laddaga, Robert and McDermott, Drew and McDonald, David and Tomlinson, Ray (2007). An architecture and language for the integrated learning of demonstrations. AAAI Workshop Acquiring Planning Knowledge via Demonstration. pp. 6–11.{{cite conference}}: CS1 maint: multiple names: authors list (link)
^Morrison, Clayton T and Cohen, Paul R (2007). Designing experiments to test planning knowledge about plan-step order constraints. ICAPS workshop on Intelligent Planning and Learning.{{cite conference}}: CS1 maint: multiple names: authors list (link)
^Burstein, Mark and Bobrow, Robert and Ferguson, William and Laddaga, Robert and Robertson, Paul (2010). Learning from Observing: Vision and POIROT-Using Metareasoning for Self Adaptation. Self-Adaptive and Self-Organizing Systems Workshop (SASOW), 2010 Fourth IEEE International Conference on. pp. 300–307.{{cite conference}}: CS1 maint: multiple names: authors list (link)
^Hayes-Roth, Barbara (1985). "A blackboard architecture for control". Artificial Intelligence. 26 (3): 251–321. doi:10.1016/0004-3702(85)90063-3.
^Hayes-Roth, Barbara (1980). Human Planning Processes. RAND.
^Hayes-Roth, Barbara; Buchanan, Bruce G.; Lichtarge, Olivier; Hewitt, Mike; Altman, Russ B.; Brinkley, James F.; Cornelius, Craig; Duncan, Bruce S.; Jardetzky, Oleg (1986). PROTEAN: Deriving Protein Structure from Constraints. AAAI. pp. 904–909. Retrieved 2012-08-11.
^Murray, William R. (1989). "Control for Intelligent Tutoring Systems: A Blackboard-based Dynamic Instructional Planner". Proceedings of the 4th International Conference on Artificial Intelligence and Education. 4th International Conference of AI and Education. Amsterdam, Holland: IOS. pp. 150–168.
^Corkill, Daniel; Gallagher, Kevin; Murray, Kelly (1986). GBB: A Generic Blackboard Development System. Proceedings of the Fifth National Conference on Artificial Intelligence. pp. 1008–1014.
^Corkill, Dan (1987). Integrating BB1-Style Control into the Generic Blackboard System. Workshop on Blackboard Systems. Coins Technical Report 87-59. Seattle, Washington.
^Corkill, Daniel D. "Countdown to success: Dynamic objects, GBB, and RADARSAT-1." Communications of the ACM 40.5 (1997): 48-58.
^Khosravi, H., & Kabir, E. (2009). A blackboard approach towards integrated Farsi OCR system. International Journal of Document Analysis and Recognition (IJDAR), 12(1), 21-32.
^Millington, Ian (2019-03-26). AI for Games, Third Edition (3rd ed.). Boca Raton: CRC Press. ISBN978-1-138-48397-2.
^Dill, Kevin (2023). "Structural Architecture— Common Tricks of the Trade". In Steve Rabin (ed.). Game AI Pro: Collected Wisdom of Game AI Professionals. Vol. 1 (1st ed.). A K Peters/CRC Press. pp. 61–71. ISBN978-1-03-247745-9.
^Godsill, Simon, and Manuel Davy. "Bayesian harmonic models for musical pitch estimation and analysis." Acoustics, Speech, and Signal Processing (ICASSP), 2002 IEEE International Conference on. Vol. 2. IEEE, 2002.
^Flaounas, Ilias; Lansdall-Welfare, Thomas; Antonakaki, Panagiota; Cristianini, Nello (2014-02-25). "The Anatomy of a Modular System for Media Content Analysis". arXiv:1402.6208 [cs.MA].
Blackboard Event Processor An open source blackboard implementation that runs on the JVM but supports plan scripting in JavaScript and JRuby.
KOGMO-RTDB A real-time open source blackboard for C/C++, used by some DARPA Urban Challenge autonomous vehicles.
HarTech Technologies A company that provides both Simulation and Command and Control solutions which are all based on a unique Blackboard architecture. The Blackboard development framework can be utilized to develop custom applications.
American actress (born 1989) Kelly Marie TranTran in 2017BornLoan Tran[1][2] (1989-01-17) January 17, 1989 (age 35)San Diego, California, U.S.Alma materUniversity of California, Los Angeles (BA)OccupationActressYears active2011–present Kelly Marie Tran (born Loan Tran,[1][2] January 17, 1989) is an American actress. She began acting in 2011, with most of her roles being in short film and television. She came to global prominence for her role as Ro…
Not to be confused with Zhejiang Xiaobaihua Yue Opera Troupe. Zhejiang Yue Opera TroupeTraditional Chinese浙江越劇團Simplified Chinese浙江越剧团Hanyu PinyinZhèjiāng Yuèjù Tuán Background informationOriginHangzhou, Zhejiang, ChinaGenresYue operaYears active1949–presentWebsitewww.zj-yjt.comMusical artist The Zhejiang Yue Opera Troupe is a troupe in Hangzhou, China, founded in 1952 and dedicated to Yue opera.[1] The Zhejiang Yue Opera Troupe is one of the most famous Y…
Questa voce o sezione sull'argomento attori statunitensi non cita le fonti necessarie o quelle presenti sono insufficienti. Puoi migliorare questa voce aggiungendo citazioni da fonti attendibili secondo le linee guida sull'uso delle fonti. Segui i suggerimenti del progetto di riferimento. Jeff Goldblum al San Diego Comic-Con International 2017 Jeffrey Lynn Goldblum (Pittsburgh, 22 ottobre 1952) è un attore statunitense. È principalmente noto per aver interpretato il personaggio di Seth Br…
Village in Kerman province, Iran For other places with a similar name, see Dehuiyeh. Village in Kerman, IranDahuiyeh Persian: داهوييهVillageDahuiyehCoordinates: 30°46′11″N 56°42′38″E / 30.76972°N 56.71056°E / 30.76972; 56.71056[1]CountryIranProvinceKermanCountyZarandDistrictCentralRural DistrictEslamabadPopulation (2016)[2] • Total1,060Time zoneUTC+3:30 (IRST) Dahuiyeh (Persian: داهوييه)[a] is a village in…
Peta menunjukkan lokasi Torrijos Torrijos adalah munisipalitas yang terletak di provinsi Marinduque, Filipina. Pada tahun 2010, munisipalitas ini memiliki populasi sebesar 28.001 jiwa atau 6.500 rumah tangga. Pembagian wilayah Secara administratif Torrijos terbagi menjadi 25 barangay, yaitu: Bangwayin Bayakbakin Bolo Bonliw Buangan Cabuyo Cagpo Dampulan Kay Duke Mabuhay Makawayan Malibago Malinao Maranlig Marlangga Matuyatuya Nangka Pakaskasan Payanas Poblacion Poctoy Sibuyao Suha Talawan Tigwi …
Artikel ini memberikan informasi dasar tentang topik kesehatan. Informasi dalam artikel ini hanya boleh digunakan untuk penjelasan ilmiah; bukan untuk diagnosis diri dan tidak dapat menggantikan diagnosis medis. Wikipedia tidak memberikan konsultasi medis. Jika Anda perlu bantuan atau hendak berobat, berkonsultasilah dengan tenaga kesehatan profesional. Filariasis limfatikGambar perempuan pengidap penyakit kaki gajah.Informasi umumSpesialisasiPenyakit menular Lymphatic filariasis juga dike…
Військово-музичне управління Збройних сил України Тип військове формуванняЗасновано 1992Країна Україна Емблема управління Військово-музичне управління Збройних сил України — структурний підрозділ Генерального штабу Збройних сил України призначений для плануван…
Annual curling bonspiel TSN All-Star Curling Skins GameEstablished1986Host cityBanff, AlbertaArenaThe Fenlands Banff Recreation CentreCurrent champions (2019)MenTeam Brendan BottcherWomenTeam Jennifer JonesCurrent edition 2019 TSN All-Star Curling Skins Game The TSN All-Star Curling Skins Game is an annual curling bonspiel hosted by The Sports Network. Skins curling had been developed as a way to make curling more interesting on TV during the time before the free guard zone rule was impleme…
Soviet gymnast In this name that follows Eastern Slavic naming customs, the patronymic is Anfiyanovich and the family name is Shakhlin. Boris ShakhlinBoris Shakhlin in 1966Personal informationCountry represented Soviet UnionBorn(1932-01-27)27 January 1932Ishim, Russian SFSR, Soviet UnionDied30 May 2008(2008-05-30) (aged 76)Kyiv, UkraineHeight1.71 m (5 ft 7 in)Weight71 kg (157 lb)DisciplineMen's artistic gymnasticsLevelSenior internationalClubBurev…
American businessman (1879–1950) This article needs additional citations for verification. Please help improve this article by adding citations to reliable sources. Unsourced material may be challenged and removed.Find sources: John J. Raskob – news · newspapers · books · scholar · JSTOR (January 2022) (Learn how and when to remove this message) John RaskobChair of the Democratic National CommitteeIn officeJuly 11, 1928 – July 2, 1932Preceded…
Lithuania has been significantly expanding its solar parks, growing from zero in early 2000s to 814 MW capacity in 2022. Elektrėnai Power Plant, with the capacity of 1055 MW, is the most powerful generating station in Lithuania Lithuania is a net energy importer. In 2019 Lithuania used around 11.4 TWh of electricity after producing just 3.6 TWh.[1] Systematic diversification of energy imports and resources is Lithuania's key energy strategy.[2] Long-term aims were defined in the…
Spanish Financial Intelligence Unit This article has multiple issues. Please help improve it or discuss these issues on the talk page. (Learn how and when to remove these template messages) This article relies excessively on references to primary sources. Please improve this article by adding secondary or tertiary sources. Find sources: SEPBLAC – news · newspapers · books · scholar · JSTOR (May 2022) (Learn how and when to remove this message) This articl…
Founder of the Kurdistan Workers' Party (PKK) Abdullah ÖcalanÖcalan in 1997Born (1949-04-04) 4 April 1949 (age 75)[1]Ömerli, TurkeyNationalityKurdish[2][3][4][5][6][7]CitizenshipTurkeyEducationFaculty of Political Science, Ankara University[8]OccupationsFounder and leader of militant organization PKK,[9] political activist, writer, political theoristOrganization(s)Kurdistan Workers' Party (PKK), Kurdistan Communities…
Annual publication of university rankings Times Higher Education World University RankingsEditorPhil BatyCategoriesHigher educationFrequencyAnnualPublisherTimes Higher EducationFirst issue2004; 20 years ago (2004) (in partnership with QS)2010; 14 years ago (2010) (on its own)CountryUnited KingdomLanguageEnglishWebsitewww.timeshighereducation.com/world-university-rankings/ The Times Higher Education World University Rankings, often referred to as the THE Rankin…
2017 FIFA U-17 World CupTournament detailsHost countryIndiaDates6–28 OctoberTeams24 (from 6 confederations)Venue(s)6 (in 6 host cities)Final positionsChampions England (1st title)Runners-up SpainThird place BrazilFourth place MaliTournament statisticsMatches played52Goals scored183 (3.52 per match)Attendance1,347,133 (25,906 per match)Top scorer(s) Rhian Brewster (8 goals)Best player(s) Phil FodenBest goalkeeper Gabriel BrazãoFair play award B…
Disambiguazione – Leopardi rimanda qui. Se stai cercando altri significati, vedi Leopardi (disambigua). Disambiguazione – Se stai cercando il politico italiano ed europarlamentare, vedi Giacomo Leopardi (politico). Domenico Morelli, Ritratto di Giacomo Leopardi, 1842, ritenuto dai conoscenti come il più fedele all'aspetto fisico del poeta[2] Giacomo Leopardi (Giacomo Taldegardo Francesco Salesio Saverio Pietro Leopardi; Recanati, 29 giugno 1798[1] – Napoli, 14 giug…
One hundredth of a percent This article is about the financial term. Not to be confused with the electronic term Bias point. This article needs additional citations for verification. Please help improve this article by adding citations to reliable sources. Unsourced material may be challenged and removed.Find sources: Basis point – news · newspapers · books · scholar · JSTOR (May 2010) (Learn how and when to remove this message) ‱per ten thousand signIn…