AI Code Vulnerability Scanner

AI Code Vulnerability Scanner — independent reviews, comparisons, pricing and step-by-step guides on Aizhi.

  • Problem solving

    Problem solving

    Problem solving is the process of achieving a goal by overcoming obstacles, a frequent part of most activities. Problems in need of solutions range from simple personal tasks (e.g. how to get from point A to B) to complex issues in business and technical fields. The former is an example of simple problem solving (SPS) addressing one issue, whereas the latter is complex problem solving (CPS) with multiple interrelated obstacles. Another classification of problem-solving tasks is into well-defined problems with specific obstacles and goals, and ill-defined problems in which the current situation is troublesome but it is not clear what kind of resolution to aim for. Similarly, one may distinguish formal or fact-based problems requiring psychometric intelligence, versus socio-emotional problems which depend on the changeable emotions of individuals or groups, such as tactful behavior, fashion, or gift choices. Solutions require sufficient resources and knowledge to attain the goal. Professionals such as lawyers, doctors, programmers, and consultants are largely problem solvers for issues that require technical skills and knowledge beyond general competence. Many businesses have found profitable markets by recognizing a problem and creating a solution: the more widespread and inconvenient the problem, the greater the opportunity to develop a scalable solution. There are many specialized problem-solving techniques and methods in fields such as science, engineering, business, medicine, mathematics, computer science, philosophy, and social organization. The mental techniques to identify, analyze, and solve problems are studied in psychology and cognitive sciences. Also widely researched are the mental obstacles that prevent people from finding solutions; problem-solving impediments include confirmation bias, mental set, and functional fixedness. == Definition == The term problem solving has a slightly different meaning depending on the discipline. For instance, it is a mental process in psychology and a computerized process in computer science. There are two different types of problems: ill-defined and well-defined; different approaches are used for each. Well-defined problems have specific end goals and clearly expected solutions, while ill-defined problems do not. Well-defined problems allow for more initial planning than ill-defined problems. Solving problems sometimes involves dealing with pragmatics (the way that context contributes to meaning) and semantics (the interpretation of the problem). The ability to understand what the end goal of the problem is, and what rules could be applied, represents the key to solving the problem. Sometimes a problem requires abstract thinking or coming up with a creative solution. Problem solving has two major domains: mathematical problem solving and personal problem solving. Each concerns some difficulty or barrier that is encountered. === Psychology === Problem solving in psychology refers to the process of finding solutions to problems encountered in life. Solutions to these problems are usually situation- or context-specific. The process starts with problem finding and problem shaping, in which the problem is discovered and simplified. The next step is to generate possible solutions and evaluate them. Finally a solution is selected to be implemented and verified. Problems have an end goal to be reached; how you get there depends upon problem orientation (problem-solving coping style and skills) and systematic analysis. Mental health professionals study the human problem-solving processes using methods such as introspection, behaviorism, simulation, computer modeling, and experiment. Social psychologists look into the person-environment relationship aspect of the problem and independent and interdependent problem-solving methods. Problem solving has been defined as a higher-order cognitive process and intellectual function that requires the modulation and control of more routine or fundamental skills. Empirical research shows many different strategies and factors influence everyday problem solving. Rehabilitation psychologists studying people with frontal lobe injuries have found that deficits in emotional control and reasoning can be re-mediated with effective rehabilitation and could improve the capacity of injured persons to resolve everyday problems. Interpersonal everyday problem solving is dependent upon personal motivational and contextual components. One such component is the emotional valence of "real-world" problems, which can either impede or aid problem-solving performance. Researchers have focused on the role of emotions in problem solving, demonstrating that poor emotional control can disrupt focus on the target task, impede problem resolution, and lead to negative outcomes such as fatigue, depression, and inertia. In conceptualization,human problem solving consists of two related processes: problem orientation, and the motivational/attitudinal/affective approach to problematic situations and problem-solving skills. People's strategies cohere with their goals and stem from the process of comparing oneself with others. === Cognitive sciences === Among the first experimental psychologists to study problem solving were the Gestaltists in Germany, such as Karl Duncker in The Psychology of Productive Thinking (1935). Perhaps best known is the work of Allen Newell and Herbert A. Simon. Experiments in the 1960s and early 1970s asked participants to solve relatively simple, well-defined, but not previously seen laboratory tasks. These simple problems, such as the Tower of Hanoi, admitted optimal solutions that could be found quickly, allowing researchers to observe the full problem-solving process. Researchers assumed that these model problems would elicit the characteristic cognitive processes by which more complex "real world" problems are solved. An outstanding problem-solving technique found by this research is the principle of decomposition. === Computer science === Much of computer science and artificial intelligence involves designing automated systems to solve a specified type of problem: to accept input data and calculate a correct or adequate response, reasonably quickly. Algorithms are recipes or instructions that direct such systems, written into computer programs. Steps for designing such systems include problem determination, heuristics, root cause analysis, de-duplication, analysis, diagnosis, and repair. Analytic techniques include linear and nonlinear programming, queuing systems, and simulation. A large, perennial obstacle is to find and fix errors in computer programs: debugging. === Logic === Formal logic concerns issues like validity, truth, inference, argumentation, and proof. In a problem-solving context, it can be used to formally represent a problem as a theorem to be proved, and to represent the knowledge needed to solve the problem as the premises to be used in a proof that the problem has a solution. The use of computers to prove mathematical theorems using formal logic emerged as the field of automated theorem proving in the 1950s. It included the use of heuristic methods designed to simulate human problem solving, as in the Logic Theory Machine, developed by Allen Newell, Herbert A. Simon and J. C. Shaw, as well as algorithmic methods such as the resolution principle developed by John Alan Robinson. In addition to its use for finding proofs of mathematical theorems, automated theorem-proving has also been used for program verification in computer science. In 1958, John McCarthy proposed the advice taker, to represent information in formal logic and to derive answers to questions using automated theorem-proving. An important step in this direction was made by Cordell Green in 1969, who used a resolution theorem prover for question-answering and for such other applications in artificial intelligence as robot planning. The resolution theorem-prover used by Cordell Green bore little resemblance to human problem solving methods. In response to criticism of that approach from researchers at MIT, Robert Kowalski developed logic programming and SLD resolution, which solves problems by problem decomposition. He has advocated logic for both computer and human problem solving and computational logic to improve human thinking. === Engineering === When products or processes fail, problem solving techniques can be used to develop corrective actions that can be taken to prevent further failures. Such techniques can also be applied to a product or process prior to an actual failure event—to predict, analyze, and mitigate a potential problem in advance. Techniques such as failure mode and effects analysis can proactively reduce the likelihood of problems. In either the reactive or the proactive case, it is necessary to build a causal explanation through a process of diagnosis. In deriving an explanation of effects in terms of causes, abduction generates new ideas or hypothes

    Read more →
  • Use of artificial intelligence by the United States Department of Defense

    Use of artificial intelligence by the United States Department of Defense

    The United States Department of Defense has been analyzing and employing military applications of artificial intelligence since at least 2014. The program initially focused on drones and other robots, but has also been using large language models for military research and analysis. The current US policy on lethal autonomous weapons is Department of Defense Directive 3000.09, updated in January 2023. == Background == The United States Department of Defense began developing lethal autonomous weapons as early as the Reagan administration. An early version of the Tomahawk missile could have been used to destroy Soviet ships without direct human control; the initiative was abandoned after the United States and the Soviet Union signed START I. By 2014, the United Kingdom, Israel, and Norway had already begun using missiles equipped with artificial intelligence systems. The Department of Defense established a policy on the use of artificial intelligence in 2012. == History == === 2016–2017: Carter secretaryship === In May 2016, secretary of defense Ash Carter stated that his Third Offset strategy would include utilizing artificial intelligence as a military advantage. The New York Times reported that year that the Department of Defense had tested an autonomous drone at an approximation of a Middle Eastern village at Camp Edwards. Deputy secretary of defense Robert O. Work, who advocated for developing artificial intelligence, told the Times that the United States needed to compete with China and Russia by having a tactical advantage they could not easily replicate. The initiative was developed by DARPA beginning in 2015. The use of artificial intelligence in the U.S. military was controversial within the department; in February, Paul Scharre, who worked for the Office of the Secretary of Defense in the secretaryships of Robert Gates and Leon Panetta, published a report about the risks of artificial intelligence for broad military applications. === 2017–2019: Mattis secretaryship === By 2017, the United States Air Force had already begun using artificial intelligence in military robots. The Air Force's use of Neurala, an artificial intelligence company, concerned officials in the Department of Defense after an investigation found that Neurala had accepted money from an investment firm with funding from a state-run Chinese company. The Department of Defense began heavily investing in artificial intelligence after Work established Project Maven, an initiative to encourage the development and integration of artificial intelligence in the military, in April 2017. In May 2018, secretary of defense Jim Mattis privately expressed to president Donald Trump that he needed to establish a national strategy on artificial intelligence, quoting an article from former secretary of state Henry Kissinger that called for a presidential commission on the technology. The Department of Defense established the Joint Artificial Intelligence Center the following month. Google began working with the Department of Defense on analyzing drone footage as early as March. Google's involvement in the initiative led to protests from employees and mass resignations. Seeking to quell internal unrest, Google stated it would not renew its contract with the Department of Defense in June. The Department of Defense announced an artificial intelligence contract with Microsoft in October. === 2025–present: Hegseth secretaryship === In December 2025, secretary of defense Pete Hegseth announced GenAI.mil, an artificial intelligence platform for the Department of Defense. In a video announcing the platform, Hegseth stated that Department of Defense workers would be able to "conduct deep research, format documents and even analyze video or imagery." The Department of Defense contracted first Gemini by Google, then ChatGPT by OpenAI, and finally Grok by xAI for the platform. Claude by Anthropic was also contracted by the Department of Defense and was in use on secure servers until it was revealed that Claude had been used in the 2026 operation to capture Nicolás Maduro, who was at the time the leader of Venezuela. This revelation sparked a high-profile dispute over Anthropic's ability to constrain Claude's useage, resulting in the termination of Anthropic's $200 million defense contract. The Department of Defense also moved to label Anthropic a supply chain risk, which was later blocked by a federal judge.

    Read more →
  • Neural architecture search

    Neural architecture search

    Neural architecture search (NAS) is a technique for automating the design of artificial neural networks (ANN), a widely used model in the field of machine learning. NAS has been used to design networks that are on par with or outperform hand-designed architectures. Methods for NAS can be categorized according to the search space, search strategy and performance estimation strategy used: The search space defines the type(s) of ANN that can be designed and optimized. The search strategy defines the approach used to explore the search space. The performance estimation strategy evaluates the performance of a possible ANN from its design (without constructing and training it). NAS is closely related to hyperparameter optimization and meta-learning and is a subfield of automated machine learning (AutoML). == Reinforcement learning == Reinforcement learning (RL) can underpin a NAS search strategy. Barret Zoph and Quoc Viet Le applied NAS with RL targeting the CIFAR-10 dataset and achieved a network architecture that rivals the best manually-designed architecture for accuracy, with an error rate of 3.65, 0.09 percent better and 1.05x faster than a related hand-designed model. On the Penn Treebank dataset, that model composed a recurrent cell that outperforms LSTM, reaching a test set perplexity of 62.4, or 3.6 perplexity better than the prior leading system. On the PTB character language modeling task it achieved bits per character of 1.214. Learning a model architecture directly on a large dataset can be a lengthy process. NASNet addressed this issue by transferring a building block designed for a small dataset to a larger dataset. The design was constrained to use two types of convolutional cells to return feature maps that serve two main functions when convoluting an input feature map: normal cells that return maps of the same extent (height and width) and reduction cells in which the returned feature map height and width is reduced by a factor of two. For the reduction cell, the initial operation applied to the cell's inputs uses a stride of two (to reduce the height and width). The learned aspect of the design included elements such as which lower layer(s) each higher layer took as input, the transformations applied at that layer and to merge multiple outputs at each layer. In the studied example, the best convolutional layer (or "cell") was designed for the CIFAR-10 dataset and then applied to the ImageNet dataset by stacking copies of this cell, each with its own parameters. The approach yielded accuracy of 82.7% top-1 and 96.2% top-5. This exceeded the best human-invented architectures at a cost of 9 billion fewer FLOPS—a reduction of 28%. The system continued to exceed the manually-designed alternative at varying computation levels. The image features learned from image classification can be transferred to other computer vision problems. E.g., for object detection, the learned cells integrated with the Faster-RCNN framework improved performance by 4.0% on the COCO dataset. In the so-called Efficient Neural Architecture Search (ENAS), a controller discovers architectures by learning to search for an optimal subgraph within a large graph. The controller is trained with policy gradient to select a subgraph that maximizes the validation set's expected reward. The model corresponding to the subgraph is trained to minimize a canonical cross entropy loss. Multiple child models share parameters, ENAS requires fewer GPU-hours than other approaches and 1000-fold less than "standard" NAS. On CIFAR-10, the ENAS design achieved a test error of 2.89%, comparable to NASNet. On Penn Treebank, the ENAS design reached test perplexity of 55.8. == Evolution == An alternative approach to NAS is based on evolutionary algorithms, which has been employed by several groups. An Evolutionary Algorithm for Neural Architecture Search generally performs the following procedure. First a pool consisting of different candidate architectures along with their validation scores (fitness) is initialised. At each step the architectures in the candidate pool are mutated (e.g.: 3x3 convolution instead of a 5x5 convolution). Next the new architectures are trained from scratch for a few epochs and their validation scores are obtained. This is followed by replacing the lowest scoring architectures in the candidate pool with the better, newer architectures. This procedure is repeated multiple times and thus the candidate pool is refined over time. Mutations in the context of evolving ANNs are operations such as adding or removing a layer, which include changing the type of a layer (e.g., from convolution to pooling), changing the hyperparameters of a layer, or changing the training hyperparameters. On CIFAR-10 and ImageNet, evolution and RL performed comparably, while both slightly outperformed random search. == Bayesian optimization == Bayesian Optimization (BO), which has proven to be an efficient method for hyperparameter optimization, can also be applied to NAS. In this context, the objective function maps an architecture to its validation error after being trained for a number of epochs. At each iteration, BO uses a surrogate to model this objective function based on previously obtained architectures and their validation errors. One then chooses the next architecture to evaluate by maximizing an acquisition function, such as expected improvement, which provides a balance between exploration and exploitation. Acquisition function maximization and objective function evaluation are often computationally expensive for NAS, and make the application of BO challenging in this context. Recently, BANANAS has achieved promising results in this direction by introducing a high-performing instantiation of BO coupled to a neural predictor. == Hill-climbing == Another group used a hill climbing procedure that applies network morphisms, followed by short cosine-annealing optimization runs. The approach yielded competitive results, requiring resources on the same order of magnitude as training a single network. E.g., on CIFAR-10, the method designed and trained a network with an error rate below 5% in 12 hours on a single GPU. == Multi-objective search == While most approaches solely focus on finding architecture with maximal predictive performance, for most practical applications other objectives are relevant, such as memory consumption, model size or inference time (i.e., the time required to obtain a prediction). Because of that, researchers created a multi-objective search. LEMONADE is an evolutionary algorithm that adopted Lamarckism to efficiently optimize multiple objectives. In every generation, child networks are generated to improve the Pareto frontier with respect to the current population of ANNs. Neural Architect is claimed to be a resource-aware multi-objective RL-based NAS with network embedding and performance prediction. Network embedding encodes an existing network to a trainable embedding vector. Based on the embedding, a controller network generates transformations of the target network. A multi-objective reward function considers network accuracy, computational resource and training time. The reward is predicted by multiple performance simulation networks that are pre-trained or co-trained with the controller network. The controller network is trained via policy gradient. Following a modification, the resulting candidate network is evaluated by both an accuracy network and a training time network. The results are combined by a reward engine that passes its output back to the controller network. == One-shot models == RL or evolution-based NAS require thousands of GPU-days of searching/training to achieve state-of-the-art computer vision results as described in the NASNet, mNASNet and MobileNetV3 papers. To reduce computational cost, many recent NAS methods rely on the weight-sharing idea. In this approach, a single overparameterized supernetwork (also known as the one-shot model) is defined. A supernetwork is a very large Directed Acyclic Graph (DAG) whose subgraphs are different candidate neural networks. Thus, in a supernetwork, the weights are shared among a large number of different sub-architectures that have edges in common, each of which is considered as a path within the supernet. The essential idea is to train one supernetwork that spans many options for the final design rather than generating and training thousands of networks independently. In addition to the learned parameters, a set of architecture parameters are learnt to depict preference for one module over another. Such methods reduce the required computational resources to only a few GPU days. More recent works further combine this weight-sharing paradigm, with a continuous relaxation of the search space, which enables the use of gradient-based optimization methods. These approaches are generally referred to as differentiable NAS and have proven very efficient in exploring the search space of ne

    Read more →
  • The Great Automatic Grammatizator

    The Great Automatic Grammatizator

    The Great Automatic Grammatizator (published in the U.S. as The Umbrella Man and Other Stories) is a posthumous 1998 collection of thirteen short stories written by British author Roald Dahl. The stories were selected for teenagers from Dahl's adult works. All the stories included were published elsewhere originally; their sources are noted below. The stories, with the exception of the war story "Katina", possess a deadpan, ironic, bizarre, or even macabre sense of humor. They generally end with unexpected plot twists. == Stories == "The Great Automatic Grammatizator" (from Someone Like You): A mechanically-minded man reasons that the rules of grammar are fixed by certain, almost mathematical principles. By exploiting this idea, he is able to create a mammoth machine that can write a prize-winning novel in roughly fifteen minutes. The story ends on a fearful note, as more and more of the world's writers are forced into licensing their names—and all hope of human creativity—to the machine. "Mrs. Bixby and the Colonel's Coat" (from Kiss Kiss): Mrs. Bixby cheats on her dentist husband with a rich, dashing colonel. When their relationship breaks off, the colonel offers Mrs. Bixby a gorgeous and expensive mink coat. In an attempt to explain the coat away, Mrs. Bixby sets up an elaborate trick with the help of a pawn shop—but her husband learns of the ruse and manages to turn the tables. "The Butler" (from More Tales of the Unexpected): An obnoxious and newly wealthy couple employs a butler and chef to impress dinner guests. The butler recommends that the husband buy expensive wines to please his guests, and the man slavishly follows the idea. The butler and the chef reap the rewards of this idea, while making fools of the "fashionable" couple. "Man from the South" (from Someone Like You): At a seaside resort in Jamaica, a strange old man makes a bet with an American man in his late teens. If the young man's cigarette lighter can spark ten times without fail, the American will win a brand-new Cadillac car—but failure means losing the little finger of his right hand. The high-tension wager ensues, and with only a few sparks left, a woman—who knows only too well the cost of the old man's bets—appears and stops the madness. "The Landlady" (from Kiss Kiss): A young man traveling to London on business stops at a bed and breakfast along the way, where a strange and slightly dotty landlady eagerly welcomes him. The eccentric nature of the house, and the news that only two other young men have ever stayed there, confuse and frighten the young man. In the end, the landlady—who indulges in the hobby of taxidermy—and the boy share a drink of tea that tastes of bitter almonds, and the landlady softly smiles at what may be her latest stuffing project. "Parson's Pleasure" (from Kiss Kiss): A man discovers an extremely rare piece of Chippendale furniture at the farm of some boorish ranchers. He desperately attempts to buy the piece cheap, in the hope of selling it at auction to earn a huge profit. He manages to buy the piece "for firewood", only for the ranchers to destroy it in an attempt to make it fit into his car. "The Umbrella Man" (from More Tales of the Unexpected): On a rainy day, a mother and daughter meet a gentlemanly old man on a street corner, who offers them a beautiful silk umbrella in exchange for a pound note. They trade, and the daughter notices that the "feeble" old man suddenly seems much sprier. They follow him, and discover that the gentleman is a con artist who visits various pubs, has a drink, and then steals another umbrella to continue the cycle. "Katina" (from Over to You: Ten Stories of Flyers and Flying): A group of RAF pilots stationed in Greece during World War II discover a hauntingly beautiful young girl, whose "family is beneath the rubble." She becomes their squadron's unofficial "mascot". In the end, her fragile life is taken as she stands defiantly against a rain of bullets from Nazi aircraft, shaking her fists at the heavens. "The Way Up to Heaven" (from Kiss Kiss): Mrs. Foster suffers from a chronic phobia of being late for appointments. Her husband enjoys the cruel sport of purposely delaying their activities, just to rile his wife. On the day when Mrs. Foster is due to fly to Paris to visit her grandchildren, her husband engages in his usual tricks. But as Mrs. Foster rushes from their taxi to the house to find him, she hears a strange noise—and turns triumphantly toward her cab. It is only when she returns, and calls a man to "repair the lift" that was stuck between floors in the house, that readers guess Mr. Foster's fate. "Royal Jelly" (from Kiss Kiss): New parents fear for the life of their little girl, who is sickly and dangerously underweight. The husband, a beekeeper, remembers hearing of the miraculous royal jelly used by bees to transform one particular larva into a queen. He adds the mixture to his daughter's bottles, and she puts on weight at an astonishing rate. The mother senses that something is amiss, and the husband confesses his actions—along with the fact that he himself swallowed buckets of the jelly for months in an attempt to cure his impotence. The royal jelly did the trick—but the strange side-effects include a disturbing metamorphosis for both father and daughter. "Vengeance is Mine Inc." (from More Tales of the Unexpected): Two brothers who are short of cash bemoan their fate over breakfast while reading the society column of a newspaper. They hit upon a scheme to take revenge on cruel tabloid writers in exchange for money from wealthy patrons. The unconventional plan works, and the brothers line their pockets with the spoils of their plans. "Taste" (from Someone Like You): A rich man with a beautiful young daughter hosts a dinner party, inviting a famous connoisseur of fine wines. When the rich man boasts that he has a wine that the expert cannot identify, the stakes become frighteningly high: if he can guess the name and vintage of the wine, he will win his daughter's hand. After an elaborate show, the expert guesses correctly; however, the family's maid appears and inadvertently exposes the guest as a cheat, thus saving the girl. "Neck" (from Someone Like You): A newspaper heir finds himself suddenly engaged to the voluptuous and controlling Lady Tutton. He loses all control of his life, and only his trusted butler and friends realize how broken he is by her control. A weekend trip to their estate, however, proves the perfect opportunity for Lord Tutton to engage in revenge against his wicked wife: her head is trapped in a valuable piece of wooden sculpture, and he must decide whether to use a saw or an axe to cut her free. == Publication details == Dahl, Roald (19 January 2004). The Umbrella Man and Other Stories. Speak. ISBN 9780142400876. == Reception == Groff Conklin in 1954 called the short story "The Great Automatic Grammatizator" "an awe-inspiring fantasy-satire ... an unforgettable bit of biting nonsense".

    Read more →
  • Enterprise resource planning

    Enterprise resource planning

    Enterprise resource planning (ERP) is the integrated management of main business processes, often in real time and mediated by software and technology. ERP is usually referred to as a category of business management software—typically a suite of integrated applications—that an organization can use to collect, store, manage and interpret data from many business activities. The finance module in particular is essential to a suite of applications meeting the definition of an ERP system. The finance module provides the system of record for the organisation; recording the commercial impact of the business operations in the General Ledger. ERP systems can be local-based or cloud-based. Cloud-based applications have grown rapidly since the early 2010s due to the increased efficiencies arising from information being readily available from any location with Internet access. However, ERP differs from integrated business management systems by including planning all resources that are required in the future to meet business objectives. This includes plans for getting suitable staff and manufacturing capabilities for future needs. ERP provides an integrated and continuously updated view of core business processes, typically using a shared database managed by a database management system. ERP systems track business resources—cash, raw materials, production capacity—and the status of business commitments: orders, purchase orders, and payroll. The applications that make up the system share data across various departments (manufacturing, purchasing, sales, accounting, etc.) that provide the data. ERP facilitates information flow between all business functions and manages connections to outside stakeholders. Estimates of the size of the global ERP market range between USD $78 and $81 billion in 2026 . Though early ERP systems focused on large enterprises, smaller enterprises increasingly use ERP systems. The ERP system integrates varied organizational systems and facilitates error-free transactions and production, thereby enhancing the organization's efficiency. However, developing an ERP system differs from traditional system development. ERP systems run on a variety of computer hardware and network configurations, typically using a database as an information repository. == Origin == Business and technology research and advisory firm Gartner is credited for first using the acronym ERP in the 1990s. The term captured a functional extension of two manufacturing-based concepts, material requirements planning (MRP) and manufacturing resource planning (MRP II). Without replacing these terms, ERP came to represent a larger whole that reflected the evolution of application integration beyond manufacturing. Not all ERP packages are developed from a manufacturing core; ERP vendors variously began assembling their packages with finance-and-accounting, maintenance, and human-resource components. By the mid-1990s ERP systems addressed all core enterprise functions. Governments and non–profit organizations also began to use ERP systems. An "ERP system selection methodology" is a formal process for selecting an enterprise resource planning (ERP) system. Existing methodologies include: Kuiper's funnel method, Dobrin's three-dimensional (3D) web-based decision support tool, and the Clarkston Potomac methodology. == Expansion == ERP systems experienced rapid growth in the 1990s. Because of the year 2000 problem many companies took the opportunity to replace their old systems with ERP. ERP systems initially focused on automating back office functions that did not directly affect customers and the public. Front office functions, such as customer relationship management (CRM), dealt directly with customers, or e-business systems such as e-commerce and e-government—or supplier relationship management (SRM) became integrated later, when the internet simplified communicating with external parties. "ERP II" was coined in 2000 in an article by Gartner Publications entitled ERP Is Dead—Long Live ERP II. It describes web–based software that provides real–time access to ERP systems to employees and partners (such as suppliers and customers). The ERP II role expands traditional ERP resource optimization and transaction processing. Rather than just manage buying, selling, etc.—ERP II leverages information in the resources under its management to help the enterprise collaborate with other enterprises. ERP II is more flexible than the first generation ERP. Rather than confine ERP system capabilities within the organization, it goes beyond the corporate walls to interact with other systems. Enterprise application suite is an alternate name for such systems. ERP II systems are typically used to enable collaborative initiatives such as supply chain management (SCM), customer relationship management (CRM) and business intelligence (BI) among business partner organizations through the use of various electronic business technologies. The large proportion of companies are pursuing a strong managerial targets in ERP system instead of acquire an ERP company. Developers now make more effort to integrate mobile devices with the ERP system. ERP vendors are extending ERP to these devices, along with other business applications, so that businesses don't have to rely on third-party applications. As an example, the e-commerce platform Shopify was able to make ERP tools from Microsoft and Oracle available on its app in October 2021. Technical stakes of modern ERP concern integration—hardware, applications, networking, supply chains. ERP now covers more functions and roles—including decision making, stakeholders' relationships, standardization, transparency, globalization, etc. == Functional areas == An ERP system covers the following common functional areas. In many ERP systems, these are called and grouped together as ERP modules: Financial accounting: general ledger, fixed assets, payables including vouchering, matching and payment, receivables and collections, cash management, financial consolidation Management accounting: budgeting, costing, cost management, activity based costing, billing, invoicing (optional) Human resources: recruiting, training, rostering, payroll, benefits, retirement and pension plans, diversity management, retirement, separation Manufacturing: engineering, bill of materials, work orders, scheduling, capacity, workflow management, quality control, manufacturing process, manufacturing projects, manufacturing flow, product life cycle management Order processing: order to cash, order entry, credit checking, pricing, available to promise, inventory, shipping, sales analysis and reporting, sales commissioning Supply chain management: supply chain planning, supplier scheduling, product configurator, order to cash, purchasing, inventory, claim processing, warehousing (receiving, putaway, picking and packing) Project management: project planning, resource planning, project costing, work breakdown structure, billing, time and expense, performance units, activity management Customer relationship management (CRM): sales and marketing, commissions, service, customer contact, call center support – CRM systems are not always considered part of ERP systems but rather business support systems (BSS) Supplier relationship management (SRM): suppliers, orders, payments. Data services: various "self-service" interfaces for customers, suppliers or employees Management of school and educational institutes. Contract management: creating, monitoring, and managing contracts, reducing administrative burdens and minimising legal risks. These modules often feature contract templates, electronic signature capabilities, automated alerts for contract milestones, and advanced search functionality. === GRP – ERP use in government === Government resource planning (GRP) is the equivalent of an ERP for the public sector and an integrated office automation system for government bodies. The software structure, modularization, core algorithms and main interfaces do not differ from other ERPs, and ERP software suppliers manage to adapt their systems to government agencies. Both system implementations, in private and public organizations, are adopted to improve productivity and overall business performance in organizations, but comparisons (private vs. public) of implementations shows that the main factors influencing ERP implementation success in the public sector are cultural. == Best practices == Most ERP systems incorporate best practices. This means the software reflects the vendor's interpretation of the most effective way to perform each business process. Systems vary in how conveniently the customer can modify these practices. Use of best practices eases compliance with requirements such as International Financial Reporting Standards, Sarbanes–Oxley, or Basel II. They can also help comply with de facto industry standards, such as electronic funds transfer. This is because the procedure can be readily

    Read more →
  • WebCrow

    WebCrow

    The WebCrow is a research project carried out at the Information Engineering Department of the University of Siena with the purpose of automatically solving crosswords. == The Project == The scientific relevance of the project can be understood considering that cracking crosswords requires human-level knowledge. Unlike chess and related games and there is no closed world configuration space. A first nucleus of technology, such as search engines, information retrieval, and machine learning techniques enable computers to enfold with semantics real-life concepts. The project is based on a software system whose major assumption is to attack crosswords making use of the Web as its primary source of knowledge. WebCrow is very fast and often thrashes human challengers in competitions, especially on multi language crossword schemes. A distinct feature of the WebCrow software system is to combine properly natural language processing (NLP) techniques, the Google web search engine, and constraint satisfaction algorithms from artificial intelligence to acquire knowledge and to fill the schema. The most important component of WebCrow is the Web Search Module (WSM), which implements a domain specific web based question answering algorithm. The way WebCrow approaches crosswords solving is quite different with respect to humans: Whereas we tend to first answer clues we are sure of and then proceed filling the schema by exploiting the already answered clues as hints, WebCrow uses two clearly distinct stages. In the first one, it processes all the clues and tries to answer them all: For each clue it finds many possible candidates and sorts them according to complex ranking models mainly based on a probability criteria. In the second stage, WebCrow uses constraint satisfaction algorithms to fill the grid with the overall most likely combination of clue answers. In order to interact with Google, first of all, WebCrow needs to compose queries on the basis of the given clues. This is done by query expansion, whose purpose is to convert the clue into a query expressed by a simplified and more appropriate language for Google. The retrieved documents are parsed so as to extract a list of word candidates that are congruent with the crossword length constraints. Crosswords can hardly be faced by using encyclopedic knowledge only, since many clues are wordplays or are otherwise purposefully very ambiguous. This enigmatic component of crosswords is faced by a massive use of database of solved crosswords, and by automatic reasoning on a properly organized knowledge base of wired rules. Last but not the least, the final constraint satisfaction step is very effective to fill the correct candidate, even though, unlike humans, the system can not rely on very high confidence on the correctness of the answer. == Competitions == WebCrow speed and effectiveness has been tested many times in man-machine competitions on Italian, English and multi-language crosswords The outcome of the tests is that WebCrow can successfully compete with average human players on single language schemes and reaches expert level performance in multi-language crosswords. However, WebCrow has not reached expert level in single-language crosswords, yet. === ECAI-06 Competition === On August 30, 2006, at the European Conference on Artificial Intelligence (ECAI2006), 25 conference attendees and 53 internet connected crosswords lovers, competed with WebCrow in an official challenge organized within the conference program. The challenge consisted in 5 different crosswords (2 in Italian, 2 in English and one multi-language in Italian and English) and 15 minutes were assigned for each crossword. WebCrow ranked 21 out of 74 participants in the Italian competition, and won both the bilingual and English competitions. === Other Competitions === Several competitions have been held in Florence, Italy within the Creativity Festival in December 2006, and another official conference competition took place in Hyderabad, India in January 2007, within the International Conference of Artificial Intelligence, where it ranked second out of 25 participants.

    Read more →
  • The MANIAC

    The MANIAC

    The MANIAC is a 2023 novel by Chilean author Benjamín Labatut, written in English. It is a fictionalised biography of polymath John von Neumann, whom Labatut calls "the smartest human being of the 20th century". The book focuses on von Neumann, but is also about physicist Paul Ehrenfest, the history of artificial intelligence, and Lee Sedol's Go match against AlphaGo. The book received mostly positive reviews from critics. == Background == John von Neumann was a Jewish Hungarian-born polymath who was a prodigy from an early childhood. Von Neumann worked in multiple fields of science, theoretical (mathematical foundations of quantum mechanics, game theory, cellular automata) and applied (nuclear weapons research during the Manhattan Project in World War II, computer architecture later named after him, and many other subjects). Labatut calls him "the smartest human being of the 20th century". The title of the book is derived from an early computer based on von Neumann architecture, built after the war at Los Alamos laboratory, called MANIAC I. Benjamín Labatut is a Chilean author known for his 2020 book When We Cease to Understand the World, a collection of fictionalised stories about famous scientists that received positive reviews and was translated into multiple languages from Spanish. The MANIAC is Labatut's first book written in English. In an interview, Labatut said he prefers to write in English: English is my preferred form of thought. ... English is the language I do most if not all my reading it. And it is a far better language than Spanish, in so many ways. Writing "clean" prose in Spanish is almost impossible, because so many of its sounds clash. Borges said that he found English "a far finer language than Spanish" because it's both Germanic and Latin; because of its wonderful vocabulary ("Regal is not exactly the same thing as saying kingly," he explained); because of its physicality; and because you can do almost anything with verbs and prepositions. Labatut was inspired to write The MANIAC by George Dyson's book Turing's Cathedral. == Synopsis == The book has three chapters. The first chapter, "Paul or the Discovery of the Irrational", written in the third person, is about physicist Paul Ehrenfest. The chapter opens with Ehrenfest shooting dead his son Vassily, who suffered from Down syndrome, and then himself. It then recounts Ehrenfest's life story, describing his relationships with his wife Tatyana, his mistress Nelly Meyjes, and his eminent physicist colleagues. It chronicles his descent into despair and depression over his marriage's disintegration, the advent of quantum mechanics, and the direction Europe was heading in with the Nazi Party's rise to power in Germany, looping back to the initial scene of the chapter. The second chapter, "John or the Mad Dreams of Reason", is about John von Neumann, and is written as a series of interviews of his family members, wives, friends, and colleagues, each in a distinctive voice. It is divided into three parts. Part I, "The Limits of Logic", is about his early life, as told by von Neumann's childhood friend Eugene Wigner, mother Margrit Kann, brother Nicholas von Neumann, first wife Mariette Kövesi, and scientists Theodore von Karman, George Polya, and Gábor Szegő. It climaxes with von Neumann's participation in David Hilbert's program to create a logical basis for mathematics based on a consistent set of axioms, a quest ultimately scuppered by Kurt Gödel. Part II, "The Delicate Balance of Terror", discusses von Neumann's role in the Manhattan Project (as told by Richard Feynman); his development of game theory and the doctrine of mutual assured destruction (MAD) (as told by Oskar Morgenstern); and his creation of the MANIAC I computer and the von Neumann architecture (as told by Julian Bigelow). In Part III, "Ghosts in the Machine", Sydney Brenner discusses von Neumann's contributions to biology, his theoretical work on self-replicating and self-repairing machines, and his vision of Von Neumann probes exploring the universe. Nils Aall Barricelli talks about his ideas of digital life and his disagreements with von Neumann. Von Neumann's wife Klára Dán, daughter Marina, and Wigner talk about his final years, personal life, and death. The third chapter, "Lee or The Delusions of Artificial Intelligence", is about Lee Sedol's Go match against AlphaGo. The narrative reverts to the third person. The chapter also tells the story of Demis Hassabis, a chess prodigy in childhood who decided to work on artificial intelligence and founded DeepMind, the company behind AlphaGo. The way is pointed to the future, as artificial intelligence's growing capabilities outpace the human mind. The book ends with Lee Sedol's retirement from Go, and new version of DeepMind's program, AlphaZero, that did not train on human games but nevertheless became the strongest player in Go, chess, and Shogi. == Reception == The book received mostly positive reviews. In his review for The New York Times Tom McCarthy noted the ambiguity of genre: "At its best, as in the stunning opening sequence reconstructing the murder-suicide of the physicist Paul Ehrenfest and his disabled son, or in the final section's gripping account of a computer defeating the world's best human Go player, you just throw up your hands and think, Who cares what discourse label we assign this stuff? It's great." Becca Rothfeld of the Washington Post praised the book, writing that it is "Labatut's latest virtuosic effort, at once a historical novel and a philosophical foray": "The MANIAC is a work of dark, eerie and singular beauty." She noted that the book "can also be difficult to read" because of its unusual narrative structure: "The book is narrated by a cluttered polyphony of characters, among them both of von Neumann's wives and a number of his teachers and colleagues. ... Like von Neumann, The MANIAC strives to adopt the impartial standpoint of the universe." Killian Fox of The Guardian sees the book as "darkly fascinating novel", and notes Labatut's "impressive dexterity, unpicking complex ideas in long, elegant sentences that propel us forward at speed (this is his first book written in English). Even in the more feverish passages, when yet another great mind succumbs to madness, haunted by the spectres they've helped unleash on the world, he feels in full control of his material." Sam Byers of The Guardian praises the book and the author's style: "The opening chapter of Benjamín Labatut's second novel is such a perfect distillation of his technique that it could serve as a manifesto." and "Readers ... will recognise the sense of breathlessness his best writing can evoke. Seemingly loosened from the laws of physics they describe, his sentences range freely through time and space, connecting not only characters and events, but the delicate tissue of intellectual history, often with a lightness of touch that belies their underlying complexity." He writes on the narrative structure: "Through a cascade of staccato chapters, an ensemble of narrators offer their piecemeal insights." Byers adds that "a brilliant novel is not quite what we end up with" and sees the problem in the "diffusion": "Labatut simply spreads himself too thin. Too many years in too few pages; too many voices with far too little to distinguish them. Initially intriguing, the bite-size monologues quickly come to feel inadequate." Some reviewers did not see the book as a biography. In an essay for the Cleveland Review of Books, Ben Cosman juxtaposes the book with Christopher Nolan's biopic Oppenheimer, and writes that it "follows the development of artificial intelligence—first as an idea at the beginning of the twentieth century, and then as a practicality at the beginning of the twenty-first—through the lives of three men who faced it." He also compared the book's structure to "witness testimony". Another reviewer called the book "perfect for anyone thirsting for more nuclear anxiety after watching Oppenheimer". Garrett Biggs of the Chicago Review of Books writes of the book's style: "Labatut writes about scientists the way Roberto Bolaño writes about poets. They are near mythical figures, captured at the corner of the novel's eye. They become historical in the most fraught sense of the term: subject to rumor and speculation and, eventually, the novel's form inflates their personas into something so large they can only be understood as narrative, never known in any objective capacity." Biggs criticises the last chapter: "the story of artificial intelligence has yet to be written. And so when Labatut's narration editorializes about artificial intelligence as 'a future that inspires hope and horror,' The MANIAC disassembles as a novel and starts to sound like a stale thinkpiece. AlphaGo might represent the first glimmer of a true artificial intelligence, as Labatut suggests. It also could one day be considered nothing more than a souped-up cousin to IBM's DeepBlue.

    Read more →
  • Batch normalization

    Batch normalization

    In artificial neural networks, batch normalization (also known as batch norm) is a normalization technique used to make training faster and more stable by adjusting the inputs to each layer—re-centering them around zero and re-scaling them to a standard size. It was introduced by Sergey Ioffe and Christian Szegedy in 2015. Experts still debate why batch normalization works so well. It was initially thought to tackle internal covariate shift, a problem where parameter initialization and changes in the distribution of the inputs of each layer affect the learning rate of the network. However, newer research suggests it doesn’t fix this shift but instead smooths the objective function—a mathematical guide the network follows to improve—enhancing performance. In very deep networks, batch normalization can initially cause a severe gradient explosion—where updates to the network grow uncontrollably large—but this is managed with shortcuts called skip connections in residual networks. Another theory is that batch normalization adjusts data by handling its size and path separately, speeding up training. == Internal covariate shift == Each layer in a neural network has inputs that follow a specific distribution, which shifts during training due to two main factors: the random starting values of the network’s settings (parameter initialization) and the natural variation in the input data. This shifting pattern affecting the inputs to the network’s inner layers is called internal covariate shift. While a strict definition isn’t fully agreed upon, experiments show that it involves changes in the means and variances of these inputs during training. Batch normalization was first developed to address internal covariate shift. During training, as the parameters of preceding layers adjust, the distribution of inputs to the current layer changes accordingly, such that the current layer needs to constantly readjust to new distributions. This issue is particularly severe in deep networks, because small changes in shallower hidden layers will be amplified as they propagate within the network, resulting in significant shift in deeper hidden layers. Batch normalization was proposed to reduced these unwanted shifts to speed up training and produce more reliable models. Beyond possibly tackling internal covariate shift, batch normalization offers several additional advantages. It allows the network to use a higher learning rate—a setting that controls how quickly the network learns—without causing problems like vanishing or exploding gradients, where updates become too small or too large. It also appears to have a regularizing effect, improving the network’s ability to generalize to new data, reducing the need for dropout, a technique used to prevent overfitting (when a model learns the training data too well and fails on new data). Additionally, networks using batch normalization are less sensitive to the choice of starting settings or learning rates, making them more robust and adaptable. == Procedures == === Transformation === In a neural network, batch normalization is achieved through a normalization step that fixes the means and variances of each layer's inputs. Ideally, the normalization would be conducted over the entire training set, but to use this step jointly with stochastic optimization methods, it is impractical to use the global information. Thus, normalization is restrained to each mini-batch in the training process. Let us use B to denote a mini-batch of size m of the entire training set. The empirical mean and variance of B could thus be denoted as μ B = 1 m ∑ i = 1 m x i {\displaystyle \mu _{B}={\frac {1}{m}}\sum _{i=1}^{m}x_{i}} and σ B 2 = 1 m ∑ i = 1 m ( x i − μ B ) 2 {\displaystyle \sigma _{B}^{2}={\frac {1}{m}}\sum _{i=1}^{m}(x_{i}-\mu _{B})^{2}} . For a layer of the network with d-dimensional input, x = ( x ( 1 ) , . . . , x ( d ) ) {\displaystyle x=(x^{(1)},...,x^{(d)})} , each dimension of its input is then normalized (i.e. re-centered and re-scaled) separately, x ^ i ( k ) = x i ( k ) − μ B ( k ) ( σ B ( k ) ) 2 + ϵ {\displaystyle {\hat {x}}_{i}^{(k)}={\frac {x_{i}^{(k)}-\mu _{B}^{(k)}}{\sqrt {\left(\sigma _{B}^{(k)}\right)^{2}+\epsilon }}}} , where k ∈ [ 1 , d ] {\displaystyle k\in [1,d]} and i ∈ [ 1 , m ] {\displaystyle i\in [1,m]} ; μ B ( k ) {\displaystyle \mu _{B}^{(k)}} and σ B ( k ) {\displaystyle \sigma _{B}^{(k)}} are the per-dimension mean and standard deviation, respectively. ϵ {\displaystyle \epsilon } is added in the denominator for numerical stability and is an arbitrarily small positive constant. The resulting normalized activation x ^ ( k ) {\displaystyle {\hat {x}}^{(k)}} have zero mean and unit variance, if ϵ {\displaystyle \epsilon } is not taken into account. To restore the representation power of the network, a transformation step then follows as y i ( k ) = γ ( k ) x ^ i ( k ) + β ( k ) {\displaystyle y_{i}^{(k)}=\gamma ^{(k)}{\hat {x}}_{i}^{(k)}+\beta ^{(k)}} , where the parameters γ ( k ) {\displaystyle \gamma ^{(k)}} and β ( k ) {\displaystyle \beta ^{(k)}} are subsequently learned in the optimization process. Formally, the operation that implements batch normalization is a transform B N γ ( k ) , β ( k ) : x 1... m ( k ) → y 1... m ( k ) {\displaystyle BN_{\gamma ^{(k)},\beta ^{(k)}}:x_{1...m}^{(k)}\rightarrow y_{1...m}^{(k)}} called the Batch Normalizing transform. The output of the BN transform y ( k ) = B N γ ( k ) , β ( k ) ( x ( k ) ) {\displaystyle y^{(k)}=BN_{\gamma ^{(k)},\beta ^{(k)}}(x^{(k)})} is then passed to other network layers, while the normalized output x ^ i ( k ) {\displaystyle {\hat {x}}_{i}^{(k)}} remains internal to the current layer. === Backpropagation === The described BN transform is a differentiable operation, and the gradient of the loss l {\displaystyle l} with respect to the different parameters can be computed directly with the chain rule. Specifically, ∂ l ∂ y i ( k ) {\displaystyle {\frac {\partial l}{\partial y_{i}^{(k)}}}} depends on the choice of activation function, and the gradient against other parameters could be expressed as a function of ∂ l ∂ y i ( k ) {\displaystyle {\frac {\partial l}{\partial y_{i}^{(k)}}}} : ∂ l ∂ x ^ i ( k ) = ∂ l ∂ y i ( k ) γ ( k ) {\displaystyle {\frac {\partial l}{\partial {\hat {x}}_{i}^{(k)}}}={\frac {\partial l}{\partial y_{i}^{(k)}}}\gamma ^{(k)}} , ∂ l ∂ γ ( k ) = ∑ i = 1 m ∂ l ∂ y i ( k ) x ^ i ( k ) {\displaystyle {\frac {\partial l}{\partial \gamma ^{(k)}}}=\sum _{i=1}^{m}{\frac {\partial l}{\partial y_{i}^{(k)}}}{\hat {x}}_{i}^{(k)}} , ∂ l ∂ β ( k ) = ∑ i = 1 m ∂ l ∂ y i ( k ) {\displaystyle {\frac {\partial l}{\partial \beta ^{(k)}}}=\sum _{i=1}^{m}{\frac {\partial l}{\partial y_{i}^{(k)}}}} , ∂ l ∂ σ B ( k ) 2 = ∑ i = 1 m ∂ l ∂ y i ( k ) ( x i ( k ) − μ B ( k ) ) ( − γ ( k ) 2 ( σ B ( k ) 2 + ϵ ) − 3 / 2 ) {\displaystyle {\frac {\partial l}{\partial \sigma _{B}^{(k)^{2}}}}=\sum _{i=1}^{m}{\frac {\partial l}{\partial y_{i}^{(k)}}}(x_{i}^{(k)}-\mu _{B}^{(k)})\left(-{\frac {\gamma ^{(k)}}{2}}(\sigma _{B}^{(k)^{2}}+\epsilon )^{-3/2}\right)} , ∂ l ∂ μ B ( k ) = ∑ i = 1 m ∂ l ∂ y i ( k ) − γ ( k ) σ B ( k ) 2 + ϵ + ∂ l ∂ σ B ( k ) 2 1 m ∑ i = 1 m ( − 2 ) ⋅ ( x i ( k ) − μ B ( k ) ) {\displaystyle {\frac {\partial l}{\partial \mu _{B}^{(k)}}}=\sum _{i=1}^{m}{\frac {\partial l}{\partial y_{i}^{(k)}}}{\frac {-\gamma ^{(k)}}{\sqrt {\sigma _{B}^{(k)^{2}}+\epsilon }}}+{\frac {\partial l}{\partial \sigma _{B}^{(k)^{2}}}}{\frac {1}{m}}\sum _{i=1}^{m}(-2)\cdot (x_{i}^{(k)}-\mu _{B}^{(k)})} , and ∂ l ∂ x i ( k ) = ∂ l ∂ x ^ i ( k ) 1 σ B ( k ) 2 + ϵ + ∂ l ∂ σ B ( k ) 2 2 ( x i ( k ) − μ B ( k ) ) m + ∂ l ∂ μ B ( k ) 1 m {\displaystyle {\frac {\partial l}{\partial x_{i}^{(k)}}}={\frac {\partial l}{\partial {\hat {x}}_{i}^{(k)}}}{\frac {1}{\sqrt {\sigma _{B}^{(k)^{2}}+\epsilon }}}+{\frac {\partial l}{\partial \sigma _{B}^{(k)^{2}}}}{\frac {2(x_{i}^{(k)}-\mu _{B}^{(k)})}{m}}+{\frac {\partial l}{\partial \mu _{B}^{(k)}}}{\frac {1}{m}}} . === Inference === During the training stage, the normalization steps depend on the mini-batches to ensure efficient and reliable training. However, in the inference stage, this dependence is not useful any more. Instead, the normalization step in this stage is computed with the population statistics such that the output could depend on the input in a deterministic manner. The population mean, E [ x ( k ) ] {\displaystyle E[x^{(k)}]} , and variance, Var ⁡ [ x ( k ) ] {\displaystyle \operatorname {Var} [x^{(k)}]} , are computed as: E [ x ( k ) ] = E B [ μ B ( k ) ] {\displaystyle E[x^{(k)}]=E_{B}[\mu _{B}^{(k)}]} , and Var ⁡ [ x ( k ) ] = m m − 1 E B [ ( σ B ( k ) ) 2 ] {\displaystyle \operatorname {Var} [x^{(k)}]={\frac {m}{m-1}}E_{B}[\left(\sigma _{B}^{(k)}\right)^{2}]} . The population statistics thus is a complete representation of the mini-batches. The BN transform in the inference step thus becomes y ( k ) = B N γ ( k ) , β ( k ) inf ( x ( k ) ) = γ ( k ) x ( k ) − E [ x ( k ) ] Var ⁡ [ x ( k ) ] + ϵ + β

    Read more →
  • Open Cloud Computing Interface

    Open Cloud Computing Interface

    The Open Cloud Computing Interface (OCCI) is a set of specifications delivered through the Open Grid Forum, for cloud computing service providers. OCCI has a set of implementations that act as proofs of concept. It builds upon World Wide Web fundamentals by using the Representational State Transfer (REST) approach for interacting with services. == Scope == The aim of the Open Cloud Computing Interface is the development of an open specification and API for cloud offerings. The focus was on Infrastructure-as-a-Service (IaaS) based offerings but the interface can be extended to support Platform and Software as a Service offerings as well. IaaS is one of three primary segments of the cloud computing industry in which compute, storage and network resources are provided as services. The API is based on a review of existing service-provider functionality and a set of use cases contributed by the working group. OCCI is a boundary API that acts as a service front-end to an IaaS provider’s internal infrastructure management framework. OCCI provides commonly understood semantics, syntax and a means of management in the domain of consumer-to-provider IaaS. It covers management of the entire life-cycle of OCCI-defined model entities and is compatible with existing standards such as the Open Virtualization Format (OVF) and the Cloud Data Management Interface (CDMI). Notably, it serves as an integration point for standardization efforts including Distributed Management Task Force, Internet Engineering Task Force and the Storage Networking Industry Association. == Context == OCCI began in March 2009 and was initially led by RabbitMQ and the Complutense University of Madrid. Today, the working group has over 250 members and includes numerous individuals, industry and academic parties. The OCCI operates under the umbrella of the Open Grid Forum (OGF), using a wiki and a mailing list for collaboration. == Goals == Interoperability: allow different Cloud providers to work together without data schema/format translation, facade/proxying between APIs and understanding and/or dependency on multiple APIs Portability: no technical/vendor lock-in and enable services to move between providers allows clients to easily switch between providers based on business objectives (e.g., cost) with minimal technical costs, thus enabling and fostering competition. Integration: the specification can be implemented with both the latest infrastructures or legacy ones. Extensibility: thanks to the use of a meta-model and capabilities discovery features, an OCCI client is able to interact with any OCCI server using provider-specific OCCI extensions. == Specific Implementations == They implement specific extensions of OCCI for a particular service: IaaS, PaaS, brokering, etc. Several implementations have been announced or released. == Generic Implementations (frameworks) == Here are frameworks to build OCCI APIs. Complementing these are a variety of developer tools. == Alternatives == Alternative approaches include the use of the Cloud Infrastructure Management Interface (CIMI) and related standards set from DMTF and the Amazon Web Services interfaces from Amazon. (The latter have not been endorsed by any known Standards organization). OpenNebula conducted a survey of their users in which the results showed, 38% do not expose cloud APIs, their users only interface through the Sunstone GUI, 36% mostly use the Amazon Web Services API, and 26% mostly use the OpenNebula’s OCCI API or the OCCI API offered by rOCCI.

    Read more →
  • Abu Dhabi Autonomous Racing League

    Abu Dhabi Autonomous Racing League

    The Abu Dhabi Autonomous Racing League (A2RL) is an autonomous racing league based in Abu Dhabi and organized by ASPIRE, part of the UAE government's Advanced Technology Research Council. It has three distinct categories: the "car race", the drone race, and the buggy race. The first car race was held on 27 April 2024 at the Yas Marina Circuit, marking the first major autonomous formula race outside the US since the now-folded Roborace championship. The first drone race was held on 11 and 12 April 2025. == Formats == A2RL has three distinct formats, the formula racing format (dubbed the Car Race), the quadcopter drone racing format (dubbed the Drone Race), and the off-road dune buggy racing format (dubbed the Buggy Race). === Car Race === A2RL's main event, the car race is a standard formula racing format with self-driving formula cars. The cars are made by Dallara and are modified versions of Super Formula cars with Yokohama tires. These cars had the CPUs of their AIs mounted where the driver's seat is on a non-modified chassis, as well as hydraulic actuators for AI control of the vehicle, multiple sensor systems including LIDAR and GPS, and a large LED indicator showing the status of the AI. The first car race was held on 27 April 2024. This race was marked by the cars' subpar performance: Out of four cars that qualified, only two finished the race - the other two did not. The next race was held on 15 November 2025, with 11 teams. ==== Technical specifications ==== The full list of technical specifications are as follows: Chassis: Dallara EAV24 (modified Dallara SF23) Forward suspension: Pushrod type, torsion bar spring, adjustable dampers, third element Rear suspension: Pushrod type, torsion bar, coil springs, adjustable dampers, third element Tires: Yokohama Advan Drive-by-wire system: Provided by Meccanica 42, the DBW system consists of steering and brake actuators, with a central ECU that coordinates the driving actions and reacts to any critical situation in real-time. Brakes: Brembo calipers, Brembo carbon discs, electro-hydraulically activated Engine: 4 Piston Racing K20C1 (based on Honda 2.0l; turbocharged 4-cylinder engine) Gearbox: 3MO 6-speed gearbox Sensor suite: 7x Sony IMX728 cameras, 4x ZF ProWave radar units, 3x Seyond Falcon Kinetic lidar units Main computer: Neousys RGS-8805GC ==== Races held ==== === Drone Race === Created in partnership with the Drone Champions' League, the drone race is the quadcopter drone racing aerial format of the A2RL. The first race was held on 11/12 April 2025 at the ADNEC Marina Hall. 10 teams are scheduled to take part. === Buggy Race === The buggy race will be the off-road format of the A2RL using self-driving dune buggies. No date or number of teams has been announced for the first race. === Other events === A2RL is known to host AI vs AI and Human vs AI events, in Abu Dhabi and abroad. One such event took place at the Suzuka Circuit in Japan. The Human vs AI race was precluded due to AI car "Yalla" crashing into the wall during the formation lap. == Team lists ==

    Read more →
  • Generative literature

    Generative literature

    Generative literature is poetry or fiction that is automatically generated, often using computers. It is a genre of electronic literature, and also related to generative art. John Clark's Latin Verse Machine (1830–1843) is probably the first example of mechanised generative literature, while Christopher Strachey's love letter generator (1952) is the first digital example. With the large language models (LLMs) of the 2020s, generative literature is becoming increasingly common. == Definitions == Hannes Bajohr defines generative literature as literature involving "the automatic production of text according to predetermined parameters, usually following a combinatory, sometimes aleatory logic, and it emphasizes the production rather than the reception of the work (unlike, say, hypertext)." In his book Electronic Literature, Scott Rettberg connects generative literature to avant-garde literary movements like Dada, Surrealism, Oulipo and Fluxus. Bajohr argues that conceptual art is also an important reference. == Paradigms of generative literature == Bajohr describes two main paradigms of generative literature: the sequential paradigm, where the text generation is "executed as a sequence of rule-steps" and employs linear algorithms, and the connectionist paradigm, which is based on neural nets. The latter leads to what Bajohr calls a algorithmic empathy: "a non-anthropocentric empathy aimed not at the psychological states of the artists but at understanding the process of the work’s material production." == Poetry generation == The first examples of automated generative literature are poetry: John Clark's mechanical Latin Verse Machine (1830–1843) produced lines of hexameter verse in Latin, and Christopher Strachey's love letter generator (1952), programmed on the Manchester Mark 1 computer, generated short, satirical love letters. Examples of generative poetry using artificial neural networks include David Jhave Johnston's ReRites. == Narrative generation == Story generators have often followed specific narratological theories of how stories are constructed. An early example is Grimes' Fairy Tales, the "first to take a grammar-based approach and the first to operationalize Propp's famous model." Mike Sharples and Rafael Peréz y Peréz's book Story Machines gives a detailed history of story generation. Storyland by Nanette Wylde is an example of generative narrative. Jonathan Baillehache compares Storyland to Surrealist writing. Baillehache states, "When compared to earlier uses of chance operation in literature, a piece like this one resembles some of the automatic writings produced by André Breton and Philippe Soupault in their collective work The Magnetic Fields. . . The difference between Nanette Wylde’s Storyland and Breton and Soupault’s Magnetic Fields is that the former is produced according to a computational algorithm involving randomizers and user interaction, and the latter by two free-wheeling human subjects."

    Read more →
  • Ideogram (text-to-image model)

    Ideogram (text-to-image model)

    Ideogram is a freemium text-to-image model developed by Ideogram, Inc. using deep learning methodologies to generate digital images from natural language descriptions known as prompts. The model is capable of generating legible text in the images compared to other text-to-image models. == History == Ideogram was founded in 2022 by Mohammad Norouzi, William Chan, Chitwan Saharia, and Jonathan Ho to develop a better text-to-image model. It was first released with its 0.1 model on August 22, 2023, after receiving $16.5 million in seed funding, which itself was led by Andreessen Horowitz and Index Ventures. In February 2024, Ideogram raised $80 million after its 1.0 model release in the same year. In August 2024, Ideogram released its 2.0 model. This model has several styles such as realistic, design, 3D, and anime and better capability in generating text. In February 2025, Ideogram released 2a model. This model was designed for speed and optimized for graphics design and photography generation. In March 2025, Ideogram released its 3.0 model. This model has improved realism and understanding of complex text layout, although like other generative AI models, it still struggles with ambigram creation.

    Read more →
  • Unfold (app)

    Unfold (app)

    Unfold is a mobile application that allows users to create social media content using a variety of templates and other tools. It was founded in 2018 by Alfonso Cobo and Andy McCune. It enables users to add photos, video, and text with a variety of tools. In 2019, Unfold was acquired by Squarespace. == History == In January 2017, Alfonso Cobo was studying at Parsons School of Design when he realized there was no software or app that could create a portfolio of his work on an iPad. Cobo created an app called Portfolio, a basic version of a portfolio layout app, and the first one to exist for iPad. He launched it in 2017. After launching the first version of Portfolio, Cobo realized the more popular market and use case was on mobile. Around that time, Instagram was launching Stories. As a result, Cobo pivoted the app away from portfolios and instead focused on an app to showcase one's stories. Cobo later contacted Andy McCune, founder of social media account Earth, to collaborate with Unfold. Unfold also partnered with various companies to create custom templates. These include Equinox, Tommy Hilfiger, NARS, Billboard Music Awards, and Product Red. Unfold also launched a collection of Product Red templates to help eliminate HIV/AIDS in several African countries. In 2019, Squarespace acquired Unfold. The Unfold app has been downloaded over 60 million times and has been used to create over 1 billion Instagram stories. == Features == With Unfold, users can utilize hundreds of templates to make social content for social media platforms such as Instagram, Snapchat, and Facebook. The free app offers users basic templates and standard fonts, filters, and stickers, and there are also premium templates available for a monthly subscription. With Unfold+ and Unfold Pro (previously Unfold for Brands), users can access premium templates and tools, as well as upload custom brand assets and fonts. In 2020, Unfold launched Bio Sites, which allows users to link to multiple sites and platforms.

    Read more →
  • Anytime algorithm

    Anytime algorithm

    In computer science, an anytime algorithm is an algorithm that can return a valid solution to a problem even if it is interrupted before it ends. The algorithm is expected to find better and better solutions the longer it keeps running. Most algorithms run to completion: they provide a single answer after performing some fixed amount of computation. In some cases, however, the user may wish to terminate the algorithm prior to completion. The amount of computation required may be substantial, for example, and computational resources might need to be reallocated. Most algorithms either run to completion or they provide no useful solution information. Anytime algorithms, however, are able to return a partial answer, whose quality depends on the amount of computation they were able to perform. The answer generated by anytime algorithms is an approximation of the correct answer. == Names == An anytime algorithm may be also called an "interruptible algorithm". They are different from contract algorithms, which must declare a time in advance; in an anytime algorithm, a process can just announce that it is terminating. == Goals == The goal of anytime algorithms are to give intelligent systems the ability to make results of better quality in return for turn-around time. They are also supposed to be flexible in time and resources. They are important because artificial intelligence or AI algorithms can take a long time to complete results. This algorithm is designed to complete in a shorter amount of time. Also, these are intended to have a better understanding that the system is dependent and restricted to its agents and how they work cooperatively. An example is the Newton–Raphson iteration applied to finding the square root of a number. Another example that uses anytime algorithms is trajectory problems when you're aiming for a target; the object is moving through space while waiting for the algorithm to finish and even an approximate answer can significantly improve its accuracy if given early. What makes anytime algorithms unique is their ability to return many possible outcomes for any given input. An anytime algorithm uses many well defined quality measures to monitor progress in problem solving and distributed computing resources. It keeps searching for the best possible answer with the amount of time that it is given. It may not run until completion and may improve the answer if it is allowed to run longer. This is often used for large decision set problems. This would generally not provide useful information unless it is allowed to finish. While this may sound similar to dynamic programming, the difference is that it is fine-tuned through random adjustments, rather than sequential. Anytime algorithms are designed so that it can be told to stop at any time and would return the best result it has found so far. This is why it is called an interruptible algorithm. Certain anytime algorithms also maintain the last result, so that if they are given more time, they can continue from where they left off to obtain an even better result. == Decision trees == When the decider has to act, there must be some ambiguity. Also, there must be some idea about how to solve this ambiguity. This idea must be translatable to a state to action diagram. == Performance profile == The performance profile estimates the quality of the results based on the input and the amount of time that is allotted to the algorithm. The better the estimate, the sooner the result would be found. Some systems have a larger database that gives the probability that the output is the expected output. One algorithm can have several performance profiles. Most of the time performance profiles are constructed using mathematical statistics using representative cases. For example, in the traveling salesman problem, the performance profile was generated using a user-defined special program to generate the necessary statistics. In this example, the performance profile is the mapping of time to the expected results. This quality can be measured in several ways: certainty: where probability of correctness determines quality accuracy: where error bound determines quality specificity: where the amount of particulars determine quality == Algorithm prerequisites == Initial behavior: While some algorithms start with immediate guesses, others take a more calculated approach and have a start up period before making any guesses. Growth direction: How the quality of the program's "output" or result, varies as a function of the amount of time ("run time") Growth rate: Amount of increase with each step. Does it change constantly, such as in a bubble sort or does it change unpredictably? End condition: The amount of runtime needed

    Read more →
  • IJCAI Award for Research Excellence

    IJCAI Award for Research Excellence

    The IJCAI Award for Research Excellence is a biannual award before given at the IJCAI conference to researcher in artificial intelligence as a recognition of excellence of their career. Beginning in 2016, the conference is held annually and so is the award. == Laureates == The recipients of this award have been: John McCarthy (1985) Allen Newell (1989) Marvin Minsky (1991) Raymond Reiter (1993) Herbert A. Simon (1995) Aravind Joshi (1997) Judea Pearl (1999) Donald Michie (2001) Nils Nilsson (2003) Geoffrey E. Hinton (2005) Alan Bundy (2007) Victor R. Lesser (2009) Robert Kowalski (2011) Hector Levesque (2013) Barbara Grosz (2015) for her pioneering research in Natural Language Processing and in theories and applications of Multiagent Collaboration. Michael I. Jordan (2016) for his groundbreaking and impactful research in both the theory and application of statistical machine learning. Andrew Barto (2017) for his pioneering work in the theory of reinforcement learning. Jitendra Malik (2018) Yoav Shoham (2019) Eugene Freuder (2020) Richard S. Sutton (2021) Stuart J. Russell (2022) Sarit Kraus (2023) for her pioneering work of the study of interactions among self-interested agents, creating the field of automated negotiation, and developing methods for coalition formation and teamwork, both as formal models and real-world implementations. == Winners of also Turing Award == John McCarthy (1971) Allen Newell (1975) Marvin Minsky (1969) Herbert A. Simon (1975) Judea Pearl (2011) Geoffrey Hinton (2018) Andrew Barto (2024) Richard S. Sutton (2024)

    Read more →